reMenu: A rust-enabled reconfigurable menu
Current status
As of now, I am trying to getter a better understanding of X11.
There is no functionality and the code is an absolute mess.
Besides the lack of structure and good abstraction, there are other issues:
- X server objects are never freed.
- There is unwrap everywhere and no error handling.
- There are no tests.
- And yeah, there is no logging.
- It will crash, if not build with latest xcb from github
As I said: This is for learning right now.
Open issues
- scroll through results
- check for vertical fonts
- Add missing keys: F1-F12, delete, tab, pos1, end, pgnup, pgndown
- Correct desktop entries parser
- async loading of entries (allows typing while loading)
- check use of X DBE (double buffer extension)
- dpi setting
- casts and shortcuts in font rendering
References
Desktop entries
- https://specifications.freedesktop.org/desktop-entry-spec/latest/
- https://wiki.archlinux.org/title/Desktop_entries
- https://wiki.ubuntuusers.de/.desktop-Dateien/
- https://www.baeldung.com/linux/desktop-entry-files
- https://github.com/pop-os/freedesktop-desktop-entry
- https://github.com/FivEawE/desktopentries/blob/master/src/entry.rs
- https://github.com/takluyver/deskent
- https://github.com/enkore/j4-dmenu-desktop