我正在尝试创建一个新的键绑定,它可以在除一个模式之外的所有模式下正常工作,它与另一个模式冲突。例如:
(global-set-key (kbd "<C-S-down>") 'move-line-down)
是否有一种简单的方法(没有为特定的本地模式设置它)使其全局排除特定模式?
答案 0 :(得分:1)
您可以向after-change-major-mode-hook
添加一个函数,该函数会在当前 local 键映射中设置键,但您希望避免的特定模式除外。
答案 1 :(得分:0)
如果要排除某个特定模式,可以执行以下操作:
(global-set-key (kbd "<C-S-down>") 'move-line-down)
使其全球可用,
(define-key KEYMAP (kbd "<C-S-down>") nil)
排除一种模式
其中KEYMAP是模式的名称,后跟“mode-map”(例如ess-mode-map)。
您也可以将原始内容绑定到密钥而不是nil
。