Skip to content
VimL
Find file
Latest commit 74b2838 Mar 12, 2016 @drmikehenry Fixup additional keys for xterm, konsole, and gnome-terminal.
This nails down some additional definitions for function keys and
navigation keys (home/end/arrows/etc.) for xterm, konsole, and
gnome-terminal.  This corrects a problem with stock Fedora Linux vim,
because Fedora patches Vim and exchanges the definitions for <F1>
through <F4> with <xF1> through <xF4>.

README.rst

Fixkey - fixes key codes for console Vim

Fixkey helps Vim use the non-ASCII keys of a terminal emulator, permitting mapping of several classes of characters, including:

  • Alt-lowercase letters (<M-a> - <M-z>).
  • Alt-uppercase letters (<M-A> - <M-Z>), except <M-O> due to keycode ambiguity).
  • Function keys with no modifiers or combinations of shift, control, and alt: <F1> - <F12>, <S-F1> - <S-F12>, ..., <M-C-S-F1> - <M-C-S-F12>. Note not all combination of terminal and environment send all of these.
  • Arrow keys with no modifiers or combinations of shift, control, and alt: <Up>, <Down>, <Left>, <Right>, <S-Up>, <S-Down>, <S-Left>, <S-Right>, ..., <M-C-S-Up>, <M-C-S-Down>, <M-C-S-Left>, <M-C-S-Right>.
  • Home and End keys with no modifiers or combinations of shift, control, and alt: <Home>, <End>, <S-Home>, <S-End>, ..., <M-C-S-Home>, <M-C-S-End>.
  • <S-Enter> (few terminals).
  • <M-Enter> (not all terminals).

Now, console Vim users can map keys like Gvim users, e.g.:

" Map Alt-q to re-wrap a paragraph.
:nnoremap <M-q> gqap

See documentation in doc/fixkey.txt for installation instructions and terminal setup.

NOTE Unexpected results may occur when using macros with fixkey, because macros do not maintain the original timings between key codes, causing Vim's timing-based algorithms to become confused. See the documentation for more details.

Developed by Michael Henry (vim at drmikehenry.com).

Distributed under Vim's license.

Git repository: https://github.com/drmikehenry/vim-fixkey

Something went wrong with that request. Please try again.