
Bpython is a fancy interface to Python - interro
http://bpython-interpreter.org/screenshots/
======
buster
It's the first thing i install in my virtualenvs. Much better then the
standard interactive console and just works out of the box. If you don't want
more then tab completion, docstrings and a working command history between
sessions it is great! For more stuff, see ipython.

------
ufo
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?

~~~
belorn
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...

~~~
digisign
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.

~~~
bobfarrell
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 ? :)

------
wyuenho
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.

~~~
bobfarrell
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 ...

------
thauck
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.

~~~
JulianWasTaken
I don't know what %edit does, but if I guess that it has something to do with
an editor, I use this in my dotfiles:

<https://github.com/Julian/dotfiles/blob/master/.pythonrc#L55>

which is perfectly REPL agnostic.

I prefer bpython over iPython for a bunch of reasons that I can't easily
elaborate on from here on my mobile, but is definitely suggest people try them
both out.

~~~
thauck
That's pretty nifty - thanks.

EDIT: Also, I have used bpython, but since I use python more on the data side
as opposed to web (or something not data) IPython along with everything else
make it too good to not use.

~~~
JulianWasTaken
Yeah. That's where ipython probably hits the sweet spot, so that's reasonable.

------
Alex3917
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.

~~~
JulianWasTaken
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.

~~~
Alex3917
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.

~~~
bobfarrell
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...](https://bitbucket.org/bobf/bpython/issues?status=new&status=open))

------
andybak
Also see iPython. Not as pretty but has an astonishing range of capabilities.

~~~
bobfarrell
+1 (from bpython's author)

They just got a huge funding grant so IPython is definitely one to watch.

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

~~~
wyuenho
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 contribute, I have 3 projects of my own to deal with...

~~~
bobfarrell
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,

------
gejjaxxita
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.

~~~
sebastinas
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.

~~~
gejjaxxita
great! I'm using pip to install.

------
cm127
Tried "pip install bpython" on Windows 7, but I get an ImportError: No module
named _curses.

~~~
sebastinas
There are instructions to get it working on Windows at [1] and [2]. Please let
us know if they work for you.

[1] <http://docs.bpython-interpreter.org/windows.html> [2]
[https://bitbucket.org/bobf/bpython/src/0f88fb19ee697096511d5...](https://bitbucket.org/bobf/bpython/src/0f88fb19ee697096511d5631b2ce050b27951e48/README.rst?at=default)

------
darrellsilver
This looks like a great way to learn, too! The REPL is a fantastic place to
play around.

Awesome.

------
knes
Just installed it and it is AWESOME! I love the auto indent and auto complete!

------
TorbjornLunde
Really cool. Does something similar exist for Ruby?

~~~
JonnieCache
<http://pryrepl.org/>

also don't miss

<https://github.com/nixme/pry-debugger>

<https://github.com/pry/pry-stack_explorer>

and

<https://github.com/pry/pry-exception_explorer>

amongst others.

------
ddonline
Oh you fancy huh? Nice work!

------
anujbans
This is awesome :)

