aboutsummaryrefslogtreecommitdiff
path: root/openrussian.lua
AgeCommit message (Collapse)AuthorFilesLines
2024-04-25use single quotes for SQL string constants consistentlyRobin Haberkorn1-9/+9
* Double quotes apparently cause problems with newer sqlite versions where they are automatically interpreted as column names. * Should fix lookup of English/German words.
2024-01-12fixed piping to GroffRobin Haberkorn1-1/+1
* nroff does not always support `-K`
2024-01-12support FreeBSDRobin Haberkorn1-1/+8
* Instead of relying on `man -`, we call Groff directly. * Naturally, we must depend on Groff as well. * man-db is not available on FreeBSD
2021-04-20fixed formatting of adjectives where the declension ids are missing (affects ↵1.0.0Robin Haberkorn1-16/+18
only "fri")
2020-05-21fixed display of accents when formatting the PARTNER sectionRobin Haberkorn1-2/+2
* 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
2020-02-03updated the database dumpRobin Haberkorn1-3/+5
* 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
2019-05-17allow multiple translation languages to be specified via -LRobin Haberkorn1-54/+69
* useful for maximizing the information on each page if you speak both English and German
2019-05-17some more minor output normalizationsRobin Haberkorn1-6/+6
2019-04-19improved normalization of listsRobin Haberkorn1-5/+5
* single VARCHAR cells will sometimes contain (semi)colon separated lists - sometimes with and sometimes without additional whitechar. They are now always normalized to ", ".
2019-04-19make check: test page generation for all words; various fixesRobin Haberkorn1-49/+59
* using the new `make check` target various bugs have been discovered. All of them were related to missing database fields.
2019-04-19changed the orientation of noun and adjective tablesRobin Haberkorn1-53/+55
* 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
2019-04-18major changes (unfortunately not done systematically)Robin Haberkorn1-65/+440
* 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...)
2019-03-16support multiple resultsRobin Haberkorn1-70/+109
* 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
2019-03-16allow lookups containing accentuation character (Unicode 0x0301)Robin Haberkorn1-1/+4
* 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.
2019-03-15improved command-line interface, find database automatically, and adapted to ↵Robin Haberkorn1-12/+40
schema changes * ./openrussian -p <word> now directly prints to stdout, which is useful for postprocessing lookups.
2019-02-02initial commitRobin Haberkorn1-0/+262
* matches have to be direct, which is not always practical * there is no reverse search (from English search terms) * missing Makefile * missing Bash completions