Commit Graph

39 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 5216205056
README: make sdgui more of a first-class citizen 2021-10-17 11:25:32 +02:00
Přemysl Eric Janouch 33e98881ad
sdgui: add a MIME-associated desktop file
Neither StarDict nor shared-mime-info have their own MIME DB file.
2021-10-16 09:00:31 +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 8b9c5e0460
Add the Czech WordNet snapshot to dicts 2021-10-10 00:45:38 +02:00
Přemysl Eric Janouch ed8b1bcdad
Add sample dictionary downloaders/builders 2021-10-07 14:06:57 +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 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 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 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 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 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 74f2bcae34
Get rid of one CMake dev warning 2020-09-07 18:39:59 +02:00
Přemysl Eric Janouch 8d19acd91a
Add a tool to transform dictionaries 2020-09-04 00:13:34 +02:00
Přemysl Eric Janouch 37bf8ee648
Name change 2020-09-02 16:27:45 +02:00
Přemysl Eric Janouch 675139edb0
Disable GLib deprecation warnings
Not very useful.
2020-04-15 07:07:47 +02:00
Přemysl Eric Janouch 942bda7db4
Use XCB and SelectSelectionInput instead of GTK+
As it happens, there is no real need to constantly poll for changes,
since XFixes can inform us of updates as they happen.

With GTK+ gone we've got dependencies and error handling under control.
XCB is a truly awful thing to learn, though.

Our method will never work on Wayland or Windows, so we don't miss out
on anything by abandoning the huge toolkit.
2018-09-23 06:38:03 +02:00
Přemysl Eric Janouch e5faed57c2
Relicense to 0BSD, update mail address
I've come to the conclusion that copyright mostly just stands in the way
of software development.  In my jurisdiction I cannot give up my own
copyright and 0BSD seems to be the closest thing to public domain.

The updated mail address, also used in my author/committer lines,
is shorter and looks nicer.  People rarely interact anyway.
2018-06-24 05:23:31 +02:00
Přemysl Eric Janouch 8dc0176c41
CMakeLists.txt: fix variable name 2018-06-24 05:22:51 +02:00
Přemysl Eric Janouch 77968ea165
CMakeLists.txt: clarify comments 2017-06-20 06:32:06 +02:00
Přemysl Eric Janouch 4f9c638798 CMakeLists.txt: use more succint variables 2016-03-15 21:56:07 +01:00
Přemysl Eric Janouch 38890be47d Fix manpage installation 2016-03-15 21:53:52 +01:00
Přemysl Eric Janouch c5dbe5fa44 Don't force compilation flags 2016-03-14 21:28:44 +01:00
Přemysl Eric Janouch c04ab011d1 Try harder to find ncursesw 2016-01-14 20:32:04 +01:00
Přemysl Eric Janouch e7e92231fa Use optional dependencies opportunisticaly 2015-10-01 22:27:35 +02:00
Přemysl Eric Janouch 1ef34fbb92 Travis CI: Try to fix searching for ICU config 2015-02-24 20:33:51 +01:00
Přemysl Eric Janouch 2abbe7017f Add a custom collation mechanism
A lot better than that StarDict shitfuckery.
2015-02-24 09:27:38 +01:00
Přemysl Eric Janouch a9bc1d8751 Add support for watching the primary selection
Depends on GTK+, which should make it work with all of X11, Wayland, and Mir.
2015-02-07 21:05:32 +01:00
Přemysl Eric Janouch bb9802f83d resize_term -> resizeterm
Apparently we do need to call the "outer-level" function.
2015-01-20 23:56:29 +01:00
Přemysl Eric Janouch da3a4842f1 Get rid of wchar_t for good 2014-11-19 03:31:47 +01:00
Přemysl Eric Janouch b8dc6bb3cc Avoid flicker while resizing 2014-11-19 03:31:47 +01:00
Přemysl Eric Janouch b352a0fc8d Rewrite to use termo
Also get rid of some silliness that I'm only able to see now.
2014-11-19 03:31:46 +01:00
Přemysl Eric Janouch adce15243a Add a querying tool for use in e.g. IRC bots
Now the tools don't get built on `make all' but instead have their
own target called `tools'.  It might be reasonable to move them into
their own directory sometime, instead of cluttering `src'.
2013-10-02 02:17:38 +02:00
Přemysl Eric Janouch 15f62b7054 Add a class to handle dictzip files
Provides pseudo-random access to dictionary files compressed using dictzip.

It doesn't implement a cache, it just loads missing chunks until it has the
whole file.  I'm not sure if discarding not recently used chunks is really
a useful feature.  If there _was_ a way to get noticed when system memory
is low, I think the best way to handle that event would be to simply release
it all.

All in all, this is pretty useless.  But it was interesting to write.

This has yet to be integrated into the application proper.
2013-07-18 00:16:43 +02:00
Přemysl Eric Janouch c2e8709372 Fix minimal required CMake version 2013-07-14 21:09:01 +02:00
Přemysl Eric Janouch 1cc91a4b17 Fix double- and zero-wide characters
It's not perfect but seems to work well enough.
2013-06-02 00:04:43 +02:00
Přemysl Eric Janouch 1636c34f83 Add a manpage 2013-05-19 07:49:47 +02:00
Přemysl Eric Janouch 46083b1e7d Internationalisation 2013-05-19 05:04:37 +02:00
Přemysl Eric Janouch 9c024a57cd Add CMake infrastructure 2013-05-17 18:41:14 +02:00