Mercurial > vim
comparison src/keymap.h @ 22862:6d50182e7e24 v8.2.1978
patch 8.2.1978: making a mapping work in all modes is complicated
Commit: https://github.com/vim/vim/commit/957cf67d50516ba98716f59c9e1cb6412ec1535d
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Nov 12 14:21:06 2020 +0100
patch 8.2.1978: making a mapping work in all modes is complicated
Problem: Making a mapping work in all modes is complicated.
Solution: Add the <Cmd> special key. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/7282,
closes 4784, based on patch by Bjorn Linse)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 12 Nov 2020 14:30:04 +0100 |
parents | 6e3dc2d630c2 |
children | f8906bd5b277 |
comparison
equal
deleted
inserted
replaced
22861:459c4d8b3a34 | 22862:6d50182e7e24 |
---|---|
272 , KE_NOP = 97 // doesn't do something | 272 , KE_NOP = 97 // doesn't do something |
273 , KE_FOCUSGAINED = 98 // focus gained | 273 , KE_FOCUSGAINED = 98 // focus gained |
274 , KE_FOCUSLOST = 99 // focus lost | 274 , KE_FOCUSLOST = 99 // focus lost |
275 , KE_MOUSEMOVE = 100 // mouse moved with no button down | 275 , KE_MOUSEMOVE = 100 // mouse moved with no button down |
276 , KE_CANCEL = 101 // return from vgetc() | 276 , KE_CANCEL = 101 // return from vgetc() |
277 , KE_COMMAND = 102 // <Cmd> special key | |
277 }; | 278 }; |
278 | 279 |
279 /* | 280 /* |
280 * the three byte codes are replaced with the following int when using vgetc() | 281 * the three byte codes are replaced with the following int when using vgetc() |
281 */ | 282 */ |
447 #define K_MIDDLEDRAG TERMCAP2KEY(KS_EXTRA, KE_MIDDLEDRAG) | 448 #define K_MIDDLEDRAG TERMCAP2KEY(KS_EXTRA, KE_MIDDLEDRAG) |
448 #define K_MIDDLERELEASE TERMCAP2KEY(KS_EXTRA, KE_MIDDLERELEASE) | 449 #define K_MIDDLERELEASE TERMCAP2KEY(KS_EXTRA, KE_MIDDLERELEASE) |
449 #define K_RIGHTMOUSE TERMCAP2KEY(KS_EXTRA, KE_RIGHTMOUSE) | 450 #define K_RIGHTMOUSE TERMCAP2KEY(KS_EXTRA, KE_RIGHTMOUSE) |
450 #define K_RIGHTDRAG TERMCAP2KEY(KS_EXTRA, KE_RIGHTDRAG) | 451 #define K_RIGHTDRAG TERMCAP2KEY(KS_EXTRA, KE_RIGHTDRAG) |
451 #define K_RIGHTRELEASE TERMCAP2KEY(KS_EXTRA, KE_RIGHTRELEASE) | 452 #define K_RIGHTRELEASE TERMCAP2KEY(KS_EXTRA, KE_RIGHTRELEASE) |
452 #define K_X1MOUSE TERMCAP2KEY(KS_EXTRA, KE_X1MOUSE) | 453 #define K_X1MOUSE TERMCAP2KEY(KS_EXTRA, KE_X1MOUSE) |
453 #define K_X1MOUSE TERMCAP2KEY(KS_EXTRA, KE_X1MOUSE) | 454 #define K_X1MOUSE TERMCAP2KEY(KS_EXTRA, KE_X1MOUSE) |
454 #define K_X1DRAG TERMCAP2KEY(KS_EXTRA, KE_X1DRAG) | 455 #define K_X1DRAG TERMCAP2KEY(KS_EXTRA, KE_X1DRAG) |
455 #define K_X1RELEASE TERMCAP2KEY(KS_EXTRA, KE_X1RELEASE) | 456 #define K_X1RELEASE TERMCAP2KEY(KS_EXTRA, KE_X1RELEASE) |
456 #define K_X2MOUSE TERMCAP2KEY(KS_EXTRA, KE_X2MOUSE) | 457 #define K_X2MOUSE TERMCAP2KEY(KS_EXTRA, KE_X2MOUSE) |
457 #define K_X2DRAG TERMCAP2KEY(KS_EXTRA, KE_X2DRAG) | 458 #define K_X2DRAG TERMCAP2KEY(KS_EXTRA, KE_X2DRAG) |
458 #define K_X2RELEASE TERMCAP2KEY(KS_EXTRA, KE_X2RELEASE) | 459 #define K_X2RELEASE TERMCAP2KEY(KS_EXTRA, KE_X2RELEASE) |
459 | 460 |
460 #define K_IGNORE TERMCAP2KEY(KS_EXTRA, KE_IGNORE) | 461 #define K_IGNORE TERMCAP2KEY(KS_EXTRA, KE_IGNORE) |
461 #define K_NOP TERMCAP2KEY(KS_EXTRA, KE_NOP) | 462 #define K_NOP TERMCAP2KEY(KS_EXTRA, KE_NOP) |
474 #define K_DROP TERMCAP2KEY(KS_EXTRA, KE_DROP) | 475 #define K_DROP TERMCAP2KEY(KS_EXTRA, KE_DROP) |
475 #define K_FOCUSGAINED TERMCAP2KEY(KS_EXTRA, KE_FOCUSGAINED) | 476 #define K_FOCUSGAINED TERMCAP2KEY(KS_EXTRA, KE_FOCUSGAINED) |
476 #define K_FOCUSLOST TERMCAP2KEY(KS_EXTRA, KE_FOCUSLOST) | 477 #define K_FOCUSLOST TERMCAP2KEY(KS_EXTRA, KE_FOCUSLOST) |
477 | 478 |
478 #define K_CURSORHOLD TERMCAP2KEY(KS_EXTRA, KE_CURSORHOLD) | 479 #define K_CURSORHOLD TERMCAP2KEY(KS_EXTRA, KE_CURSORHOLD) |
480 | |
481 #define K_COMMAND TERMCAP2KEY(KS_EXTRA, KE_COMMAND) | |
479 | 482 |
480 // Bits for modifier mask | 483 // Bits for modifier mask |
481 // 0x01 cannot be used, because the modifier must be 0x02 or higher | 484 // 0x01 cannot be used, because the modifier must be 0x02 or higher |
482 #define MOD_MASK_SHIFT 0x02 | 485 #define MOD_MASK_SHIFT 0x02 |
483 #define MOD_MASK_CTRL 0x04 | 486 #define MOD_MASK_CTRL 0x04 |