vis
a vi-like editor based on Plan 9's structural regular expressions
git clone https://9o.is/git/vis.git
commit 1fea2f78056f541eb152a6d48f54b595e7c8bb0d parent 9adf460c976af04b0d0f43e0791f6ba0def00001 Author: xomachine <xomachiner@gmail.com> Date: Thu, 18 Feb 2016 22:47:39 +0300 Description for langmap command Diffstat:
| M | README.md | | | 18 | ++++++++++++++++++ |
1 file changed, 18 insertions(+), 0 deletions(-)
diff --git a/README.md b/README.md @@ -286,6 +286,7 @@ Operators can be forced to work line wise by specifying `V`. :unmap remove a global key mapping :map-window add a window local key mapping :unmap-window remove a window local key mapping + :langmap set key equivalents for layout specific key mappings :! filter range through external command :| pipe range to external command and display output in a new window :set set the options below @@ -391,6 +392,23 @@ Unmapping works as follows: The commands suffixed with `-window` only affect the currently active window. +### Layout Specific Key Bindings + +Vis allows to set key equivalents for non-latin keyboard layouts. This +facilitates editing non-latin texts. The defined mappings take effect +in all non-input modes, i.e. everywhere except in insert and replace mode. + +For example, the following maps the movement keys in Russian layout: + + :langmap ролд hjkl + +More generally the syntax of the `:langmap` command is: + + :langmap <sequence of keys in your layout> <sequence of equivalent keys in latin layout> + +If the key sequences have not the same length, the rest of the longer +sequence will be discarded. + ### Tab <-> Space conversion and Line endings \n vs \r\n Tabs can optionally be expanded to a configurable number of spaces.