3 ms·
While this is going to seem (and probably is) a bit inflammatory, I don't think any article will ever make a convincing Why Editor X Is Better argument for peop
by chipotle_coyote 11y ago
While this is going to seem (and probably is) a bit inflammatory, I don't think any article will ever make a convincing Why Editor X Is Better argument for people who already use Editor Y.
In practice, there's a functionality bar for editors to clear; the likelihood that you're going to gain massive productivity improvements by switching between editors that are both past that bar is honestly pretty low. And that bar is likely lower than most people think. Reasonable syntax highlighting, good regex support in search/replace, some kind of "project" support, some kind of scriptability, and an ability to set basic editor configuration variables on a per language basis (e,g., 2-space tabs for YAML, 4-space for Python)... once you hit a certain point, then you get into progressively more dubious arguments. "I can change the contents between these parentheses on line 9 by simply typing '9Gf(ci(' while you're clicking in the line with your mouse like an animal!" Good for you, ace, but you're not really saving the time you think you are. (Also, you can perform a rough equivalent of "select or delete the stuff between these parentheses" with a single command in BBEdit, Sublime Text, and Emacs, and I'm sure in many other editors.)
I'm not suggesting all editors are absolutely fungible past a certain point -- there's solid reasons you may prefer one over the other -- but once you get really good with a given editor, "modality is awesome" and "everything in my editor is actually a Lisp command" shouldn't be particularly convincing arguments. Generally speaking, you probably have better things to do with your time than figure out how to replicate your favorite Editor X power moves in Editor Y. Don't you?
- obsurveyor 11y agoBut can you repeat it in a slightly different place? That's where vim typically beats other editors for me. Every editor can do a one-off in some way. It's when you can repeat them in different contexts or quickly adapt them to slightly different ones. vim gives you tools right up front to do this quickly and accurately instead of doing repetitive mouse gestures or filling out dialogs.
- chipotle_coyote 11y agoI'm not sure that my interpretation of this is quite what you mean; most editor operations I do day to day, at least, aren't particularly context-sensitive. The balance command in BBEdit that I referred to above, for instance, just selects whatever's in between the closest pair of braces, brackets or parens, and if you keep hitting it, it expands the selection outward. There's not much I can think of that is context-sensitive other than functions relating to the language you're editing, and I can't think of any "class A" editors -- Vim, Emacs, Sublime, TextMate, BBEdit, etc. -- that seem way below (or way above) the median in this regard. The debate about mouse-vs.-keyboard will probably be argued long after nobody's actually using either mice or keyboards. Personally I've found that the farther you need to move the cursor the more likely it is that using a pointing device for at least part of the operation will prove faster, and AFAIK most studies done on this going back 30+ years corroborate that, but it doesn't "feel" faster to us. (That's not directly relevant to editors, since Vim and Emacs both support mice just fine, even if their diehard fans consider that heretical.)