Skip to content

fleebeee/fedit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fedit

fedit is a simple terminal-based text editor written in Rust with convenience in mind. It tries to work around the limitations of the terminal and maintain familiar controls from GUI editors.

Installation

git clone git@github.com:fleebeee/fedit.git
cd fedit
# to just build the binary
cargo build --release
# or to install it with cargo
cargo install --path .

Compatibility

To enjoy all the features of fedit you need a terminal emulator that implements the kitty keyboard protocol. I've found that some terminals don't render graphemes such as 👍🏻 correctly. fedit has been developed and tested on WezTerm.

Controls

Key Action
Ctrl+Q Quit
Ctrl+S Save file
Ctrl+Z Undo
Ctrl+Y Redo
Ctrl+C Copy
Ctrl+V Paste
↑↓←→ Move cursor (Modifiers: Shift, Super)
Left mouse Move cursor

Performance

fedit is not blazing fast. It's intended for quick edits on small files.

Text is internally handled as a list of lines, and lines are lists of graphemes. There is no gap buffer.

Roadmap

These features could possibly be implemented in the future:

  • Search
  • Word-by-word cursor movement
  • Mouse selection
  • Gap buffer
  • Syntax highlighting

About

A simple terminal-based text editor

Topics

Resources

License

Stars

Watchers

Forks

Languages