91 lines
3.4 KiB
Plaintext
91 lines
3.4 KiB
Plaintext
StarDict Terminal UI
|
|
====================
|
|
|
|
'sdtui' aims to provide an easy way of viewing translation as well as other
|
|
kinds of dictionaries in your terminal, and is inspired by the dictionary
|
|
component of PC Translator. I wasn't successful in finding any free software
|
|
of this kind, GUI or not, 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::sdtui.png[align="center"]
|
|
|
|
Packages
|
|
--------
|
|
Regular releases are sporadic. git master should be stable enough. You can get
|
|
a package with the latest development version from Archlinux's AUR.
|
|
|
|
Documentation
|
|
-------------
|
|
See the link:docs/sdtui.1.adoc[man page] for information about usage.
|
|
The rest of this README will concern itself with externalities.
|
|
|
|
Building and Running
|
|
--------------------
|
|
Build dependencies: CMake, pkg-config, asciidoctor +
|
|
Runtime dependencies: ncursesw, zlib, ICU, termo (included), glib-2.0 >= 2.38,
|
|
pango, xcb, xcb-xfixes (the latter two optional)
|
|
|
|
$ git clone --recursive https://git.janouch.name/p/sdtui.git
|
|
$ mkdir sdtui/build
|
|
$ cd sdtui/build
|
|
$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug -DWITH_X11=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 sdtui-*.deb
|
|
|
|
Having the program installed, simply run it with a StarDict '.ifo' file as
|
|
an argument. It is, however, preferable to
|
|
link:docs/sdtui.1.adoc#_configuration[configure it] to load your dictionaries
|
|
automatically.
|
|
|
|
Dictionaries
|
|
------------
|
|
Unfortunately, this application only really works with specific dictionaries.
|
|
Word definitions have to be in plain text, separated by newlines.
|
|
|
|
The `make dicts` command will build some examples from freely available sources.
|
|
|
|
You may use the included 'transform' tool to convert already existing
|
|
dictionaries that are almost good as they are, e.g., after stripping XML tags.
|
|
You might want to fix up the `sametypesequence` of the resulting '.ifo' file
|
|
afterwards, and run 'dictzip' on the resulting '.dict' file to make it compact.
|
|
|
|
https://mega.co.nz/#!axtD0QRK!sbtBgizksyfkPqKvKEgr8GQ11rsWhtqyRgUUV0B7pwg[CZ <--> EN/DE/PL/RU dictionaries]
|
|
|
|
Further Development
|
|
-------------------
|
|
While I've been successfully using 'sdtui' for many years now, some work has to
|
|
be done yet before the software can be considered fit for inclusion in regular
|
|
Linux and/or BSD distributions.
|
|
|
|
An approximate list of things that need to be resolved is as follows:
|
|
|
|
- the tab bar and the text input field don't handle overflows well,
|
|
- figure out a way to become capable of displaying most StarDict dictionaries.
|
|
|
|
Given the entangledness of this codebase, issues with the file format,
|
|
and general undesirability of terminal UIs, it might be better to start anew.
|
|
|
|
Contributing and Support
|
|
------------------------
|
|
Use https://git.janouch.name/p/sdtui 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.
|