[IPython-dev] pyreadline vi mode

Michael Graz mgraz at mnsgraz.plus.com
Sun Mar 26 10:26:00 EST 2006


I have been working on integrating the vi mode for pyreadline.  The latest
changes are here: http://www.plan10.com/readline/readline-1.13a.zip 

 

There are new versions of:

    pyreadline-refactor/pyreadline/modes/vi.py

    pyreadline-refactor/pyreadline/lineeditor/lineobj.py

 

And also the beginning of the vi tests:

    pyreadline-refactor/pyreadline/test/vi_test.py

 

The vi mode undo is not working yet, and there are still many tests to
merge.  I think I need a login and password to commit the changes directly
to svn.

 

A couple of thoughts:

 

- It would be nice to be compatible by default with existing .inputrc files
for readline configuration.  In that way if a user is a unix shell user then
their readline settings will automatically work with IPython.  Otherwise
they will have to go thru a conversion process to change their settings from
~/.inputrc to ~/pyreadlineconfig.ini.  And then any config changes will have
to be made in two different files.

 

- Not sure about using ctrl-c for copy operations.  Typically for a shell
that would mean interrupt or break.  Perhaps the ctrl-c could have special
modes so that if there is a selection then it behaves as the copy, as was
mentioned.  For windows cmd.exe the typical copy operation is select text
with the mouse, and the press enter to copy (assuming cmd.exe QuickEdit mode
is enabled).  It is at that point that the selected text makes it into the
clipboard.  This is different from the unix xterm convention where once text
is selected then it automatically is in the clipboard.  This approach may be
an interested feature to implement for win32 pyreadline.  That is once the
selection is enabled, the copy to clipboard happens automatically.

 

-Michael

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20060326/77a84a66/attachment.html>


More information about the IPython-dev mailing list