镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Latest commit

 

History

768 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

minimum viable editor

Editor:

  • Render monospace ascii
  • Cursor movement
  • Insert/delete text
  • Selections
  • Multiple cursors
  • Multiple editors sharing one buffer
  • Mouse interactions
  • Cut/copy/paste
  • Load/save
  • Soft wrap
  • Scrolling
  • Undo/redo
  • Status bar

Tools:

  • Open file
  • Search project files
  • Search open buffers
  • Search within buffer
  • Search within project files
  • Navigation stack
  • Runner
  • Search errors
  • Bound in-buffer search results - one long line of matches builds a list quadratic in its length (known failure, reproduced by focus-core/tests/review_regressions.rs)

Language specific:

  • Rust
  • Python
  • Shell
  • Nix
  • Markdown
  • Highlighting
  • Comment/uncomment
  • Smart indent
  • Manual indent (esp python)
  • Paren matching
  • Formatting
  • Completion UI

Language server:

  • Squigglies
  • Completions
  • Actions

VCS:

  • Diff
  • Traffic lights in editor gutter
  • Revision picker

Testing:

  • Deterministic simulation testing
  • E2E fuzzing
  • Replayable history of live sessions, for later debugging
  • Test that IO functions are not reachable from focus-core build
  • Max out fuzzer coverage
  • Figure out how to effectively test daemonization and timeouts

Arch:

  • Daemonize

Perf:

  • Don't store undo for readonly buffers
  • Test that fuzzer actions take at most linear time in buffer size
  • Test that fuzzer actions never take longer than frame budget

wishlist

About

Minimalist text editor

Resources

Stars

387 stars

Watchers

5 watching

Forks

Contributors

Languages