7 ms·
Fish 2.0 shell beta
- reledi 14y agoIf I switch from bash to fish, will anything break (e.g. aliases, scripts, keyboard shortcuts, etc.)?
- Osmium 14y agoYes -- fish is not bash, so anything defined in your .bash_profile etc. will break, though there's usually an easy alternative way to do it in fish. Scripts should be fine though, since they usually explicitly call bash when you run them, so will still run using bash. I switched to fish about six months ago and have been very happy with it. I spend a lot of my working day in the command line, though not doing anything exotic, and find it very pleasant to use.
- deleted 14y ago[deleted]
- Thrall 14y agoIt wouldn't read your .bash_profile, because it cannot. Any variables that are set by your .bash_profile will therefore not be set, and anything that depends on them being set may break.
- adwf 14y agoScripts will still work as long as they have the standard #!/bin/bash at the top. Aliases - in .bashrc - unfortunately will need to be replaced by Fish functions; defined in the "~/.config/fish/config.fish" file by default. The only real thing that keeps tripping me up with Fish is that it doesn't support shortcuts like "!$ ". I keep on typing that in, but due to the nature of Fish, it can't (or won't) recognise it. But the excellent history functionality does make up for this a fair bit. Having said that, Fish is by far the best shell I've tried. I gave zsh a go for about half a year and got fed up with the autocompletion and general slowness. As a shell, Fish just behaves quickly and fairly naturally, with few exceptions (!$ ...). I highly recommend it as an improvement over bash.
- kbd 14y ago> I keep on typing that in, but due to the nature of Fish, it can't (or won't) recognise it. But the excellent history functionality does make up for this a fair bit. I was interested in this comment so I looked into the documentation to find out why this is. Here's a link to the FAQ for anyone else interested: http://ridiculousfish.com/shell/user_doc/html/faq.html#faq-history http://ridiculousfish.com/shell/user_doc/html/faq.html#faq-h... (last question)
- nemo1618 14y agothat works just as well I guess. But what if I want to make an alias for "sudo the last command"?
- kbd 14y agohttps://github.com/fish-shell/fish-shell/issues/288#issuecomment-11233013 https://github.com/fish-shell/fish-shell/issues/288#issuecom... has some options.
- pooriaazimi 14y agoWonderful! I made a slight variation (and also posted it there): function .runsudo --description 'Run current command line as root' set cursor_pos (echo (commandline -C) + 5 | bc) commandline -C 0 commandline -i 'sudo ' commandline -C "$cursor_pos" end bind \es ".runsudo" Instead of outright `execute`ing the command, the above would save the cursor position. You can (theoretically) bind `\cs` so control-s adds the sudo (instead of option-s), but I couldn't get it to work.
- deleted 14y ago[deleted]
- GhotiFish 14y agoI'm a little sore that the FAQ Listed that as an alternative. That was how I did it in bash before I realized I could do "sudo !!" which was waaaaay more convenient. It's a step backwards. Which I'm fine with, as long as you step forward again, in some way.
- qznc 14y agoFish is not a POSIX shell and does not try to be one. In contrast, bash, zsh, and others are supersets of the original sh and backwards-compatible. Fish is not. For example the exit code of the previous command, instead of POSIX $?, you can get it as $status.
- dmit 14y agoLook out for errors with third-party applications that shell out and expect to find bash or something compatible. I had to explicitly set shell=/bin/bash in .vimrc before any plugin initialization in order to avoid breakage after changing my login shell to fish.
- Symmetry 14y agoI've found that leaving your login shell as bash but making fish the default executable for any terminal emulators you use will pretty much prevent any breakage.
- emdagon 14y agoThis looks awesome!, I'll definitely try it! (the color configuration approach is very clever)
- mixmastamyk 14y agoA way to move to fish gradually is to use it on your local machine (interactively) but still write scripts in bash and stick to bash on remote hosts. This helps keep you in sync with others. One drawback is keeping your aliases in sync, but once done it is not much work.
- thomasjames 14y agoThis is what would be keeping be back I think. I spent too much of my day in remote shells on systems where I do not have root. This shell looks really cool, but I am afraid that I would come to depend on its features and thus lose my bashfu skills in the process.
- orefalo 14y agoWhere is the feature list? do you have screenshots? I know it's hard with a CLI, but still if it's colorful better show the baby...
- scotth 14y agohttp://ridiculousfish.com/shell/index.html http://ridiculousfish.com/shell/index.html
- sciurus 14y agoAnyone looking at fish may be interested in the design document, "a description of the design principles that have been used to design fish". The principles are The law of orthogonality The law of minimalism Configurability is the root of all evil The law of user focus The law of discoverability http://ridiculousfish.com/shell/user_doc/html/design.html http://ridiculousfish.com/shell/user_doc/html/design.html
- ash 14y ago"The law of minimalism" was recently changed to "law of responsiveness": https://github.com/fish-shell/fish-shell/issues/612 https://github.com/fish-shell/fish-shell/issues/612
- omaranto 14y agoIs this a fork of the other shell named fish? I use a shell also named fish with the same syntax as this one, but whose development stopped a few years ago.
- mixmastamyk 14y agoYes, the one packaged in Linux distro's is 1.23.X. Last I heard on the mailing list, the original author was jazzed someone new picked it up.
- GhotiFish 14y agoSomething about this shell interests me. I just CANT put my finger on it. edit: Jokes aside, this is a nice shell, there are no videos of youtube for it though, I should go through the doc's and record one. edit2: OK I just tried playing around with the shell. It's got some really nice features, but then I said to myself "hey, lets try doing some work with this, I'd like to get rid of fedora 18's neutered package management GUI and replace it with yumex." ok easy enough, whoops I forgot to use sudo. sudo !! ghoti@localhost ~/Videos> sudo !! [sudo] password for ghoti: sudo: !!: command not found ghoti@localhost ~/Videos [1]> oh... ok... docs? here it is, right at the very end of the documentation. "Because history substitution is an awkward interface that was invented before interactive line editing was even possible. Fish drops it in favor of perfecting the interactive history recall interface. Switching requires a small change of habits: if you want to modify an old line/word, first recall it, then edit. E.g. don't type "sudo !!" - first press Up, then Home, then type "sudo "." .... WHAT?! ridiculousFish, you arn't kidding around with that name are you?
- dfc 14y agoIs the joke that your username contains fish? For the life of me I can't figure out what the joke is and if its the username bit its a poor joke.
- GhotiFish 14y agoWhen I made the comment. I was looking at this line: For an overview of the features in *fishfish*, see the Which I took as the official name of the shell, before I later realized it was some kind of wierd typo. my name is pronounced fish-fish. I was drawing attention to this https://en.wikipedia.org/wiki/Ghoti https://en.wikipedia.org/wiki/Ghoti . I hate English, you see.
- eitland 14y agoI don't hate English. In fact they got a whole lot right after they branched off. Just removing some of the stupidity from Scandinavian, German, French and other words makes a whole lot of difference (Seriously: Genders for words, who came up with that? ; ) The spelling otoh: Yes, that one is broken.
- X4 14y agoIt was so much fancier than ZSH which I've been using pretty throughly for years, but I wasn't impressed until I used a oh-my-fish like "framework". Now with a bump to ><<<+> 2.0 I'll give it a go again! https://github.com/bpinto/oh-my-fish https://github.com/bpinto/oh-my-fish
- X4 14y agoCan't find 2.0 in the Gentoo repos.. anyone like to share his ebuild?
- siteshwar 14y agohttp://download.opensuse.org/repositories/home:/siteshwar/CentOS_CentOS-6/ http://download.opensuse.org/repositories/home:/siteshwar/Ce... For anyone else having problems finding native packages for Linux, I am building packages for several Linux distros at http://download.opensuse.org/repositories/home:/siteshwar/ http://download.opensuse.org/repositories/home:/siteshwar/
- ridiculous_fish 14y agoLead dev here. Reading the comments is thrilling and makes me even more excited for the official fish 2.0 release, which will be in a few weeks. For me, the as-you-type suggestions and syntax highlighting make fish feel active and responsive, providing instant feedback. I've also had a great response from casual command line users, who love that features like git tab completions just work, with nothing to configure. It's going to be a fantastic option for command line users. Meanwhile the action is on the github page at http://github.com/fish-shell/fish-shell/ http://github.com/fish-shell/fish-shell/
- StavrosK 14y agoMan, I've been using fish as my primary shell for years now, and I just love it. I'm terribly excited about this release. Are there going to be debs for x86/amd64, or maybe even a ppa?
- izietto 14y agofish 2 pacakges (including debs) are already available: http://download.opensuse.org/repositories/home:/siteshwar/ http://download.opensuse.org/repositories/home:/siteshwar/ but I would prefer to have an APT conf line too :-)
- StavrosK 14y agoFantastic, thank you. Are these legit/official?
- qznc 14y agoI would like to have UndistractMe [0] for fish. However, I am not sure if it is possible to hook into or wrap command execution. You know a command has finished, when a new prompt is shown. However, how do you start the clock? Tried posting this to the fish mailinglist, but moderation pending for weeks now. [0] http://mumak.net/undistract-me/ http://mumak.net/undistract-me/
- qznc 14y agoCreated an issue https://github.com/fish-shell/fish-shell/issues/672 https://github.com/fish-shell/fish-shell/issues/672
- apricot13 14y agoDon't you mean "Fish 2.0 shell betta"?
- sdfjkl 14y agoHuh? Oh. "Betta (pron.: /ˈbɛtə/) is a large genus of small, often colorful, freshwater ray-finned fishes"
- srijan4 14y agoDoes anyone know how to initially import zsh's history into fish?
- oblio 14y agoDoes it work with Cygwin?
- sdfjkl 14y agoI've been using Fish for close to a year now and I can't go back. It's subtly making my shell better without getting in the way. You don't notice it very much, until you have to use a machine without it - at which point you will miss it sorely.
- naranja 14y agoI once tried fish 1 year ago by "accidient". Got instantly addicted. Why do other shells have to be so akward? It totaly clear to me, that bash & co frightens people from using CLI. Instantly switched to fish. Never looked back.