Standard python interpreter has a vi command mode? Standard python interpreter has a vi command mode? python python

Standard python interpreter has a vi command mode?


Ctrl-Alt-J switches from Emacs mode to Vi mode in readline programs.

Alternatively add "set editing-mode vi" to your ~/.inputrc


This kind of all depends on a few things.

First of all, the python shell uses readline, and as such, your ~/.inputrc is important here. That's the same with psql the PostgreSQL command-line interpreter and mysql the MySQL shell. All of those can be configured to use vi-style command bindings, with history etc.

<ESC> will put you into vi mode at the python shell once you've got your editing mode set to vi

You may need the following definition in your ~/.inputrc

set editing-mode vi

OSX info

OSX uses libedit which uses ~/.editrc. You can man editrc for more information.

For example, to mimick a popular key combination which searches in your history, you can add the following to your .editrc

bind "^R" em-inc-search-prev


For Mac OS X 10.10.3, python2.7, vi mode can be configured by placing bind -v in ~/.editrc. The last few paragraphs of the man page hint at this.