Commit Graph

272 Commits

Author SHA1 Message Date
Přemysl Eric Janouch c0a094e473
sdgui: load dictionaries in parallel, as sdtui did
Also, resolve some use-after-frees in GTK+.
2021-10-16 08:34:37 +02:00
Přemysl Eric Janouch f147b54393
sdgui: load dictionaries from sdtui configuration 2021-10-16 06:46:44 +02:00
Přemysl Eric Janouch 10c05a2422
sdgui: clean-up
It doesn't seem like we'll want to remember the position.
2021-10-16 03:45:38 +02:00
Přemysl Eric Janouch 8fb2ce29cf
sdgui: clean up scrolling code 2021-10-15 23:59:45 +02:00
Přemysl Eric Janouch ce92a23551
sdgui: scroll by three rows
Don't use an arbitrary amount of pixels, base it off the font.
2021-10-15 23:09:26 +02:00
Přemysl Eric Janouch 573554b9de
sdgtk -> sdgui, improve build, mention in README
It's finally not horrible.
2021-10-15 12:09:37 +02:00
Přemysl Eric Janouch 9d7bc2a839
sdgtk: add and use a custom listview widget
Nothing in GTK+ appears to be suited for what are virtually infinite
lists.  Our workaround with GtkLabel and GtkScrolledWindow has been
heavily suboptimal and needs to be replaced.

Use Pango directly to handle our relatively simple needs.

Upgrades:
 - the widget can be scrolled,
 - keywords are repeated for each definition line,
 - definition lines are now wrapped, and support 'g' and 'x' fields.

Downgrades:
 - text can no longer be selected, so far.
2021-10-15 11:46:09 +02:00
Přemysl Eric Janouch f812fae922
Add the GNU/FDL German-Czech dictionary to dicts
But only build it with WANT_BAD_DICTS set to non-null.
2021-10-13 23:58:57 +02:00
Přemysl Eric Janouch 3d53b2c131
Fix g_option_context_get_help() usage 2021-10-12 02:39:16 +02:00
Přemysl Eric Janouch 627c296057
query-tool: support more field types
Add options to format the output for the terminal, or IRC messages.

Changed the output format to separate dictionary name with a tab,
so it's now rather similar to tabfiles.
2021-10-12 02:38:40 +02:00
Přemysl Eric Janouch 13a16d1eb5
Update translations 2021-10-12 02:02:40 +02:00
Přemysl Eric Janouch b8e43c5d5a
make-template.sh: fix, improve, update, run 2021-10-11 21:15:11 +02:00
Přemysl Eric Janouch e2790b42f3
sdtui: fix introductory message centring 2021-10-11 21:15:11 +02:00
Přemysl Eric Janouch 9b220b74cc
sdtui: minor rendering clean-up 2021-10-11 21:15:11 +02:00
Přemysl Eric Janouch 6f569e076e
sdtui: further improve the XML mangler
Comments should be more or less reliably handled by GMarkup now.
2021-10-11 06:32:00 +02:00
Přemysl Eric Janouch ce2b8b39c0
Update README
We're not that all that far away from a stable version.
2021-10-11 02:46:56 +02:00
Přemysl Eric Janouch e57751fe0e
sdtui: skip keywords in XDXF 2021-10-11 02:43:34 +02:00
Přemysl Eric Janouch 4d6cd247cb
sdtui: implement elementary XDXF display
We're lacking word wrapping, but it's more or less usable.
2021-10-11 02:43:30 +02:00
Přemysl Eric Janouch b9ba894cc9
Replace the screenshot
To make it apparent what this program is good for.
2021-10-10 07:23:44 +02:00
Přemysl Eric Janouch de7089d669
gnu-fdl-en-cz.sh: employ Pango formatting
Also add collation fields.
2021-10-10 06:13:49 +02:00
Přemysl Eric Janouch 16d6eaf012
sdtui: support <b>/<i>/<u> in Pango entries 2021-10-10 06:13:49 +02:00
Přemysl Eric Janouch bc939712cb
sdtui: lay the groundwork for formatted entries 2021-10-10 06:13:49 +02:00
Přemysl Eric Janouch 6f7fbbb438
sdtui: keep the per-ViewEntry GPtrArrays 2021-10-10 06:13:48 +02:00
Přemysl Eric Janouch 39ff4069c0
tabfile: fix file format version downgrade 2021-10-10 01:57:51 +02:00
Přemysl Eric Janouch fbfd8c7d02
tabfile: add support for writing Pango markup
Enabling this option will ensure the field would parse.
2021-10-10 01:52:15 +02:00
Přemysl Eric Janouch 8b9c5e0460
Add the Czech WordNet snapshot to dicts 2021-10-10 00:45:38 +02:00
Přemysl Eric Janouch 973d1d27ea
Improve documentation 2021-10-07 20:11:36 +02:00
Přemysl Eric Janouch 55d0f53f7a
Abandon the idea of sts for slovnik-cizich-slov
We'd need something like inlining the type sequence within the data,
which doesn't seem particularly elegant.
2021-10-07 17:24:24 +02:00
Přemysl Eric Janouch 20fcf2a0c7
tabfile: make it possible to set metadata
And some related clean-up.
2021-10-07 16:28:44 +02:00
Přemysl Eric Janouch ed8b1bcdad
Add sample dictionary downloaders/builders 2021-10-07 14:06:57 +02:00
Přemysl Eric Janouch 3881725904
tabfile: remember to check UTF-8, glibize 2021-10-06 22:11:21 +02:00
Přemysl Eric Janouch 6c364dc997
Add an implementation of tabfile
The original one is a horrible thing.  Now we're self-reliant.
2021-10-06 22:04:55 +02:00
Přemysl Eric Janouch 690402f2e1
Unbreak stardict_dict_get_synonyms()
Untested, but certainly broken six ways to Sunday before.
2021-10-06 20:14:49 +02:00
Přemysl Eric Janouch 03f2123447
GLib-related improvements
Now all error messages produced by tools should be in the right
encoding, even if the system isn't in UTF-8.
2021-10-06 16:11:55 +02:00
Přemysl Eric Janouch 3c87b95c31
Make Tab put the current definition into search
Moving some X11-only code out.
2021-10-06 13:44:54 +02:00
Přemysl Eric Janouch fffa2906d8
Update README
It turns out sdtui works in Sway out of the box (essentially).
2021-07-24 23:46:28 +02:00
Přemysl Eric Janouch 4245dc35df
Update README, add a screenshot
I've given up on the idea of a "proper" TUI framework.

I've also learnt that Wayland isn't a completely dead end.
2021-07-23 20:46:14 +02:00
Přemysl Eric Janouch 87f90f6420
Update .gitignore 2021-07-07 00:02:00 +02:00
Přemysl Eric Janouch 2b5eb86a9f
sdtui: enable styling of defocused selected rows
The defaults are unaffected, the row is always reverse, like it used to.

Having the deselected row just be underlined seems sensible.

It isn't currently possible to change /just/ the foreground or
the background colour of the selection, due to how ncurses works
with colours.

Bumped termo to enable requesting the appropriate events.
2021-07-03 11:44:01 +02:00
Přemysl Eric Janouch 85ca0c5857
sdtui: normalize whitespace in clipboard input 2021-07-03 11:36:46 +02:00
Přemysl Eric Janouch bb4e732a25
Bump termo 2020-10-29 15:57:14 +01:00
Přemysl Eric Janouch 911749475e
CMakeLists.txt: omit end{if,foreach} expressions
Their usefulness was almost negative.
2020-10-29 15:43:05 +01:00
Přemysl Eric Janouch f15fc0f00a
Cleanup 2020-10-26 17:57:24 +01:00
Přemysl Eric Janouch d2fa9f3151
Convert the manpage to AsciiDoc
Writing DocBook XML by hand is an awful experience and the tools aren't
much better.  Asciidoctor does it well.  There's no need to worry about
semantics, man(1) just needs to be able to show something at all.

This project's manpage is sadly almost useless right now.
2020-10-26 17:06:13 +01:00
Přemysl Eric Janouch d7f502a731
Bump termo 2020-10-26 15:16:47 +01:00
Přemysl Eric Janouch 7743e21bca
Bump minimum CMake version to 3.0
A nice, round number.  This allows us to remove some boilerplate.
2020-10-26 15:16:46 +01:00
Přemysl Eric Janouch 504f1ce2f5
Bump termo 2020-09-14 18:07:12 +02:00
Přemysl Eric Janouch e47667b28a
sdgtk: don't follow our own selection
When the main window is focused, we are probably the owner of it.
2020-09-14 02:02:38 +02:00
Přemysl Eric Janouch aa19848499
Add an experimental GTK+ UI
It has a potential to stay simpler than the TUI,
while having a wider feature set.

Not building this toy by default, it needs some time investment.
2020-09-08 05:02:14 +02:00
Přemysl Eric Janouch 588b6ef8bb
Fix a segfault when search goes past the end
Removing a preprocessor macro in favor of a normal function.
2020-09-08 05:01:31 +02:00