neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

keycodes.lua (6058B)


      1 return {
      2  --- @type [string, string][] List of [key, name] tuples.
      3  --- For keys with multiple names, put the preferred name first.
      4  --- For multiple keys with the same name, put the preferred key first.
      5  names = {
      6    { [[' ']], 'Space' },
      7    { [[TAB]], 'Tab' },
      8    { [[K_TAB]], 'Tab' },
      9    { [[NL]], 'NL' },
     10    { [[NL]], 'NewLine' }, -- Alternative name
     11    { [[NL]], 'LineFeed' }, -- Alternative name
     12    { [[NL]], 'LF' }, -- Alternative name
     13    { [[CAR]], 'CR' },
     14    { [[CAR]], 'Return' }, -- Alternative name
     15    { [[CAR]], 'Enter' }, -- Alternative name
     16    { [[K_BS]], 'BS' },
     17    { [[K_BS]], 'BackSpace' }, -- Alternative name
     18    { [[ESC]], 'Esc' },
     19    { [[ESC]], 'Escape' }, -- Alternative name
     20    { [[CSI]], 'CSI' },
     21    { [['|']], 'Bar' },
     22    { [['\\']], 'Bslash' },
     23    { [[K_DEL]], 'Del' },
     24    { [[K_DEL]], 'Delete' }, -- Alternative name
     25    { [[K_KDEL]], 'kDel' },
     26    { [[K_KDEL]], 'KPPeriod' }, -- libtermkey name
     27    { [[K_UP]], 'Up' },
     28    { [[K_DOWN]], 'Down' },
     29    { [[K_LEFT]], 'Left' },
     30    { [[K_RIGHT]], 'Right' },
     31    { [[K_XUP]], 'xUp' },
     32    { [[K_XDOWN]], 'xDown' },
     33    { [[K_XLEFT]], 'xLeft' },
     34    { [[K_XRIGHT]], 'xRight' },
     35    { [[K_KUP]], 'kUp' },
     36    { [[K_KUP]], 'KP8' },
     37    { [[K_KDOWN]], 'kDown' },
     38    { [[K_KDOWN]], 'KP2' },
     39    { [[K_KLEFT]], 'kLeft' },
     40    { [[K_KLEFT]], 'KP4' },
     41    { [[K_KRIGHT]], 'kRight' },
     42    { [[K_KRIGHT]], 'KP6' },
     43 
     44    { [[K_F1]], 'F1' },
     45    { [[K_F2]], 'F2' },
     46    { [[K_F3]], 'F3' },
     47    { [[K_F4]], 'F4' },
     48    { [[K_F5]], 'F5' },
     49    { [[K_F6]], 'F6' },
     50    { [[K_F7]], 'F7' },
     51    { [[K_F8]], 'F8' },
     52    { [[K_F9]], 'F9' },
     53    { [[K_F10]], 'F10' },
     54 
     55    { [[K_F11]], 'F11' },
     56    { [[K_F12]], 'F12' },
     57    { [[K_F13]], 'F13' },
     58    { [[K_F14]], 'F14' },
     59    { [[K_F15]], 'F15' },
     60    { [[K_F16]], 'F16' },
     61    { [[K_F17]], 'F17' },
     62    { [[K_F18]], 'F18' },
     63    { [[K_F19]], 'F19' },
     64    { [[K_F20]], 'F20' },
     65 
     66    { [[K_F21]], 'F21' },
     67    { [[K_F22]], 'F22' },
     68    { [[K_F23]], 'F23' },
     69    { [[K_F24]], 'F24' },
     70    { [[K_F25]], 'F25' },
     71    { [[K_F26]], 'F26' },
     72    { [[K_F27]], 'F27' },
     73    { [[K_F28]], 'F28' },
     74    { [[K_F29]], 'F29' },
     75    { [[K_F30]], 'F30' },
     76 
     77    { [[K_F31]], 'F31' },
     78    { [[K_F32]], 'F32' },
     79    { [[K_F33]], 'F33' },
     80    { [[K_F34]], 'F34' },
     81    { [[K_F35]], 'F35' },
     82    { [[K_F36]], 'F36' },
     83    { [[K_F37]], 'F37' },
     84    { [[K_F38]], 'F38' },
     85    { [[K_F39]], 'F39' },
     86    { [[K_F40]], 'F40' },
     87 
     88    { [[K_F41]], 'F41' },
     89    { [[K_F42]], 'F42' },
     90    { [[K_F43]], 'F43' },
     91    { [[K_F44]], 'F44' },
     92    { [[K_F45]], 'F45' },
     93    { [[K_F46]], 'F46' },
     94    { [[K_F47]], 'F47' },
     95    { [[K_F48]], 'F48' },
     96    { [[K_F49]], 'F49' },
     97    { [[K_F50]], 'F50' },
     98 
     99    { [[K_F51]], 'F51' },
    100    { [[K_F52]], 'F52' },
    101    { [[K_F53]], 'F53' },
    102    { [[K_F54]], 'F54' },
    103    { [[K_F55]], 'F55' },
    104    { [[K_F56]], 'F56' },
    105    { [[K_F57]], 'F57' },
    106    { [[K_F58]], 'F58' },
    107    { [[K_F59]], 'F59' },
    108    { [[K_F60]], 'F60' },
    109 
    110    { [[K_F61]], 'F61' },
    111    { [[K_F62]], 'F62' },
    112    { [[K_F63]], 'F63' },
    113 
    114    { [[K_XF1]], 'xF1' },
    115    { [[K_XF2]], 'xF2' },
    116    { [[K_XF3]], 'xF3' },
    117    { [[K_XF4]], 'xF4' },
    118 
    119    { [[K_HELP]], 'Help' },
    120    { [[K_UNDO]], 'Undo' },
    121    { [[K_FIND]], 'Find' }, -- DEC key, often used as 'Home'
    122    { [[K_KSELECT]], 'Select' }, -- DEC key, often used as 'End'
    123    { [[K_INS]], 'Insert' },
    124    { [[K_INS]], 'Ins' }, -- Alternative name
    125    { [[K_KINS]], 'kInsert' },
    126    { [[K_KINS]], 'KP0' },
    127    { [[K_HOME]], 'Home' },
    128    { [[K_KHOME]], 'kHome' },
    129    { [[K_KHOME]], 'KP7' },
    130    { [[K_XHOME]], 'xHome' },
    131    { [[K_ZHOME]], 'zHome' },
    132    { [[K_END]], 'End' },
    133    { [[K_KEND]], 'kEnd' },
    134    { [[K_KEND]], 'KP1' },
    135    { [[K_XEND]], 'xEnd' },
    136    { [[K_ZEND]], 'zEnd' },
    137    { [[K_PAGEUP]], 'PageUp' },
    138    { [[K_PAGEDOWN]], 'PageDown' },
    139    { [[K_KPAGEUP]], 'kPageUp' },
    140    { [[K_KPAGEUP]], 'KP9' },
    141    { [[K_KPAGEDOWN]], 'kPageDown' },
    142    { [[K_KPAGEDOWN]], 'KP3' },
    143    { [[K_KORIGIN]], 'kOrigin' },
    144    { [[K_KORIGIN]], 'KP5' },
    145 
    146    { [[K_KPLUS]], 'kPlus' },
    147    { [[K_KPLUS]], 'KPPlus' },
    148    { [[K_KMINUS]], 'kMinus' },
    149    { [[K_KMINUS]], 'KPMinus' },
    150    { [[K_KDIVIDE]], 'kDivide' },
    151    { [[K_KDIVIDE]], 'KPDiv' },
    152    { [[K_KMULTIPLY]], 'kMultiply' },
    153    { [[K_KMULTIPLY]], 'KPMult' },
    154    { [[K_KENTER]], 'kEnter' },
    155    { [[K_KENTER]], 'KPEnter' },
    156    { [[K_KPOINT]], 'kPoint' },
    157    { [[K_KCOMMA]], 'kComma' },
    158    { [[K_KCOMMA]], 'KPComma' },
    159    { [[K_KEQUAL]], 'kEqual' },
    160    { [[K_KEQUAL]], 'KPEquals' },
    161 
    162    { [[K_K0]], 'k0' },
    163    { [[K_K1]], 'k1' },
    164    { [[K_K2]], 'k2' },
    165    { [[K_K3]], 'k3' },
    166    { [[K_K4]], 'k4' },
    167    { [[K_K5]], 'k5' },
    168    { [[K_K6]], 'k6' },
    169    { [[K_K7]], 'k7' },
    170    { [[K_K8]], 'k8' },
    171    { [[K_K9]], 'k9' },
    172 
    173    { [['<']], 'lt' },
    174 
    175    { [[K_MOUSE]], 'Mouse' },
    176    { [[K_LEFTMOUSE]], 'LeftMouse' },
    177    { [[K_LEFTMOUSE_NM]], 'LeftMouseNM' },
    178    { [[K_LEFTDRAG]], 'LeftDrag' },
    179    { [[K_LEFTRELEASE]], 'LeftRelease' },
    180    { [[K_LEFTRELEASE_NM]], 'LeftReleaseNM' },
    181    { [[K_MOUSEMOVE]], 'MouseMove' },
    182    { [[K_MIDDLEMOUSE]], 'MiddleMouse' },
    183    { [[K_MIDDLEDRAG]], 'MiddleDrag' },
    184    { [[K_MIDDLERELEASE]], 'MiddleRelease' },
    185    { [[K_RIGHTMOUSE]], 'RightMouse' },
    186    { [[K_RIGHTDRAG]], 'RightDrag' },
    187    { [[K_RIGHTRELEASE]], 'RightRelease' },
    188    { [[K_MOUSEDOWN]], 'ScrollWheelUp' },
    189    { [[K_MOUSEUP]], 'ScrollWheelDown' },
    190    { [[K_MOUSELEFT]], 'ScrollWheelRight' },
    191    { [[K_MOUSERIGHT]], 'ScrollWheelLeft' },
    192    { [[K_MOUSEDOWN]], 'MouseDown' }, -- OBSOLETE: Use ScrollWheelUp instead
    193    { [[K_MOUSEUP]], 'MouseUp' }, -- OBSOLETE: Use ScrollWheelDown instead
    194    { [[K_X1MOUSE]], 'X1Mouse' },
    195    { [[K_X1DRAG]], 'X1Drag' },
    196    { [[K_X1RELEASE]], 'X1Release' },
    197    { [[K_X2MOUSE]], 'X2Mouse' },
    198    { [[K_X2DRAG]], 'X2Drag' },
    199    { [[K_X2RELEASE]], 'X2Release' },
    200    { [[K_DROP]], 'Drop' },
    201    { [[K_ZERO]], 'Nul' },
    202    { [[K_SNR]], 'SNR' },
    203    { [[K_PLUG]], 'Plug' },
    204    { [[K_IGNORE]], 'Ignore' },
    205    { [[K_COMMAND]], 'Cmd' },
    206    -- NOTE: When adding a long name update MAX_KEY_NAME_LEN.
    207  },
    208 }