Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Add fish shell completion
|
|
|
|
* Double quotes apparently cause problems with newer sqlite versions where they are automatically
interpreted as column names.
* Should fix lookup of English/German words.
|
|
* nroff does not always support `-K`
|
|
* actually autocompletions are much more powerful than on Bash
|
|
* Instead of relying on `man -`, we call Groff directly.
* Naturally, we must depend on Groff as well.
* man-db is not available on FreeBSD
|
|
postprocess: remove use of double-quoted strings
|
|
As of SQLite 3.41.0, their use is disabled by default.
|
|
Remove NixOS files and update README
|
|
|
|
Is now upstreamed.
|
|
only "fri")
|
|
Makefile tweaks and Nix{,OS} support
|
|
|
|
|
|
As it's in git.
|
|
|
|
|
|
On NixOS, /usr/bin/awk doesn't exist.
|
|
* the corresponding database columns (seldom) contain the accenting character
(see e.g. sresat')
* as noted in the comments, always accenting the partner is not trivial
|
|
* the schema didn't change
* included a fix for "pered" which failed to format with the new DB
* "saliwnij" and "paraf" still cause errors with `make check` since
they are stored errounously accented in words.bare
|
|
|
|
* useful for maximizing the information on each page if you speak both
English and German
|
|
|
|
|
|
|
|
* single VARCHAR cells will sometimes contain (semi)colon separated lists - sometimes
with and sometimes without additional whitechar.
They are now always normalized to ", ".
|
|
* using the new `make check` target various bugs have been discovered.
All of them were related to missing database fields.
|
|
* the cases are now represented by rows instead of columns - this makes table widths shorter
* make sure that there is a space after each table
* improved formatting of some lists in declension tables, COMPARATIVE and SUPERLATIVE sections
|
|
|
|
* keep the openrussian-sql.zip to avoid bitrot (sudden breakage when building the
project against a recent DB)
* allow lookups against inflections.
A special table `bare_inflections` was added to the DB in order to speed this up.
* authentic autocompletions taking every parameter into account, using a magic `-C` parameter
* language selection via locale or -L<lang>
* translation lookup
* allow multiple search terms on the command line without escaping
* all SQL strings are properly escaped now to avoid (accidental) code insertion
* luautf8 is mandatory now and used much more, which is safer
than handling Unicode strings with the builtin functions
* ignore "disable" database entries
* added option -V (verbatim)
* more protections against empty fields
* print "DERIVED FROM", "AUDIO", "USAGE" and various word relation sections
* print word ranking and level (A1-C2...)
|
|
* if a search word yields multiple results, which can happen quite frequently,
interactively ask the user which one to display by showing both the accented words
(sometimes the only difference is in accentuation) and the translations in brackets
|
|
* they are simply ignored
* in openrussian.lua, we delegate Unicode handling to SQLite
* for Bash completions, we ignore accents during matching but (have to)
preserve them in the prefix -- see comments.
* also properly escape SQL strings preserving accidental code injection.
This means we do not necessarily have to port openrussian-completion.bash
to Lua.
|
|
* this allows precompiling openrussian.lua,
automatically downloads, converts and VACUUMs the openrussian
database and provides an `install` target
* Bash completions allow completing "bare" Russian words for the
time being.
Unfortunately we cannot complete with accents, since Bash completions
do not allow to change the already typed word (apparently) and users
aren't going to type in accents.
|
|
* this will practically be required by everyone since I won't add
any pre-generated databases.
* this could be added as a submodule as well, but it's probably not worth
it for a single Awk script
|
|
schema changes
* ./openrussian -p <word>
now directly prints to stdout, which is useful for postprocessing
lookups.
|
|
* matches have to be direct, which is not always practical
* there is no reverse search (from English search terms)
* missing Makefile
* missing Bash completions
|