Live data from Hacker News

Ergonomica – A cross-platform shell written in Python

github.com

11–20 of 43 posts

Re: Ergonomica – A cross-platform shell written in Python

#11

Earlier quoted context omitted.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

I usually use iPython shell and prefix commands with '!' so it works as a shell command. It's pretty handy if you always have Python interpreter open. Not sure if this is what you want though.

It's a nice idea, I haven't thought of doing so. Maybe if I change the ipython prompt to something more fancy it can be a nice solution.

Re: Ergonomica – A cross-platform shell written in Python

#12

Cool project. How much does it converge / diverge w/ Xonsh ( http://xon.sh/ )? Besides the obvious fact that Xonsh is (from what I can tell at first glance) a Python-like shell scripting language, and Ergo a bash-like shell language written in Python.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

I'm a Zsh user who tried xon.sh for 3 months now and reverted to Zsh just a few days ago. Performance. I easily have ~20 shell instances running (under tmux), and having each one of them run python simply slowed down my computer. I got back to Zsh and while I miss some of xon.sh features (most notable one is calculating things just by typing "1+1"), everything feels so much snappier now.

Re: Ergonomica – A cross-platform shell written in Python

#13

Cool project. How much does it converge / diverge w/ Xonsh ( http://xon.sh/ )? Besides the obvious fact that Xonsh is (from what I can tell at first glance) a Python-like shell scripting language, and Ergo a bash-like shell language written in Python.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

I've been using it for a few months on Windows - mostly because I wanted a bash-like shell on Windows.

No problems so far. Quite happy with it. The ability to do custom stuff in Python is an obvious benefit.

On Linux I use zsh. The only reason I do not replace it with xonsh is that I don't have the time to do so. My zsh setup is fairly plain - I could never learn advanced bash/zsh shell usage - way too magical for me.

If I had the time, I'd probably just switch my Linux prompt to xonsh. xonsh is much easier to learn than zsh.

I cannot really comment on the performance. Have not noticed issues so far, but frankly, I do not need a high performing shell.

As for that blog post, he made some good points, but there was a lot of pettiness over his contributions that were rejected. I know many people don't like filter, but he has to realize that many Python programmers do like filter - including myself.

Re: Ergonomica – A cross-platform shell written in Python

#14

Cool project. How much does it converge / diverge w/ Xonsh ( http://xon.sh/ )? Besides the obvious fact that Xonsh is (from what I can tell at first glance) a Python-like shell scripting language, and Ergo a bash-like shell language written in Python.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

To be honest, the author of that blog post seems like he's kinda being a bit of a dick.

> I submitted several lint cleanup pull requests. Getting each one accepted was a challenge. Primarily because the project owner isn’t really interested in having lint clean code.

Having read through the PRs he filed[1], the "challenge" the author faced was to do with his needlessly changing things around to match Google style guide, which the project doesn't actually observe. (There's a lot of comments of the form "as a former Google employee, my shit doesn't stink" in there, as it happens.) In fact, most of them were merged straight away except his last one[2], where he'd changed existing code away from the project's preferred style, been asked not to, then threw a tanty and closed the issue.

> for d in filter(os.path.isdir, path):

This and the other example he gives are both from that last issue, which leads me to think this blog post was part of the aforementioned tanty. (It was published on the same day, too.) Let's be honest, if the worst issue you can find with a codebase is that it uses filter() instead of a generator expression, it's probably a pretty good codebase.

> All you have to do is Google “python map filter deprecated”.

Yes, do, and you'll find they aren't. The BDFL doesn't like them, but that's not the same thing.

> I noticed that the directions for running the unit tests did not test the code in my local git repository — it tested the code installed by pip. ... Anthony told me he wrote the directions to specifically test the installed code, not the code in his git repository and he didn’t understand why anyone would test their uncommitted code.

I can't find the issue where he raises this, or where the maintainer says that. Perhaps the author isn't familiar with `pip install -e`? All of the other issues in that first 'P.S.' paragraph appear to be fixed, some by him even.

tl;dr This doesn't seem like a damning criticism of fundamental project management issues so much as a tantrum being thrown by someone because they couldn't walk in to a project and impose their stylistic preferences on everyone else.

[1]: https://github.com/xonsh/xonsh/search?utf8=%E2%9C%93&q=is%3A... [2]: https://github.com/xonsh/xonsh/pull/512

Re: Ergonomica – A cross-platform shell written in Python

#15
post #12

Earlier quoted context omitted.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

I'm a Zsh user who tried xon.sh for 3 months now and reverted to Zsh just a few days ago. Performance. I easily have ~20 shell instances running (under tmux), and having each one of them run python simply slowed down my computer. I got back to Zsh and while I miss some of xon.sh features (most notable one is calculating things just by typing "1+1"), everything feels so much snappier now.

Except for the performance problem (I'll probably not be concerned with my workflow), what are the pros/cons of xonsh for you? Some of my concerns are:

- Does having direct access to Python really make your work in command line faster/easier?

- Is there some paradigms that are more difficult to express in xonsh (redirect, pipes, …)

- Did you happen to encounter bugs, or made mistakes without intent to do it (like overwriting/removing files, …) ?

In other words, without the performance problem, would you continue to use xonsh and recommend it?

Re: Ergonomica – A cross-platform shell written in Python

#16
post #5

Watching the screen share it's apparent they don't use efficient terminal movements. Ctrl-A/E,end of line beginning of line, and Alt-B/F, move forward and backward by word are your friend. Lots of innocent keyboards abused for no reason.

Screen share is so irritating with author continuing deleting phrases that I lost interest ASAP.

Re: Ergonomica – A cross-platform shell written in Python

#17

Cool project. How much does it converge / diverge w/ Xonsh ( http://xon.sh/ )? Besides the obvious fact that Xonsh is (from what I can tell at first glance) a Python-like shell scripting language, and Ergo a bash-like shell language written in Python.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

Existing alternative is obviously PowerShell. With 10+ years in production its obvious choice in Windows and it gets better every day on Unix like systems.

All those alternatives that use some mainstream language not designed originally as a shell language (xonsh [python], rash [ruby], this [python], rhino [javascript], whatever) so far didn't hold water - the shell is not an afterthought, it needs upfront design and its own language.

Re: Ergonomica – A cross-platform shell written in Python

#18

Earlier quoted context omitted.

I would love to drop bash/zsh for some other python-based shell like xonsh. I tried it already a few times, and having access to the python language and built-ins right from the prompt is amazing. The way the found to mix both command prompt and python syntax seems really smart. Nevertheless, the effort to update all my (quite extensive) zsh setup, as well as the cognitive effort to re-educate my brain, is huge. So I…

To be honest, the author of that blog post seems like he's kinda being a bit of a dick. > I submitted several lint cleanup pull requests. Getting each one accepted was a challenge. Primarily because the project owner isn’t really interested in having lint clean code. Having read through the PRs he filed[1], the "challenge" the author faced was to do with his needlessly changing things around to match Google style gui…

Thanks. Back in the time I read it I also tried to look at issues to verify the criticism, but I was not experienced enough to fully understand all the topics involved in the discussions.

Re: Ergonomica – A cross-platform shell written in Python

#20
post #5

Watching the screen share it's apparent they don't use efficient terminal movements. Ctrl-A/E,end of line beginning of line, and Alt-B/F, move forward and backward by word are your friend. Lots of innocent keyboards abused for no reason.

That was the first thing I noticed too. No CTRL+U? It looks like a cool project, but I'll hold off until there are better navigation options (unless there already are, and the video producer simply wasn't using them).
Post reply on HN