5 ms·
I can almost guarantee that it would be easier to fix whatever it is you don't like about vim than to start from scratch. Too many developers have this conceit
by ef4 14y ago
I can almost guarantee that it would be easier to fix whatever it is you don't like about vim than to start from scratch.
Too many developers have this conceit that it's easier to start from scratch. Sometimes that's true, but usually not. Usually there's an exaggerated fear of extending other people's code.
Of course the world is big enough for another project, and you might make the next great editor. But be realistic about how much effort went into something like vim, and don't think you're going to single-handedly replace it in a month.
- kkowalczyk 14y agoYou should have checked out the project before ranting. 1. The major difficulty in writing an editor is in writing the editor core. He didn't write it from scratch but used existing ACE editor. 2. VIM is a huge mass of C code. Working on a huge mass of C code is ridiculously slow. He's writing in JavaScript and using html for the UI - this is orders of magnitude faster.
- smosher 14y agoHe's writing in JavaScript and using html for the UI - this is orders of magnitude faster. In what sense is that true?
- dbattaglia 14y agoFaster for them to code with compared to C I would imagine.
- jrockway 14y agoActually, the editor core is relatively easy. The hard part is adding all those 100s of little extra features you use every day. (Emacs ships with almost a million lines of extension code.)
- scottjad 14y agoIncluded in that million lines of code are two maybe three email clients, two IRC clients, org-mode (~100KLOC itself), tetris, and who knows what else. I agree with your point, just not that the Emacs code base is a good reference of what's required to implement the numerous little text editing features people use every day.
- calinet6 14y ago"I use Emacs, which might be thought of as a thermonuclear word processor." -Neal Stephenson "Don't get me wrong: Emacs is a great operating system–it lacks a good editor, though." -Unattributed
- johncoltrane 14y agoThe last commit was 19 days ago, roughly when I installed it on this machine. The whole thing was a miserable joke at the time, with less than half of the "already implemented features" working. Either the author is slipping on his local commits or there hasn't been any progress in the last 3 weeks, JS/HTML or not, 10.000$ or not. Meanwhile, the old and rusty Vim has had 39 patches pushed.
- jamesrcole 14y agoOn the one hand you say it can be easier to start from scratch, but on the other you say you can almost guarantee it wouldn't be. It can't really be both. I think the only meaningful thing to say would be whether, in the specific case of Vim, you can outline why it wouldn't be easier.
- edanm 14y ago"I can almost guarantee that it would be easier to fix whatever it is you don't like about vim than to start from scratch." That's just not true. I'm a huge vim fan, I've customized my vim a ton, I have maybe 30 installed plugins. But when I open Sublime Text and type "ctrl-p" to go to another file, it just works plain better than any vim plugin can achieve. Vim is made to work on a terminal. Great for some people, lousy for people who want the vim model of text editing with a modern gui. A few specific things that you simply can't fix in vim: - Making pop-up boxes, a-la Sublime Text, that moves you to a new file. Simply cannot be implemented in a nice-looking way in vim. - Making some fonts smaller or bigger, to display extra information that isn't code. Simply impossible to do, because vim is a one-size font. This alone is a huge limitation. - Making a decent-looking code-folding system. The code folding in vim doesn't look good, and since you're limited to one font size and to only putting in characters, you're stuck with the very ugly way of doing things. I'm a huge fan of vim folding, and the way of controlling them is just amazing. Except for the way it looks, which is terrible. Now, these aren't just "I want my editor to be pretty" issues. A lot of these things are functionally important to get working faster on your code.
- zokier 14y ago> But when I open Sublime Text and type "ctrl-p" to go to another file, it just works plain better than any vim plugin can achieve. But vim is open source, you are not limited to only plugins. Nothing is impossible if you fork the actual codebase.
- johncoltrane 14y ago> "But when I open Sublime Text and type "ctrl-p" to go to another file, it just works plain better than any vim plugin can achieve." You are not talking about the same ST2 I've tried out. Mine was limited to files contained in "the project" (so none, if you just open a single file, not even nearby files) and the only way to open a a file outside of "the project" was to use the classic Ctrl+o. How "modern" that was! > "Now, these aren't just "I want my editor to be pretty" issues. A lot of these things are functionally important to get working faster on your code." But, somehow, all the issues in your list have something to do with looks and that's one of the most subjective subjects possible. RoundRects don't help anyone write better code faster: they help you feel better and more confident but nothing more. I'm actually a fan of minimalism and text-based interface and the "fixes" you want would be of no interest to me. > "- Making pop-up boxes, a-la Sublime Text, that moves you to a new file. Simply cannot be implemented in a nice-looking way in vim." I'd say that LustyExplorer looked quite good and now CtrlP both looks very good and does a lot more than ST2's Ctrl+P window. > "- Making some fonts smaller or bigger, to display extra information that isn't code. Simply impossible to do, because vim is a one-size font. This alone is a huge limitation." I fail to see how such a feature would make Vim or any editor better. > "- Making a decent-looking code-folding system. The code folding in vim doesn't look good, and since you're limited to one font size and to only putting in characters, you're stuck with the very ugly way of doing things. I'm a huge fan of vim folding, and the way of controlling them is just amazing. Except for the way it looks, which is terrible." Subjectivity again. How it looks is totally irrelevant: how it works is what matters. `za`, `zM`, `zR`, `zj` and friends are the important parts: add a nice gradient, a right-pointing shadowed arrow and rounded corners and you simply have the exact same feature… with a shiny look that suits your taste. Maybe not mine.