Live data from Hacker News

Bpython is a fancy interface to Python

bpython-interpreter.org

31–40 of 41 posts

Re: Bpython is a fancy interface to Python

#31
post #25
post #2

I see BPython has a list of alternative pretty interpreters listed on its page. iPython (that I know of) and DreamPie (that I don 't know of). http://bpython-interpreter.org/alternatives/ Can anyone say how they all compare to each other?

There aren't any comprehensive list that I know of which lists the features of each interpreter. as to bpython vs ipython, last tested it out, bpython still lacked a core feature that ipython has, which is a shell-style history. I can't mention how often I am thinking "hmmm, did'nt I write something like that before", and search backward to find something I wrote a half year ago, or say yesterday...

It always has, with the up arrow. Has a new word search (like ctrl+r) also. Not sure how long the hist is kept though.

Re: Bpython is a fancy interface to Python

#33
post #18

You can install bpython with a simple "pip install bpython". (This isn't immediately obvious from the website.)

I don't know if it's still like that, but last time I checked, I had to invoke python -m bpython.cli instead of just bpython to get autocompletion for packages in your load path. This project hasn't seen any commits since last March. If anyone is up for it, it can really use some help. It's a very promising project and I like it a lot, if only it didn't have those couple of annoyances... Too bad I have no time to con…

Hi there, I'm the author of bpython.

First thing's first: I'm not sure when you last tried bpython, but simply running "bpython" will provide import completion for your pwd.

As for there having been no commits since last March, well I'm not sure where you found that information - please see commit history on bitbucket page: https://bitbucket.org/bobf/bpython/commits

I started work on bpython about 5 years ago. These days I essentially don't do any work for it, but there are a couple of people who still take care of issues when they have time. It seems most people are pretty much satisfied with the project. If they aren't, I encourage them to either look at the open issues and try to close some of them, or try an alternative like IPython or DreamPie (IPython specifically just got a huge financial grant for development costs so it should be seeing a lot of work being done on it - should be very interesting to see what those guys do).

Either way, it just seemed a little odd to me to see bpython described as a "promising project" (after citing two falsehoods about the project) when I personally consider bpython as "complete" to a certain extent (and for any sane meaning of the word in software). Sure there are things I'd like to add, but bpython does exactly what I want and I rarely feel that there is something missing.

For those that disagree, either bpython is not for you (there are some great alternatives), or it is time to fork the project and send us your pull requests - we'll be very grateful for them. :)

Thanks,

Re: Bpython is a fancy interface to Python

#34
post #25

Earlier quoted context omitted.

There aren't any comprehensive list that I know of which lists the features of each interpreter. as to bpython vs ipython, last tested it out, bpython still lacked a core feature that ipython has, which is a shell-style history. I can't mention how often I am thinking "hmmm, did'nt I write something like that before", and search backward to find something I wrote a half year ago, or say yesterday...

It always has, with the up arrow. Has a new word search (like ctrl+r) also. Not sure how long the hist is kept though.

You can configure it to store on disk (I believe this is the default).

Why do people keep saying "last time I checked bpython didn't do X" when I can't even remember a time when we didn't offer this feature ? :)

Re: Bpython is a fancy interface to Python

#35
post #11

This is a great project that's been posted here on HN a couple of times already. I like this project a lot but I can't use it on my Mac because it swallows all the libedit/readline keyboard shortcuts I've come to expect from any REPL. Shame.

This is one thing I actually have missed - if I'd known about all the nice readline key commands when I first started writing bpython I would've definitely included them. You're welcome to implement this yourself ! Otherwise, I guess it's just a matter of waiting until somebody else has enough time and enthusiasm to do it. Maybe I'll even do it myself one day ...

Re: Bpython is a fancy interface to Python

#36

Earlier quoted context omitted.

I can't say I've ever experienced this. I'll certainly try to reproduce when I get home. Also bpython has a pager (F9), so it's definitely fine for long output. The interpreter also will write all output to stdout on quit, so you can do what you'd like then too. I can't say I ever use the vanilla interpreter anymore other than when testing a bpython bug.

I just got this when doing print 10xx10000. Sometimes it crashes the first time I resize the terminal, sometimes I need to resize it a few times quickly. If you send me a note I can email you the error I get when it crashes.

I can vouch for us appreciating a bug report. :)

I assume you're using an up-to-date version of bpython ? I remember dealing with this kind of stuff a lot in the past (curses is terrible at this kind of thing) and I had considered it fixed, so please do send us bug reports if possible. (https://bitbucket.org/bobf/bpython/issues?status=new&sta...)

Re: Bpython is a fancy interface to Python

#37

Quick warning: Bpython crashes if you need to resize the terminal on OS X. And because it truncates the output to what can fit on the screen, it's essentially unusable for things with a long output. (Because if you need to scroll or resize the window to see the full output, it will crash.) It's amazingly good for most things, but occasionally I need to switch back to the default interpreter.

I can't say I've ever experienced this. I'll certainly try to reproduce when I get home. Also bpython has a pager (F9), so it's definitely fine for long output. The interpreter also will write all output to stdout on quit, so you can do what you'd like then too. I can't say I ever use the vanilla interpreter anymore other than when testing a bpython bug.

Thanks for taking the time to give this info out - looks like you know more about bpython than me. ;)

Re: Bpython is a fancy interface to Python

#38
post #12

Bpython is good, but IPython with %edit and knowledge of a command line text editor has changed my workflow[1]. I wish more repls had this ability. [1]: Maybe you can do it Bpython and I'm just not aware.

Hi there. It looks like IPython is definitely the better choice for you - I never wanted to add IDE-like features to bpython; I just wanted it to work the same as the regular shell but with a bunch of nice features on top. If you want something more complex, or something with more specialisation is certain areas then IPython is probably the better choice. Especially with the recent funding they've received I expect it will just get better and better. :)

Re: Bpython is a fancy interface to Python

#40

I'm finding it extremely buggy. For example - pressing F8 when no code has been entered yet causes a TypeError. I will post this on the mailing list but considering it's an old (~4yrs?) project I'm surprised such issues haven't been fixed.

That's a bug in 0.12 that slipped in before the release. It's fixed in the hg mercurial and there will be a bugfix release soon.

great! I'm using pip to install.
Post reply on HN