# Bugs - Memory Leak - Fix jumping forward a word jumping past consecutive brackets - Odd scrolling behavior on small screen heights - Scrolling past end/beginning of results panics # Visual QOL - Split grep search results into a table to avoid funky unaligned text # Planned Features - [ ] Jump List - Use grouped lifetimes exclusively for memory allocation/freeing - [ ] Highlight which panel is currently active - [ ] Persist end of line cursor position - Testing Harness - [x] Replay user inputs and assert buffer contents/changes - [ ] Finish writing tests for all current user actions - Vim-like Macro replays - [ ] Simple File Search (vim /) - [ ] Auto-indent - Modify input system to allow for keybinds that take input - Vim's f and F movement commands - Vim's r command - Save/Load files - [x] Save - [ ] Load when changed on disk - LSP Integration - [ ] Language Server Configurations - [ ] Diagnostics - [ ] In-line errors - [ ] Go-to Definition/ - [ ] Find references - Re-implement lost features from Plugins - [ ] Integrate tree-sitter - [x] Syntax Highlighting - [ ] Auto Setup Parsers - [ ] Download parser - [ ] Compile/"Install" - [ ] Auto-indent? - [ ] Bootleg Telescope - [ ] Grepping Files - [x] Query across project - [x] Open file in new buffer - [x] Open file in new buffer at found location - [ ] Preview file with context - [x] Show Context - [ ] Properly show lines numbers - [ ] Don't overlap result list with file preview - [ ] Open Buffer Search - Re-write the UI (again) - [x] New UI - [ ] Styling - Undo/Redo - [x] Basic/Naive Undo/Redo - [ ] Interface for undo-able actions - [ ] Edit History Tree - [ ] Undo history saved to disk - Finish selections - [x] Guarantee that start and end are always ordered - [ ] Whole Line Selections - Add in text actions - [x] Yank - [x] Delete - [ ] Change - [x] Change - [ ] Change word - [ ] Change inside delimiter - Virtual Whitespace - Allow any-sized tabs - Command Search and Execution - Refactor to remove generics added specifically for plugins - Palette based UI?