Skip to content

charles-l/pep

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

pep

A minimal orthogonal Vim-like clone.

Current features

  • Basic editing tasks
    • Insert mode
    • Delete, join text and lines
    • Undo (partially implemented)
    • Read file
    • Write file
    • Basic piping out (with | to read from pipe or ! to filter the entire buffer through command)
    • Searching (by piping out to grep)
  • ~1000 SLOC (goal is to stay under 2K - less if possible)

Design

  • There's a buffer
  • The buffer has a linked-list of lines
  • Motions
    • Motions just move the cursor from one place to another. In code they're prefixed with an m_
  • Edits
    • Edits track the difference between two motions and perform some transformation on the inbetween

TODO

  • Make usable (i.e. fix crashes...)
  • Have config header
  • Make keybindings easier to configure
  • Make extensibility easier

About

A minimal orthogonal Vim-like clone. [ABANDONED FOR NOW AND SEGFAULTY]

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published