Show me an environment where I can interact with my system programmatically, where I can compose together arbitrary tools, and which will never, ever, ever break on me, and I'll switch! My experience with graphical environments has been that they rarely compose, often break, and constantly make arbitrary changes that break my workflow. So every time I try something else I end up coming back to the terminal.
But I agree that terminal environments have serious shortcomings. I think it's a real shame we haven't created anything else that does what the terminal does, and I think it's mostly for lack of trying.
You're replying to someone that says POSIX shells are holding people back, not that the terminal is a bad idea, there are many alternative shells which offer benefits over POSIX shells. fish-shell has everything you want from an interactive shell included, xonsh is a mix Python shell, nushell and elvish are adding types and other things to shell.
The VT protocols that all shells have to confirm with are pretty dated and I'd love to throw them off the roof for something less stateful and with multiple font sizes but there's no arguing that text based interfaces are good.
I'm a nushell user but like... job control in nushell is pretty miserable still unfortunately.
Nushell is definitely my fav of the set (xonsh is a neat experiment but ultimately is missing pipeline programming that nushell gives....), and I write personal shell scripts for myself mostly in nu.
Aside: for shell scripts, my preference is something like nu, then python + stdlib, giving me argparser etc, then just zsh/bash/whatever. Seriously annoying how POSIX shells do not give good argument parsing, tho I get it's a hard problem
Now I'm tempted to try xonsh. It looks like it support the amount of bash that I know, and everything else I can just do in Python. (TBH, the things that I would need Python for are obscure enough in bash that I wouldn't otherwise write them myself.)
> I think it's a real shame we haven't created anything else that does what the terminal does, and I think it's mostly for lack of trying
I'd rather just take terminals a step forward, which I agree hasn't happened due to a lack of trying. But the people who aren't trying are the people who are instead tricking out zsh with plugins. I'm a nushell fan myself but my point here is not
> try nushell
but rather,
> be willing to try things that aren't backwards compatible with `sh`
If more people relaxed on that sticking point, we could actually benefit from the excellent post-POSIX work that has been done. As it is, people are reluctant to try new shells for some reason.
Show me an environment where I can interact with my system programmatically, where I can compose together arbitrary tools, and which will never, ever, ever break on me, and I'll switch! My experience with graphical environments has been that they rarely compose, often break, and constantly make arbitrary changes that break my workflow. So every time I try something else I end up coming back to the terminal.
But I agree that terminal environments have serious shortcomings. I think it's a real shame we haven't created anything else that does what the terminal does, and I think it's mostly for lack of trying.
https://fishshell.com/ https://xon.sh/ https://www.nushell.sh/ https://elv.sh/
You're replying to someone that says POSIX shells are holding people back, not that the terminal is a bad idea, there are many alternative shells which offer benefits over POSIX shells. fish-shell has everything you want from an interactive shell included, xonsh is a mix Python shell, nushell and elvish are adding types and other things to shell.
The VT protocols that all shells have to confirm with are pretty dated and I'd love to throw them off the roof for something less stateful and with multiple font sizes but there's no arguing that text based interfaces are good.
I'm a nushell user but like... job control in nushell is pretty miserable still unfortunately.
Nushell is definitely my fav of the set (xonsh is a neat experiment but ultimately is missing pipeline programming that nushell gives....), and I write personal shell scripts for myself mostly in nu.
Aside: for shell scripts, my preference is something like nu, then python + stdlib, giving me argparser etc, then just zsh/bash/whatever. Seriously annoying how POSIX shells do not give good argument parsing, tho I get it's a hard problem
Now I'm tempted to try xonsh. It looks like it support the amount of bash that I know, and everything else I can just do in Python. (TBH, the things that I would need Python for are obscure enough in bash that I wouldn't otherwise write them myself.)
zsh isn't strictly POSIX compliant either but this is fair and I should've read that comment a bit deeper.
> I think it's a real shame we haven't created anything else that does what the terminal does, and I think it's mostly for lack of trying
I'd rather just take terminals a step forward, which I agree hasn't happened due to a lack of trying. But the people who aren't trying are the people who are instead tricking out zsh with plugins. I'm a nushell fan myself but my point here is not
> try nushell
but rather,
> be willing to try things that aren't backwards compatible with `sh`
If more people relaxed on that sticking point, we could actually benefit from the excellent post-POSIX work that has been done. As it is, people are reluctant to try new shells for some reason.
Nushell. Still a terminal experience. But not a POSIX one. https://www.nushell.sh/
Colorful outputs and elaborately decorated error messages are cool but maybe it shouldn't deviate that far from POSIX shells.
1 reply →