Some time ago I found xonsh which is a python-based shell. It had really good multiline support, and I am searching for a shell with sameish multiline support as xonsh. Fish shell also has good multiline support, it is around the same level, but it is not posix compatible. I want a shell that has that kind of level of multiline, but zsh (bash is also fine) compatible.
Does anyone know of one?
edit: based on the replies, I get this is unclear. My problem with zsh is that if i press enter and it starts a new line, I can’t get back to the prevous line, because a new prompt is started. In fish this is possible, all lines are one prompt. But, fish is not posix compatible. So, I guess I want a posix-compatible shell with fish-like lines (multiple line) editing. I wanted zsh support to keep using my custom oh-my-zsh prompt, but remaking it for a new shell is not a big problem. Sorry for being unclear.
Your use of “multiline” is not obvious to me.
Most multiline features are available, such as having multiple commands between
if
,elsif
,else
andfi
is definitely possible (ditto similar constructs), and it’s possible to extend commands over an explicit carriage return if the end of line is quoted with a backslash.If you’re talking about having Python-like whitespace-only indentation to specify the level of code, I’m not sure there is a shell like that, but if this is what you mean and you confirm, someone who knows better might be able to point us in that direction.
If you’re seeking multiline comments, unfortunately most shells don’t have this, but there are definitely ways to fool the shell into skipping portions of text. You would be better off with an editor that can insert a # at the beginning of multiple lines however, since that will guarantee that the shell won’t accidentally try to process something in that comment block.
ah, I updated the post to be clearer :).
Why not xonsh?
because it is a python shell, not a posix shell. and, my python broke, and I don’t know how to solve that (but I am not lokking for help with that :)
What behavior are you looking for? Could Zsh with some configuration work?
I updated my post to be clearer.
Some tweaks to zsh maybe?
https://gist.github.com/emmanuelnk/d7ceba1f753b3e630f66abbffac5a6ae
Erm… fish-like multiline editing? This does everything but that… but still thanks, as the syntax hylighting is something I wanted.