summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* feat: add non-linear change history with undo/redoHEADmasterFederico Igne2024-01-283-17/+123
|
* feat: add generic tree zipper data structureFederico Igne2024-01-282-0/+138
|
* feat(zipper): add option to not move past last element when moving rightFederico Igne2024-01-282-19/+31
|
* feat: add goto (G key) commandFederico Igne2024-01-283-2/+9
|
* feat: add plain search functionality (with history)Federico Igne2024-01-286-38/+229
|
* feat: yank text to registers when yanking, changing or deletingFederico Igne2024-01-262-140/+184
|
* refactor: turn editor buffer into a state monadFederico Igne2024-01-261-82/+189
|
* fix: map both CR and LF to 'Enter'Federico Igne2024-01-261-1/+1
|
* refactor: make zippers return 'pop'ped elementsFederico Igne2024-01-262-21/+14
|
* fix: make '[J]oin' join at least 2 linesFederico Igne2024-01-261-2/+2
|
* refactor: remove welcome screenFederico Igne2024-01-261-42/+25
|
* feat: add ability to paste text from a registerFederico Igne2024-01-245-63/+117
| | | | | Register are simplier than Vim register, in particular no register is local to buffers.
* feat: add Ctrl-H as a synonim for BackspaceFederico Igne2024-01-231-1/+1
|
* refarctor: rename project to 'sandy'Federico Igne2024-01-239-9/+9
|
* feat: add partial chords to statusbarFederico Igne2024-01-234-168/+213
|
* feat: add simple status bar with timed status message supportFederico Igne2024-01-236-7/+131
|
* feat: add support for rendering text (i.e. tabs)Federico Igne2024-01-223-64/+211
| | | | | | | This allows to have differences between the "raw" content of the buffer and its visualization on screen. At the time of writing this handles the rendering of tabs (i.e. '\t') as a fixed amount of spaces, but will be useful for syntax highlighting as well.
* refactor: naming convention in zipperFederico Igne2024-01-222-109/+112
| | | | | | | Unless specified otherwise: - "before" and "left" mean "before the cursor"; - "right" mean "after (and including) the cursor"; - "after" mean "after (i.e., excluding) the cursor".
* feat(mappings): Page Up/Down, Ctrl-F/B/D/U, Home, EndFederico Igne2024-01-222-4/+42
|
* build: enable debugging via 'ocamldebugger' and DAPFederico Igne2024-01-223-1/+7
|
* feat: add '0' and '$' movementsFederico Igne2024-01-122-37/+67
|
* feat: add support for "instant" normal commands (like [J]oin)Federico Igne2024-01-123-62/+125
|
* fixme: add note for future self about rendering bugFederico Igne2024-01-121-0/+6
|
* feat: allow backspace and delete to span multiple lines in insert modeFederico Igne2024-01-122-5/+26
|
* refactor: cursor movement function names to avoid clashesFederico Igne2024-01-122-11/+15
|
* feat(zipper): add function to map on cursor focus with defaultFederico Igne2024-01-122-0/+9
|
* fear(zipper): add function to join two zippersFederico Igne2024-01-122-0/+5
|
* fix: off-by-one error in cursor update procedureFederico Igne2024-01-111-2/+2
|
* fix: open an empty buffer if requested file does not exist.Federico Igne2024-01-111-3/+14
|
* refactor: revert temporary namingFederico Igne2024-01-112-4/+4
|
* bulk: add PoC of vim-like modular editorFederico Igne2024-01-1113-1/+1187
|
* build: update project dependencesFederico Igne2024-01-113-2/+4
|
* feat: add project structureFederico Igne2023-12-308-0/+59
|
* feat: add development flakeFederico Igne2023-12-302-0/+243
|
* origin: initial commitFederico Igne2023-12-301-0/+67