+1 (from bpython's author)
They just got a huge funding grant so IPython is definitely one to watch.
HN user
+1 (from bpython's author)
They just got a huge funding grant so IPython is definitely one to watch.
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. :)
Thanks for taking the time to give this info out - looks like you know more about bpython than me. ;)
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...)
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 ...
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 ? :)
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,
Hi, sorry to hear you're having problems here - we made a lot of effort to make sure bpython can work in as many terminals as possible with as many colour arrangements as possible and it sounds to me like there should be a solution to your problem, so if you think you might be interested in using bpython please swing by #bpython on irc.freenode.net and we'd be happy to help you get it working. Even if you don't end up using it it would help out future users. :)
Hi, I don't have any knowledge of this kind of stuff so it would be very helpful if you could create an issue with some more info here: https://bitbucket.org/bobf/bpython/issues
At least then we know about the problem and can get around to fixing it. :)
The worst thing is it's been at least two years since somebody first asked about this and we still haven't done it, even though it's really, really easy. :) I'll try to get this done soon if anybody is willing.
I didn't know about this - we actually have a GTK version that needs some tidying up and packaging before we actually release it (if anyone is interested in helping with this that would be great as none of us use Windows - see the bpython website for details on how to get involved).
Could you possibly drop me an email or get me on IRC (again, see website for details) to let me know how this curses binary works on Windows ? It'd be great to add some documentation to the bpython site on this.
Yeah, I don't use Django so I never did this myself, but somebody kindly did the work for us. :)
Actually you don't even have to do that - just alias "python" for "bpython" and bpython automagically instantiates the actual python if it is passed arguments, i.e. "bpython foo.py" is essentially the same as "python foo.py" - this feature was implemented for this reason, so you could just make an alias.
The main reason for this is actually that IPython has had (and, by design, in some cases still does have) the "problem" that code that works in IPython can work differently to the standard Python interpreter. This meant that people quite often had problems where the solution was "run it in the actual python interpreter". When I first started writing bpython one of the design goals was that all code that runs in bpython would also run the same in the vanilla REPL. This is why there is no extended syntax such as that provided by IPython (I don't actually use it so can't give good examples, but I think you can do things like "object?" to get help etc.). IPython also had some issues with unicode and encodings that may have since been resolved.
This is the only good reason I would recommend bpython over IPython objectively. Other than that, it's just a matter of taste - bpython is just a standard shell with some nice features to aid the user whereas IPython has a whole host of features and extensions and integrations that make it a great tool for lots of people. I don't think you have to use one or the other and I don't see them as competing pieces of software. IPython is a great tool and seems to suit a lot of people, particularly those in the mathematic and scientific communities.
Let me put it this way: if IPython implemented all of the features that bpython has and bpython became entirely redundant then I would only be happy that people have a great tool to help them with their development and that bpython may have played a part in helping it get to that state.
Hi. It's done using ncurses for the display (if you've ever worked with curses you can imagine how much of a headache the whole thing was). The introspection is done using the `inspect` module for the arg spec/doc string, and either inspect.getmembers or just dir() to get the attributes (it's been a while since I wrote it). We had to do some pretty weird stuff to get the attribute inspection to not trigger __getattribute__ for objects that implement it (i.e. to introspect without side-effects) but it seems to work pretty well.