|
|
|
[x] use system lua lib
|
|
|
|
[x] make it std=c11 not gnu11
|
|
|
|
[ ] make it compile on openbsd
|
|
|
|
[ ] update license, readme and documentation
|
|
|
|
[ ] add manpage
|
|
|
|
[x] add desktop file
|
|
|
|
[x] makefile: add install and uninstall
|
|
|
|
[ ] makefile fix permissions of installed data dir
|
|
|
|
[ ] SDL: disable key not recognized messages
|
|
|
|
[U] font: use system fonts
|
|
|
|
[ ] font: implement hashmap of already rendered glyphs and only re-draw the
|
|
|
|
ones that are not in that map
|
|
|
|
[ ] font: resize text on the fly
|
|
|
|
[ ] font: change font on the fly from a list of installed fonts
|
|
|
|
[ ] implement a user directory for fonts (like plugins)
|
|
|
|
[ ] ui: change ui scale on the fly
|
|
|
|
[x] add menu to exec arbitrary command -> added console
|
|
|
|
[ ] that command can be what is selected
|
|
|
|
[ ] console: accept input
|
|
|
|
[ ] console: add option to open terminal
|
|
|
|
[ ] console: make the itegrated console v100 compatible
|
|
|
|
[ ] console: automatically switch focus to the previous rootview when hiding it
|
|
|
|
or selecting something from a treeview
|
|
|
|
[ ] doc: detect file changes with hash
|
|
|
|
[ ] doc: save files with sudo (or other command)
|
|
|
|
[ ] doc: complete rewrite of history handling, by default the whole document is
|
|
|
|
selected for updates but when un-doing with a selection then the action
|
|
|
|
is limited to that part of the document (this is a feature from emacs)
|
|
|
|
[ ]: also make it configurable
|
|
|
|
[x] add horizontal scroll
|
|
|
|
[ ] add a cross to close tab
|
|
|
|
[ ] add context menu to various things
|
|
|
|
[ ] document and selection context menu
|
|
|
|
[ ] treeview context menu
|
|
|
|
[ ] tab context menu for close duplicate etc
|
|
|
|
[ ] prevent overscrolling on treeview
|
|
|
|
[x] user config file and/or init.lua
|
|
|
|
[x] change tmp directory to somewhere in /tmp
|
|
|
|
[x] save project directory and restore on reopening
|
|
|
|
[ ] optimize dir tree taking too long to load on big folders
|
|
|
|
[ ] SDL: optimize drawing operations
|
|
|
|
[ ] implement render queue for each frame and render in batch, this
|
|
|
|
should save some time and improve cache locality
|
|
|
|
[ ] syntax: do not reload syntax on every draw event
|
|
|
|
[ ] go in background when launching from terminal
|
|
|
|
[ ] some key bindings:
|
|
|
|
[x] alt+right == End
|
|
|
|
[x] alt+left == Home
|
|
|
|
[x] alt+up == PageUp
|
|
|
|
[x] alt+down == PageDown
|
|
|
|
[ ] ctrl+d == duplicate line
|
|
|
|
[ ] ctrl+x == cut line || selection
|
|
|
|
[ ] ctrl+c == copy line || selection
|
|
|
|
[x] ctrl+shift+o == change & open project folder
|
|
|
|
[x] ctrl+q == quit
|
|
|
|
[x] ctrl+n -> next_find
|
|
|
|
[x] ctrl+shift+n -> prev_find
|
|
|
|
[x] f3 -> new file
|
|
|
|
[x] selected + tab == indent up
|
|
|
|
[x] selected +shift+tab == indent down
|
|
|
|
[x] change alt+<number> to ctrl+<number>
|
|
|
|
[ ] doc: add multi cursor system
|
|
|
|
[ ] add binding to open up a cheatsheet of keybinding, with a
|
|
|
|
search feature
|
|
|
|
[x] implement visual "ruler" at column 80
|
|
|
|
[ ] show hidden files config and binding
|
|
|
|
[ ] syntax: highlight FIXME TODO BUG FIX and IMPROVEMENT keywords
|
|
|
|
[ ] do not open doc in new tab if current tab has an unchanged document
|
|
|
|
[ ] doc: add auto close brackets and quotes
|
|
|
|
[ ] doc: highlight matching brackets and quotes pairs
|
|
|
|
[ ] doc: have a list of file extensions and handlers for those extensions, so
|
|
|
|
that we don't try to open like pdf files or tarballs and get jibberish
|
|
|
|
[ ] view: implement get_scrollable_size()
|
|
|
|
[ ] tree: add icons for common actions
|
|
|
|
[ ] delete file
|
|
|
|
[ ] new file
|
|
|
|
[ ] rename file
|
|
|
|
[ ] move file
|
|
|
|
[ ] copy file
|
|
|
|
[ ] tree: make treeview resizable
|