pip install git+https://github.com/stonewell/eim.git
- Piece Table with Tree
- Treesitter
- Syntax Highlighting
- Auto indent
- aligned indent
- leverage nvim treesitter queries
- LSP
- EditorConfig
- indent
- code page
- tab size
- save trim trail space and add new line
- Search Everything
- Color Schema
- Format file
- KeyBinding
- PySide6
- Keybinding with prefix key, built-in support by pyside6
- Flycheck
- Status Line
- Editing server/client
- ask for input
- directory content plugin support path input
- show error message
- syntax high light for multiple line string, comment
- syntax highlight deal with selected content, handled by QT, but need to refine the text/background color
- considering re-impl selection with extra selection to keep syntax high light when lines selected
- file modified outside detect
- prompt for save when quit/close
- confirm for overwrite
- editing feature complete
- close buffer
- kill char
- kill line
- search
- regex search
- replace
- regex replace
- undo
- redo
- paste with history
- Search in files with ag/rg
- find file in project root
- search in project root
- list item performance
- backspace back indent at line begin
- should align with indent
- search wrap
- goto line
- detect language using file suffix, then use guesslang
- force buffer lang
- recent files
- guess indention of file
- guess new line style of file
- message buffer
- quit should check all buffer status
- split editor pane
- switch pane command
- close pane
- close all other pane
- update pane size when split/close
- pub/sub should only handle own events
- content window should be global not belows to editor