diff --git a/V0.1.md b/V0.1.md new file mode 100644 index 0000000..46f09e3 --- /dev/null +++ b/V0.1.md @@ -0,0 +1,39 @@ +# Gim v0.1 MVP + +## Must Have (Blocker for Release) +- [x] Modal editing (normal, insert, visual) +- [x] Core motions and operators +- [x] Text objects +- [x] Undo/redo +- [x] File I/O +- [x] Buffer switching +- [ ] Search (/, ?, n, N) with highlighting +- [ ] Syntax highlighting (Chroma + tree-sitter for Go/Python/JS) +- [ ] % (matching bracket) +- [ ] J (join lines) +- [ ] H/M/L (screen movement) +- [ ] Status line (mode, filename, position, modified flag) + +## Should Have (Makes it Usable) +- [ ] :substitute (%s/old/new/g) - at least basic version +- [ ] Better command-mode autocomplete/hints +- [ ] Configuration file support (~/.gimrc or similar) +- [ ] Persistent undo history +- [ ] Line wrapping display option +- [ ] Handle large files gracefully (>10k lines) + +## Nice to Have (Polish) +- [ ] Incremental search (search as you type) +- [ ] * and # (search word under cursor) +- [ ] Cursor line highlight +- [ ] Scroll cursor to center (zz, zt, zb) +- [ ] Named registers (a-z) +- [ ] Black hole register (_) + +## Won't Have in v0.1 (Future) +- LSP integration → v0.2 +- Fuzzy finder → v0.3 +- Splits/windows → v0.3 +- Macros → v0.2 +- Git integration → v0.3 +- Plugin system → v1.0