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