Commit Graph

34 Commits

Author SHA1 Message Date
Přemysl Eric Janouch d13b4a793d
Prevent undefined behaviour 2022-09-24 18:42:59 +02:00
Přemysl Eric Janouch b36f185426
Fix various macOS-related/found issues
Even though this software isn't very useful on that system either,
due to its lack of PRIMARY.
2021-11-02 17:04:37 +01: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 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 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 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
Přemysl Eric Janouch 37bf8ee648
Name change 2020-09-02 16:27:45 +02:00
Přemysl Eric Janouch 1289c98ca8
Bump to GLib 2.38 because of deprecation warnings 2020-04-15 07:00:36 +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 3067e15929
Fix and update LICENSE 2017-02-03 23:14:34 +01:00
Přemysl Eric Janouch 2357b67f23
Make prefix matching behave better
It seems to me that we _do_ want to ignore diacritics most of the time.

I've also fixed the fallback.
2016-10-23 00:33:30 +02:00
Přemysl Eric Janouch 26155227c7
Simplify the collation mess
Brings a bit worse performance on load since more memory is being
reordered but it seems to be worth it.
2016-10-08 01:20:09 +02:00
Přemysl Eric Janouch 0d779d718b
Improve memory usage
By avoiding unnecessary fragmentation in indexes.

With a larger set of dictionaries, I've observed a ~20% improvement.
2016-10-07 17:30:57 +02:00
Přemysl Eric Janouch 3c5eae978d
Update more copyright years 2016-09-28 16:25:19 +02:00
Přemysl Eric Janouch a063328ac8
Fix performance regression
Avoid stepping through the entire dictionary

When looking for the first match with an empty common prefix.
2016-09-28 04:17:08 +02:00
Přemysl Eric Janouch ff0ec60931
Validate encoding in .ifo files 2016-09-28 03:03:42 +02:00
Přemysl Eric Janouch db0579b7a0
Improve partial matches 2016-09-27 03:47:36 +02:00
Přemysl Eric Janouch da6c46cba9
Fix common prefix search with no collator 2016-09-27 03:35:14 +02:00
Přemysl Eric Janouch a591041912
Highlight the longest matching prefix of entries 2016-09-26 15:59:26 +02:00
Přemysl Eric Janouch 10240c716a Formatting 2015-02-26 23:29:45 +01:00
Přemysl Eric Janouch 9f8af6c27b Fix build with ICU versions < 50
I'll try to describe my feelings with this excerpt from
David Firth's video "Take This Pill":

  PAIN.

  *oooowww...*

  Hurts, doesn't it?

  *...wwwwwww*
2015-02-24 21:39:45 +01:00
Přemysl Eric Janouch ccfa92ba2a Fix reporting of unknown .ifo keys 2015-02-24 09:27:38 +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 1955343857 Add a workaround for GLib < 2.33.1
I wanted to have it working in Wheezy and this was standing in the way,
so I went for the quick fix that I'd made available to myself.
2013-10-02 02:11:57 +02:00
Přemysl Eric Janouch 190c21eabb Clarify some behaviour in comments 2013-10-02 02:11:10 +02:00
Přemysl Eric Janouch 1df7021276 Fix the dictionary loading error path 2013-07-18 00:16:57 +02:00
Přemysl Eric Janouch 852667350b Actually use DictzipInputStream in sdtui 2013-07-18 00:16:50 +02:00
Přemysl Eric Janouch 270539c72e Move private data into StardictDictPrivate 2013-07-18 00:16:50 +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 46083b1e7d Internationalisation 2013-05-19 05:04:37 +02:00
Přemysl Eric Janouch c430b6d7f8 Don't do case-sensitive searches 2013-05-19 01:29:04 +02:00
Přemysl Eric Janouch bcf933fb9e Move dictionary generation to its own module 2013-05-10 02:06:27 +02:00
Přemysl Eric Janouch 5b7af35cfa Create a private header 2013-05-08 20:59:40 +02:00
Přemysl Eric Janouch febff16ed4 Move sources into their own directory 2013-05-08 20:54:06 +02:00