This text editor is inspired by kilo-tutorial, this project follows Chromium coding styles using clang-format.
- Cmake
- clone this repository into your desired location, e.g.
dir
. cd dir
cmake --build .
./minTextEditor <file to open>
,<file to open>
is optional.
<Ctrl> + s
: save file<Ctrl> + q
: quit
i
: enter Insert Modex
: delete character where the cursor currently atgg
: scroll to the topG
: scroll to the buttomzz
: center the cursor0
/HOME
: move cursor to the start of the line$
/END
: move cursor to the end of the line←
/→
/↑
/↓
: move cursor to the left/right/up/downh
/l
/k
/j
: move cursor to the left/right/up/down/<search pattern>
: search:<command>
: below are supported commandsw
: save fileq
: quitwq
: save file and then quitq!
: force quit
Insert Mode works just like normal text editor, simply insert text & delete text, use arrow keys to move around.
<Esc>
/jk
/jj
: enter Normal Mode
- adjust window size dynamically
- ./vimrc customizations
- visual mode/ copy and paste
- cursor movement support: UP & DOWN alignment when row involves TAB
- add unit test
- syntax highlight support for C, python, cpp
- add CI/CD, test support for Linux & Windows
- vim-like functionality(mainly navigation)
- hightlight current cursor row
- wide character support(中文)
- hybrid data structure(array/rope/gap buffer)
- file tree
- fuzzy search
- regex replace(all)
- split view
- Mouse support