I know a number of people using ipython, but I've never heard of the others before today. Ipython is widely used by the scipy crowd, at the very least.
This is awesome. But the colors seem to interact badly with the terminal backgrounds in Mac OSX. I also can't get any of the function shortcuts (F8 = pastebin) to work; I just get gibberish instead. Also I get a crash when I resize the window:
Traceback (most recent call last):
File "/usr/local/bin/bpython", line 8, in <module>
load_entry_point('bpython==0.9.7', 'console_scripts', 'bpython')()
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 1739, in main
banner=banner)
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 1636, in curses_wrapper
return func(stdscr, args, *kwargs)
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 1706, in main_curses
clirepl.repl()
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 996, in repl
inp = self.get_line()
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 589, in get_line
key = self.get_key()
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 567, in get_key
self.idle(self)
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 1579, in idle
do_resize(caller)
File "/Library/Python/2.5/site-packages/bpython-0.9.7-py2.5.egg/bpython/cli.py", line 1591, in do_resize
curses.endwin()
_curses.error: endwin() returned ERR
This is awesome. Just yesterday I was this close to posting an Ask HN looking for a syntax highlighting REPL, and considering writing one myself someday if nobody else does.
My addiction to syntax highlighting can now be satisfied without having to fire up Vim or gedit to edit a script. Maybe if I think hard enough about posting an Ask HN for a syntax highlighting bash command prompt, someone will write one of those, too ;).
I have tested it and it's not bad but the IPython (with "save history" & "virtualenv" plugin) + Dreampie combination is still a lot better and way more powerful.
I use IPython as my main Python shell replacement (this also includes Django development, debugging - (i)pdb, etc.) and Dreampie when writing a prototype or "playing around".
My favorite reaction to bpython was showing it to somebody, watching them use it for about 30 seconds, and them watching them alias it to 'python' without even thinking :) It blows the default python interpreter environment out of the water: it remembers history between sessions, autocompletes just about everything, and even has a shortcut for dumping code out to Pastebin.
This is pretty neat. I turned off auto_display_list and arg_spec (the autocomplete features). I'm not sure if it will replace my normal usage of IDLE, but I definitely dig the syntax highlighting and session history.
This looks very handy. It would be nice if this could be extended to wrap around a Jython shell, presenting a nice way to quickly browse through javadoc info as well.
or for a more SLIMEy experience, you can try ScreenShell, which allows you to send code from Vim in one GNU Screen window to another running irb, or the interpreter of your choice.
http://news.ycombinator.com/item?id=1098876
If you just want to stick to improving the irb experience, the Pickaxe book has a good section on customizing irb:
* wirble: for syntax highlightning
* bond: for more advanced autocompletion
* utilitybelt: for pastebin-like commands
* sketches: for editing and evaluating code easily
* boson: command framework for creating libraries of commands to be loaded as needed
* hirb: framework for associating views per class