Live data from Hacker News

Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

news.ycombinator.com

61–70 of 146 posts

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#61
I've used bash/zsh for 20 years and I've been using nushell daily for work and personal projects since I tried it 6 months ago. It's fantastic -- you can do some really novel things that you would never normally do in a shell. But you do have to be prepared to invest some time in learning to do things differently from POSIX shells. The Discord community is very helpful.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#62
I use elvish[0] and have been using it as my main shell for the last 2 years. I like the focus on datastructures and flows (such as exceptions).

It is mature enough for me, and I have found that the nuance of having non-posix compatibility in some things doesn't annoy me as much as when I hit a problem that is too small to write python and to complex for bash.

Community is great, and I always find the answer to my problems in either the chat or other code samples.

[0] Elvish webpage: https://elv.sh/

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#63

Earlier quoted context omitted.

You can easily get bash to do that by adding these lines to your .inputrc file. "\e[A": history-search-backward "\e[B": history-search-forward "\e[C": forward-char "\e[D": backward-char

Not wrong, but fish is so nice because it just works without any configuration. Sane defaults are a blessing. I just checked and the only things I have configured are `set fish_greeting` (i.e. empty) and some paths... Edit: Also, I don't know how, but the fish completion is magic. It seems to remember which commands I use often in which folders and in which order. I'm not sure if that's how it's implemented. Sure fee…

> It seems to remember which commands I use often in which folders and in which order. I'm not sure if that's how it's implemented. Sure feels that way though.

Check ~/.local/share/fish/fish_history!

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#64
post #6

I decided last year to bite the bullet and learn Powershell. I think I will no longer have to wonder if there is a better option anymore.

What makes it good?

1. Piping object instead of string. This is what Powershell inspire other new generation shells.

2. .NET integration

3. Maintained by a large company. Extensively used in commercial.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#66
In the mid-90s, I used Byron Rakitzis' implementation of Plan 9's rc shell. I used it at work on SunOS 4.x. It was most excellent when I was able to have a meticulously-arranged, bespoke environment of startup and utility scripts around it. The scripting/programming language it incorporates is elegant, and simple, yet powerful, just like a utopian sort of environment envisioned by the Plan 9/Bell Labs folks.

Chris Siebenmann still uses rc, to the best of my knowledge. https://utcc.utoronto.ca/~cks/space/blog/unix/WhyISwitchedTo... He's not a poster to HN, AFAIK, but his blog is frequently featured here. I'm not sure whether he's amenable to sharing his configuration and utility scripts, but if you're at all interested, it's worth asking him, I would suppose.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#67
post #60

I use `fish` as my main shell. It's closer to POSIX than eshell or oil, but it's definitely not POSIX. Personally, the main thing I like about it is that I can't copy paste bash commands. It forces me to read and understand and then convert. It also has some quality of life stuff I really like. I think next time I'm just going to go back to ZSH though as I feel I have learnt enough from the experience of using it tha…

It's gradually got more bash compatibility, with things like X=Y run-command, &&/|| as aliases for and/or, $() expansion, changes to * to match more items. I don't think it's impossible that a future edition of fish starts to support e.g. export or a subset of bash conditionals.

I'm fairly sure export is already supported, but I could be missing something.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#68

In the mid-90s, I used Byron Rakitzis' implementation of Plan 9's rc shell. I used it at work on SunOS 4.x. It was most excellent when I was able to have a meticulously-arranged, bespoke environment of startup and utility scripts around it. The scripting/programming language it incorporates is elegant, and simple, yet powerful, just like a utopian sort of environment envisioned by the Plan 9/Bell Labs folks. Chris Si…

I used rc for my utility scripts in the past, but an incompatibility between two different rc implementations caused one of my scripts to delete all my files instead of the folder that I wanted to delete. Apparently the plan9port version uses a different parser from the Plan 9 version, and is also incompatible with rakitzis' version.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#69
I use yash personally (https://yash.osdn.jp/), but I'm not sure if that counts as 'alternative' since it's POSIX-compliant. It's small, interactivity-friendly, and POSIX compliant all at the same time, which is something that other shells can't match.

Re: Ask HN: Are alternative (oil, nu, etc.) shells usable as daily drivers?

#70
I've been using nushell for the past year, and I love it.

For a while I kept bash as my login shell and had nu as my default command in tmux. This had the advantage of allowing a bunch of environment setup to run in bash and get inherited, which allowed my overall setup to be more vanilla (and also nushell doesn't have any kind of job control, so something like tmux is probably a must).

About two months ago I promoted nushell to my login shell. In hindsight that was probably more trouble than it's worth, but I have no intention of changing back.

I now keep a very minimal bash config (~10 lines total) for when I inevitably need to shell into it for some reason. That doesn't happen very often, though — a quick look at my bash history shows that I'm mostly either running stuff interactively which assumes bash, or using it as a repl while working on scripts.

I wouldn't recommend nushell to anyone without a decent background wrangling posix shells, because that's not going anywhere. I've had to reverse engineer a bunch of shell integrations for things like package and version managers, most of which assume bash/zsh/fish.

I don't resent any of that work, because I'm in my shell all day, and the expressive power of nushell is so far ahead of other shells for the kinds of tasks that I'm doing in that environment. I won't try to convince anyone of this, since the question was about suitability for daily use. If you're into it, you're into it.

I'll just add that nushell in particular rewards daily use, because as a language for writing your own custom commands, it has a way of quickly building momentum once you get going.

Post reply on HN