On Oct 21, 2007, at 10:51 PM, Noah Gift wrote:
I have been getting ready for the official leopard release in a few
days, and have been a bit worried about readline support. I forgot
what I did to get it to work for IPython, which I absolutely cannot
live without anymore. Is there a plan for a Leopard binary that
fixes readline, or can I help someone prepare some documentation on
getting readline working properly. I don't have a lot of time
during the next couple of weeks to get into compile hell, but if
someone has any easy fix to get readline to work, I would greatly
appreciate it.
The installed version of python on Leopard will actually have readline
support turned on by default, but it uses the EditLine (libedit)
library, not the GNU Readline (due to licensing reasons). While
functionally equivalent, the command syntax is different. From the
python(1) man page:
INTERACTIVE INPUT EDITING AND HISTORY SUBSTITUTION
The Python inteterpreter supports editing of the current input
line and
history substitution, similar to facilities found in the Korn
shell and
the GNU Bash shell. However, rather than being implemented
using the
GNU Readline library, this Python interpreter uses the BSD
EditLine
library editline(3) with a GNU Readline emulation layer.
The readline module provides the access to the EditLine
library, but
there are a few major differences compared to a traditional
implementa-
tion using the Readline library. The command language
used in the
preference files is that of EditLine, as described in
editrc(5) and not
that used by the Readline library. This also means
that the
parse_and_bind() routines uses EditLine commands. And the
preference
file itself is ~/.editrc instead of ~/.inputrc.
For example, the rlcompleter module, which defines a
completion func-
tion for the readline modules, works correctly with the
EditLine
libraries, but needs to be initialized somewhat differently:
import rlcompleter
import readline
readline.parse_and_bind("bind ^I rl_complete")
For vi mode, one needs:
readline.parse_and_bind("bind -v")
--------------------------------------------------------------------------
Edward Moy
Apple Computer, Inc.
[EMAIL PROTECTED]
_______________________________________________
Pythonmac-SIG maillist - Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig