2.7 KiB
2.7 KiB
Bugs
- Fix jumping forward a word jumping past consecutive brackets
- Scrolling past end/beginning of grep results panics
- "change selection" not pushing snapshot
- Don't allow panel navigation in grep panel
Visual QOL
- Split grep search results into a table to avoid funky unaligned text
TODO
- Jump List
- Use grouped lifetimes exclusively for memory allocation/freeing
- Highlight which panel is currently active
- Persist end of line cursor position
- Testing Harness
- Replay user inputs and assert buffer contents/changes
- Finish writing tests for all current user actions
- Vim-like Macro replays
- Simple File Search (vim /)
- Modify input system to allow for keybinds that take input
- Vim's f and F movement commands
- Vim's r command
- Save/Load files
- Save
- Load when changed on disk
- LSP Integration
- Language Server Configurations
- Diagnostics
- In-line errors
- Go-to Definition/
- Find references
- Integrate tree-sitter
- Syntax Highlighting
- Auto Setup Parsers
- Download parser
- Compile/"Install"
- Auto-indent
- Infer indent with similar lines
- Infer indent with C-style scopes (languages using '{')
- Infer indent inside multi-line function calls (again C-style)
- Somehow use tree-sitter to be language agnostic (not sure this is even possible with TS)
- Bootleg Telescope
- Grepping Files
- Query across project
- Open file in new buffer
- Open file in new buffer at found location
- Preview file with context
- Show Context
- Properly show lines numbers
- Don't overlap result list with file preview
- Open Buffer Search
- Workspace file search
- Grepping Files
- Re-write the UI (again)
- New UI
- Styling
- Background colors
- Borders + Border Color
- Rounded corners?
- Gradients?
- Undo/Redo
- Basic/Naive Undo/Redo
- Interface for undo-able actions
- Edit History Tree
- Undo history saved to disk
- Finish selections
- Guarantee that start and end are always ordered
- Whole Line Selections
- Add in text actions
- Yank
- Delete
- Change
- 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?