Features LSP autocomplete, goto definition, hover info
Tree-sitter support
Color themes (borrowed from the Helix text editor)
Lots of bugs
Macro support
Something like Emacs org-mode: Open test.txt, place the cursor at line 15, and press "Ctrl-C Ctrl-C".
This project was written as a "speed run" — not for speed in terms of time, but rather as an exercise to explore the text editor problem space without overthinking or planning ahead. It’s a quick and "dirty" implementation, so to speak.
How does the VIM family generally handle extensibility?
Do you have any unique takes there?
I use Emacs, and I get how emacs does it (smallish runtime for text display and lisp interpreter, everything else in lisp).
I also use Emacs, btw.
Recently (neovim), delightfully. It just uses Lua and exposes APIs for absolutely everything.
It's ACME inspired, open source (although I don't think it's published on GitHub, one needs to download), and it's actually quite nice to work with due to its composability).
Takes some time to use, but it's really fun to use for stuff like ad-hoc documentation, completion etc. Oh, and it also has REST API for interaction with external tools so you can Go (pun intended) crazy on it.
Awesome project man. I'll have to spend some time exploring the code base when I have time.
The fact that you're daily driving this speaks volumes about its usability despite being a "toy" project. A few questions: - How's the learning curve for someone coming from Vim/Neovim? - The org-mode-like feature sounds intriguing - can you elaborate on what Ctrl-C Ctrl-C does? - Any plans to add plugin support, or are you keeping it intentionally minimal?
The Helix color theme borrowing is smart - no need to reinvent good design choices.
For now I have no plans for plugins. Need to finish "base" first and good. And yes, intention is to keep it minimal.
I know you haven't planned ahead, but have you thought about extensibility? One of the main benefit of Vim and Emacs is that the user can customize it exactly to fit their needs, and the large ecosystem that exists around that. I suppose it would be smart for any new editor nowadays to be able to leverage existing plugins from other ecosystems, rather than starting from scratch.