4 ms·
Would you ever use an editor without syntax highlighting? Of course not! Speak for yourself. I also don't care a lot about "intellisense" in editors. That's wh
by mhd 16y ago
Would you ever use an editor without syntax highlighting? Of course not!
Speak for yourself. I also don't care a lot about "intellisense" in editors. That's why I'm not too entranced by the advanced tab completion features that a lot of shells (bash, zsh, fish) offer. Most of the time I'm better off just typing, using the history (!!, ^) or writing small aliases, scripts or functions. And in that regard, all those "modern" shells still have a lot to learn from ksh93 (or even ksh88).
If I want advanced editor features in a shell, I can always use an advanced editor (i.e. use eshell).
- burgerbrain 16y agoYou realize that all modern shells have those features too right? I know I find zsh's up-line-or-search to be invaluable. I just type the first few letters of whatever command I want to run and have run before, press whatever key I happened to bind that to (I use the up arrow), and whammo, it's completed out to the last item in history that starts with what I typed out. Wack it again to get the one before it. The main draw of the "modern" shells is their completion, particularly history related completion. The function I use for it is just one of god-knows how many, and they can be customized to the extreme. If all you want is advanced editing features, just about every shell under the sun supports vi-mode (my preference) or firing up an editor with the contents of the current line in it's buffer. Just advanced editing isn't really the main attraction.
- mhd 16y agoSorry if that didn't come across clear enough. When I said that a lot of the current shells can learn a thing or two from ksh, I was talking about the scripting part. And there it's mostly POSIX/Bourne with a few things from ksh and some idiosyncratic new features. The rc shell from Plan 9 was an interesting approach, too. Zsh/bash/fish don't try to innovate in that area. The readline library (which is the basis for most of the interactive history features) is quite nice, but I'd much rather save me some repetition than make sure that the repetitive commands can be entered fast enough. I guess it all comes down to how repetitive your shell usage is. If you're very exploratory, i.e. use different paths, systems and command line options all the time, completion helps, just like it helps you navigate a huge mess of a class inheritance tree. If you find yourself able to factor out common tasks, scripting is a bit more helpful. And most of the time, I fall into the second camp, which is why I've never found fish all that attractive. Which is what I wanted to point out (although a bit too bluntly – curse my German nature!).