116 lines
4.3 KiB
Plaintext
116 lines
4.3 KiB
Plaintext
Translation dictionary viewer
|
|
=============================
|
|
|
|
'tdv' aims to provide an easy way of viewing translation as well as other kinds
|
|
of StarDict dictionaries, and is inspired by the dictionary component
|
|
of PC Translator. I was unsuccessful in finding any free software of this kind,
|
|
and thus decided to write my own.
|
|
|
|
The project is covered by a permissive license, unlike vast majority of other
|
|
similar projects, and can serve as a base for implementing other dictionary
|
|
software.
|
|
|
|
image::tdv.png[align="center"]
|
|
|
|
As a recent addition, the program also offers a GTK+ 3 based user interface,
|
|
whose styling will follow your theme, and may be customized from 'gtk.css'.
|
|
|
|
Packages
|
|
--------
|
|
Regular releases are sporadic. git master should be stable enough.
|
|
You can get a package with the latest development version using Arch Linux's
|
|
https://aur.archlinux.org/packages/tdv-git[AUR],
|
|
or as a https://git.janouch.name/p/nixexprs[Nix derivation].
|
|
|
|
Documentation
|
|
-------------
|
|
See the link:docs/tdv.1.adoc[man page] for information about usage.
|
|
The rest of this README will concern itself with externalities.
|
|
|
|
Building and Running
|
|
--------------------
|
|
Build-only dependencies:
|
|
CMake, pkg-config, gettext utilities, asciidoctor or asciidoc +
|
|
Optional build-only dependencies:
|
|
librsvg (for the GUI), icoutils (for the GUI, when targetting Windows) +
|
|
Runtime dependencies:
|
|
ncursesw, zlib, ICU, termo (included), glib-2.0 >= 2.38, pango +
|
|
Optional runtime dependencies:
|
|
xcb, xcb-xfixes (the first two for the TUI), gtk+-3.0 (for the GUI)
|
|
|
|
$ git clone --recursive https://git.janouch.name/p/tdv.git
|
|
$ mkdir tdv/build
|
|
$ cd tdv/build
|
|
$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug \
|
|
-DWITH_X11=ON -DWITH_GUI=ON
|
|
$ make
|
|
|
|
To install the application, you can do either the usual:
|
|
|
|
# make install
|
|
|
|
Or you can try telling CMake to make a package for you. For Debian it is:
|
|
|
|
$ cpack -G DEB
|
|
# dpkg -i tdv-*.deb
|
|
|
|
Having the program installed, simply run it with a StarDict '.ifo' file as
|
|
an argument. It is, however, preferable to
|
|
link:docs/tdv.1.adoc#_configuration[configure it] to load your dictionaries
|
|
automatically.
|
|
|
|
Windows
|
|
~~~~~~~
|
|
With the help of Mingw-w64 and WINE, 'tdv' will successfully cross-compile
|
|
for Windows. It isn't particularly usable on that system, if only because
|
|
selection watching is a very X11/Wayland-specific feature. Beware that build
|
|
dependencies take up almost a gigabyte of disk space.
|
|
|
|
$ sh -e cmake/Win64Depends.sh
|
|
$ cmake -DCMAKE_TOOLCHAIN_FILE=liberty/cmake/toolchains/MinGW-w64-x64.cmake \
|
|
-DCMAKE_BUILD_TYPE=Release -B build
|
|
$ cmake --build build -- package
|
|
|
|
Dictionaries
|
|
------------
|
|
This application is intended for use with specific dictionaries: each line
|
|
should contain one short word definition. Moreover, the only supported content
|
|
types are plain text, Pango markup, and XDXF (the visual format works better).
|
|
|
|
The `make dicts` command will build some examples from freely available sources:
|
|
|
|
- GNU/FDL Czech-English dictionary
|
|
- Czech foreign words (the site's export is broken as of 2022/08, no response)
|
|
- Czech WordNet 1.9 PDT (synonyms, hypernyms, hyponyms)
|
|
|
|
You can use the included 'tdv-transform' tool to convert already existing
|
|
StarDict dictionaries that are nearly good as they are. Remember that you can
|
|
change the `sametypesequence` of the resulting '.ifo' file to another format,
|
|
or run 'dictzip' on '.dict' files to make them compact.
|
|
|
|
https://mega.co.nz/#!axtD0QRK!sbtBgizksyfkPqKvKEgr8GQ11rsWhtqyRgUUV0B7pwg[CZ <--> EN/DE/PL/RU dictionaries]
|
|
|
|
Further Development
|
|
-------------------
|
|
While I've been successfully using 'tdv' for many years now, some issues
|
|
should be addressed before including the software in regular Linux and/or
|
|
BSD distributions:
|
|
|
|
- The GUI is awkward to configure.
|
|
- Lacking configuration, standard StarDict locations should be scanned.
|
|
|
|
Given all issues with the file format, it might be better to start anew.
|
|
|
|
Contributing and Support
|
|
------------------------
|
|
Use https://git.janouch.name/p/tdv to report any bugs, request features,
|
|
or submit pull requests. `git send-email` is tolerated. If you want to discuss
|
|
the project, feel free to join me at ircs://irc.janouch.name, channel #dev.
|
|
|
|
Bitcoin donations are accepted at: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9
|
|
|
|
License
|
|
-------
|
|
This software is released under the terms of the 0BSD license, the text of which
|
|
is included within the package along with the list of authors.
|