Padre::Plugin::Vi - vi keyboard for Padre
Once installed and enabled the user is in full vi-emulation mode, which was partially implemented.
The 3 basic modes of vi are in development:
When you turn on vi-mode, or load Padre with vi-mode already enabled you reach the normal navigation mode of vi.
We don't plan to implement many of the configuration options of vi. Even parts that are going to be implemented will not use the same method of configuration.
That said, we are planning to add looking for vi configuration options in the source file so the editor can set its own configuration based on the vi configuration options.
The following are implemented:
4 arrows also work
Number prefix are allowed in both the 4 letter and the 4 arrows
d - delete the selection x - delete the selection y - yank the selection v - stop the visual mode, remove selection
P - paste above
TODO this is currently step one character back as the caret is not ON a caracter but between two.
O - add an empty line above current line and switch to insert mode
Nx - delete N characters
Ndd - (N any number) delete N lines
d$ - delete till end of line
Ndw - delete N word
Nyy - yank (copy) N lines to buffer
y$ - yank till end of line
Nyw - yank N words
G - jump to last line
TAB completition of directory and filenames
(we have it in generalized form, you can type any number there :)
:bN to switch buffer N
TODO: it is not working the same way as in vi, first of all numbers are from and if a file is closed the buffers are renumbered. If we really want to support this option we might need to have our own separate mapping of numbers to buffers and files.
Better indication that Padre is in vi-mode.
Change the cursor for navigation mode and back to insert mode. (fix i)
Integrate command line pop-up move it to the bottom of the window make it come up faster (show/hide instead of create/destroy?) (maybe actually we should have it integrated it into the main GUI and add it as another window under or above the output window?) Most importantly, make it faster to come up
/ and search connect it to the new (and yet experimental search)
r for replacing current character :q! - discard changes and exit
:e! :ls and