https://github.com/angusgmorrison/gila
A lightweight terminal text editor written in Go.
https://github.com/angusgmorrison/gila
Last synced: over 1 year ago
JSON representation
A lightweight terminal text editor written in Go.
- Host: GitHub
- URL: https://github.com/angusgmorrison/gila
- Owner: AngusGMorrison
- Created: 2023-02-16T16:35:02.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-03-25T18:57:11.000Z (over 3 years ago)
- Last Synced: 2025-02-15T20:54:19.581Z (over 1 year ago)
- Language: Go
- Size: 138 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Gila
A lightweight text editor with minimal dependencies inspired by antirez's
[kilo](https://github.com/antirez/kilo).
Gila is currently a work in progress, but feel free to try it out. Simply clone the repo, run `make
build` and run the exported binary with the path to a text file as its first argument. Sample files
are provided under `testdata`.
## Progress
### Essentials
- [x] Enable terminal raw mode
- [x] Display welcome screen
- [x] Read and transliterate special keypresses, e.g. arrow keys
- [x] Cursor control
- [x] Load arbitrary text files
- [x] Vertical scrolling
- [x] Horizontal scrolling
- [x] Status bar
- [x] Status message
- [x] Text editing
- [x] Create and save new documents with a custom file name
- [ ] Test suite
### Stretch
- [ ] Search
- [ ] Syntax highlighting
- [ ] Word wrap
- [ ] User configuration
- [ ] Treat space-replaced tabs as a single character for cursor movement
- [ ] Performance tuning
- [ ] Handle grapheme clusters of > 1 code point