AngusGMorrison / gila

A lightweight terminal text editor written in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gila

A lightweight text editor with minimal dependencies inspired by antirez's 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

  • Enable terminal raw mode
  • Display welcome screen
  • Read and transliterate special keypresses, e.g. arrow keys
  • Cursor control
  • Load arbitrary text files
  • Vertical scrolling
  • Horizontal scrolling
  • Status bar
  • Status message
  • Text editing
  • 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

About

A lightweight terminal text editor written in Go.


Languages

Language:Go 99.5%Language:Makefile 0.5%