On Sun, Jun 29, 2014 at 03:00:32PM +0300, Dimitris Zervas wrote: > I think that a new text editor must be created, with text interface (and > maybe GUI later). No, the current situation with terminals and terminal emulators is full of suck and there already many editors utilizing it. As discussed on this mailing list in the past, curses sucks, as does implementing something that really is a GUI by abusing character displays. > > I think that the only things we have to implement are: > 1. Most vim bindings (not all, but most), just altered a bit in the way they > behave. Ok, just use vi or vim or some other similar editor. > 2. Fantastic syntax highlighting This may be considered harmfull in general. [0] > 3. Fantastic auto-completion (a small menu appears while you type and you > press tab to accept or ctrl/alt to navigate). > 4. Code folding > 5. Snippet/template support These features are just to support boilerplate and other sucky coding habits. The complexity should be managed by the programming language, that's what it's there for, not the editor. The need of aforementioned features is merely a symptom of deeper issues within the code. > 6. Documentation while you type > > They may seem a lot and difficult, but they already exist here and there, > just not all compiled in a suckless way. > I've tried most of the said editors and I simply can't live without my > beloved vim bindings. I don't know if there's a suckless way to implement these. LLVM could be a way to implement some of those features without code duplication with compiler frontends, alas being C++, not suckless.
tl;dr > We NEED a new editor. To an extent, I agree. There are some real issues regarding a suckless implementation of the editor (curses and most UI-toolkits suck). I think most of the features listed are a non-issue. However, an editor implemented with suckless technologies would be nice, but the actual issues are not within the editor, but in the enviroment that surrounds it. [0] http://www.linusakesson.net/programming/syntaxhighlighting/
