A native alternative to Obsidian. Only has the features I care about.
- Add central theme struct
- Add status bar and display current mode
- Add the ability to zoom in and out (with crisp fonts)
- Add command input
- Add
dwaction + motion from Vim - Add support for undo
- Refactor undo code to be less clown
- Add support for scrolling
- Add support for redo
- Add line wrapping
- Factor our modifier keys into bit_field
- Allow adjusting the bounds of the text display
- Add margin to left and right side when rendering
- Break long individual tokens when wrapping
- Add command parser
- Add support for saving and loading
- Add support for
ggandG - Add support for
r - Add support for
{and}movements - Modify
wrapped_linesto be a display data structure instead - Scroll cursor into view
- Parse text into useful nodes before display gen
- Switch to GLFW + NanoVG instead
- Parse using
vendor:commonmarkinstead - Correctly highlight markdown TODO lists
- Add ability to flash status for a period of time
- Add tab completion to commands
- Refactor undo commit calls to always happen unless a bool is set
- Add vim end-of-line/start-of-line jk nav behavior
- Add support for repeat (
.), very tricky just record keyboard lol - Show workspace tree when doing
:E - Add command for new day file
- Add forward and backward search bindings
- Add support for copy/paste of text
- Add support for copy/paste of images
- Add command to push the current document to
opalnotebook.com - Detect conflicts document push similar to how Git's
--force-with-leaseworks - Create server for live collaborative editing (maybe using GGPO lol)?
- When there's a linewrap and a pre right after the wrap, it seems to swap modes
- Little bug in Odin compiler where it list
-build-mode:libtwice in help - I can transmute a
^[2]intto^[]bytebut I think that's incorrect since^[2]intdoesn't have the same memory layout as a slice