我刚刚更新了 emacs org-mode 并且在访问 org 文件时,此绑定生效:
C-TAB (org-force-cycle-archived) 循环一棵树,即使它被标记为 ARCHIVE。
禁用此绑定的最佳方法是什么?
我使用 C-Tab 在窗口之间移动。
我尝试创建一个钩子,但这不起作用。本地键绑定仍然优先。
(defun my-org-mode-hook ()
(define-key global-map '[(control tab)] 'other-window)
(define-key global-map '[(shift control tab)] 'my-other-window-back)
(global-set-key '[(control tab)] 'other-window)
(global-set-key '[(shift control tab)] 'my-other-window-back)
(local-set-key '[(control tab)] 'other-window)
(local-set-key '[(shift control tab)] 'my-other-window-back)
)
(add-hook 'org-mode-hook 'my-org-mode-hook)
Run Code Online (Sandbox Code Playgroud)
以下是我在 org-mode 中禁用的一些内容的示例——我使用过require,但您可以使用它来代替eval-after-load——每次加载 org-mode 缓冲区时都不需要这样做(例如,模式钩子是矫枉过正的):
(require 'org)
(define-key org-mode-map (kbd "<M-S-up>") nil)
(define-key org-mode-map (kbd "<M-S-down>") nil)
(define-key org-mode-map (kbd "<M-up>") nil)
(define-key org-mode-map (kbd "<M-down>") nil)
(define-key org-mode-map (kbd "<M-S-left>") nil)
(define-key org-mode-map (kbd "<M-S-right>") nil)
(define-key org-mode-map (kbd "<M-left>") nil)
(define-key org-mode-map (kbd "<S-left>") nil)
(define-key org-mode-map (kbd "<S-right>") nil)
(define-key org-mode-map (kbd "<S-up>") nil)
(define-key org-mode-map (kbd "<S-down>") nil)
(define-key org-mode-map (kbd "<M-right>") nil)
(define-key org-mode-map (kbd "C-<tab>") nil)
(define-key org-mode-map (kbd "C-S-<tab>") nil)
(define-key org-mode-map (kbd "<C-up>") nil)
(define-key org-mode-map (kbd "<C-down>") nil)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1890 次 |
| 最近记录: |