declare-user-mode mirror # grow/shrink map global mirror c 'C' -docstring column map global mirror h 'HL' -docstring character map global mirror l 'LH' -docstring character map global mirror j 'JK' -docstring line map global mirror k 'KJ' -docstring line map global mirror J 'JK' -docstring 'full line' map global mirror K 'KJ' -docstring 'full line' map global mirror b 'BW' -docstring 'word begin' map global mirror w 'WB' -docstring 'word begin' map global mirror e 'EB' -docstring 'word end' map global mirror p '}p{p' -docstring paragraph map global mirror s '}s{s' -docstring sentence map global mirror m 'M' -docstring matching # insert/delete map global mirror ( '\a)\i(H' -docstring '(surround)' map global mirror { '\a}\i{H' -docstring '{surround}' map global mirror [ '\a]\i[H' -docstring '[surround]' map global mirror < '\a\iH' -docstring '' map global mirror « '\a»\i«H' -docstring '«surround»' map global mirror ) '\a )\i( 2H' -docstring '( surround )' map global mirror } '\a }\i{ 2H' -docstring '{ surround }' map global mirror ] '\a ]\i[ 2H' -docstring '[ surround ]' map global mirror > '\a \i 2H' -docstring '< surround >' map global mirror » '\a »\i« 2H' -docstring '« surround »' map global mirror '"' '\a"\i"H' -docstring '"surround"' map global mirror "'" "\a'\i'H" -docstring "'surround'" map global mirror '`' '\a`\i`H' -docstring '`surround`' map global mirror d ': mirror-delete' -docstring 'delete' define-command -hidden mirror-delete %{ execute-keys ZzH } # fallthrough map global mirror '' '' -docstring 'swap anchor and cursor' map global mirror '' '' -docstring 'select sels boundaries' # Suggested mapping #map global normal "'" ': enter-user-mode -lock mirror' -docstring 'mirror lock'