§ Fish, the modern shell

We should have had it long time ago. Fish has quite advanced tab-completion and autosuggestion, making you daily work so much easier and more readable. It also involves zero-configuration (though you can customise a lot if you want to). I suggest you check the website, it highlights all the major features with appreciable humour. And I can tell you that the autosuggestion is (as much as I don’t like this word) smart - it seems to keep a history of what you do with what and usually is more helpful than anticipated.

What is worth noting here (and is not mentioned on the landing page) is that fish provides a nice in-line editor for functions, but its syntax is not compatible with bash (sh). If you ask me that’s purely a blessing. Sh-derived syntax has a lot of cruft and weird stuff, that has accumulated over decades. Fish is clean and easy to understand, and indeed writing functions is a joy. But the downside is that you probably don’t want to set it as your login shell - you may find random stuff fail due to the syntax errors. I use tmux for my sessions anyway, so I just did set-option -g default-shell "/usr/bin/fish" and I’m very happy.

History autosuggestion and filename completion.

Manpages completion and built-in function editor.

comments powered by Disqus
Last update: 2012-12-06. » LINK » TXT » ATOM. Go to the top. Licence CC-BY-NC-SA.
If you find this interesting go ahead and leave a comment or add a star.
Any and all feedback is appreciated!