-
Notifications
You must be signed in to change notification settings - Fork 5
/
TODO
91 lines (81 loc) · 4.6 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
## dictpopup
High priority
-------------
- Add database version to metadata of database
- Bring back kanjification
- Allow changing font size
- Add more tests
- What happens when you open dictpopup-config and then dictpopup
- What happens if some random folder was selected for pronunciation index?
-> Proper error message
- Proper error handling for faulty Anki settings
- Test what happens if you press some shortcuts in the error window (e.g. 'no database found')
Mid priority
------------
- Fix trying too many deinflections
- e.g.:
- に -> にる、ぬ、る
- 白ける -> 白い
- やった -> やつ
- Add info of currently processing dictionary in preferences window when generating dictionary index
- Remove duplication of full path in every jppron database entry
- Safe prefix to indices in metadata and concatenate at runtime
- Check if sentence is mapped to some field and only prompt for it in that case
- Group terms by reading, allow for switching between different readings
- Implement a small window to manually enter a search string instead of selecting ?
- Write a "Yomichan search"-like window application
pron:
- Allow specifying the order for pronunciations
- Search for audio of inflected selected word (e.g. 下がらない) (optionally)
Low priority
------------
- Kanjify the word in the copied sentence according to the dictionary entry
- (dictpopup_create) Cleanup database data on error case (lock.mdb)
- Don't show frequency dicts in sort order
- Need some check when looking up a hiragana conversion from mecab to prevent things like:
- 賢人会 -> 県人会
- 大正門 -> 大誓文
- 家名だ
- Allow canceling context selection with Esc
- Add tags to the Anki card, similiar to mpvacious
- Better list and table formatting
- Text only is not enough for that. Would need to surround
text with markers and then parse and format at run time
- Support pictures
- Fix "Error obtaining window name" on recursive lookup
- The problem is, that dictpopup creates a "child window" (?) with id one more which does not have a name
- This affects all programs which create a child without own title name
- Allow configurable keybindings
- Allow resizing the window and remember the size on close (write to config.ini)
- Move all Japanese specific things into deinflector.c, choose more language agnostic function names in all other places
- Allow changing AnkiConnect API address in config
- Skip certain lines on definition add (without selection), e.g.:
- しず か (しづ—) [1]【静か・▽閑か】
-(形動)〔文〕ナリ
- Put length of longest entry into the database under LENGTH_OF_LONGEST_ENTRY. Then limit the lookup by that length
- Currently hard coded to 60 bytes
- Only important for an auto scan implementation though
Possible ideas:
- Allow adding audio files indexed by filename (for forvo)
- Add some way to lookup example sentences
- Maybe something like a menu button which opens a popup menu with: "settings", "lookup massif example sentences", ...
- Implement a dbus service mode
- Keep window in the background and just hide on close
- This should allow for near instantaneous lookup (The bottleneck currently is all due to gtk + X11, i.e. starting the window)
- Consider using an Input Method Framework to draw the popup (to allow for mouse pointer positioning for WMs other than X11)
- Relevant discussion: https://discourse.gnome.org/t/spawning-window-at-mouse-pointer-using-gtk4/19446/6
- But I think this won't allow moving / resizing the window
- Another approach might be using an invisible (transparent) fullscreen window with a popover / popup menu at the mouse pointer
- Need to look into how goldendict's move() function is implemented (Probably using Qt)
- Write a browser addon which enables using dictpopup just by pressing Shift (like yomichan)
- It simply needs to pass the next ~50 characters starting from the current mouse position as an argument to dictpopup
- However I strongly doubt that an extension can execute some program, even if it's a local copy
- Display a vertical bar to the right for quickly switching between different dictionaries (similar to goldendict's popup)
- Support hyper links?
- Could use gtk_label_set_markup, but would need to switch to a label instead of a textview
- Make dictionary numbers (①, ②, ...) clickable for adding to Anki
- A (very small) optimization would be to sort the dictSortOrder string and then use binary search or sth in indexof()
Test results for storing compressed dictionary entries:
- Snappy: 840M -> 734M
- zstd (without dict, clvl: 10): 840M -> 691M
- zstd (with dict, clvl: 20): 840M -> 544M