Questions tagged «key-bindings»

键盘快捷键,和弦,键序列,热键或Emacs中按键组合和相应操作之间的任何关联。

2
如何避免在目录中的“ ^”后键入“ space”来向上移动目录?
^是用于移至dired(“上一级目录”)中的父目录的键绑定。 然而,在Gnu Emacs上Windows 7 Professional 64-bit有我的德国的键盘布局,这是不够的输入“^”,但我不得不事后键入空间,使键绑定工作。 如何重新定义键绑定,以避免不得不按下空格并仅使用“ ^”向上移动? C-h k ^<space> 退货 ^运行命令dired-up-directory,该目录是`dired + .el'中的交互式已编译Lisp函数。 它绑定到^,。 (目录目录和可选的OTHER-WINDOW) 在当前目录的父目录上运行Dired。在此缓冲区或另一个缓冲区中找到父目录。如有必要,创建一个缓冲区。

4
如何将您的键绑定到尚未加载的键映射?
我use-package用来管理已安装的软件包,并将bind-key操作分配给我喜欢的自定义键。 我覆盖了大多数默认的Emacs键盘绑定(例如,C-n变为M-k,C-p成为M-i),但是我可以接受其他模式来覆盖我的键盘绑定方案。有时,我希望我的键绑定继续存在。M-k除了默认的Gnus或Helm,我还想表达其他意思。 但是,它们在Emacs启动时彼此冲突,因为如果键映射不存在,我无法将其添加到该键映射中(因为use-package有时会延迟加载程序包)。例如,以下命令会引发错误(例如(void-variable helm-map)),因为Helm和Gnus尚未完全加载。 (bind-key "M-Y" 'helm-end-of-buffer helm-map) (bind-key "M-k" 'helm-next-line helm-find-files-map) (bind-key "M-s" 'other-window gnus-summary-mode-map) 我将所有use-package调用都放在一个文件中,并将bind-key自定义键绑定放在另一个文件中。我不想将绑定放入use-package调用中,因为也许我想将自定义键绑定方案发布为独立程序包。如果我希望安装我的方案的人也改写了Helm和Gnus本地键绑定,该怎么办? 我如何使用来管理本地模式的键绑定bind-key,以便即使最近装入程序包也设置所有键,并且所有键设置都在一个文件中?

1
如何在特定的邪恶状态下为模式设置按键绑定?
我有一套键绑定,既用于(Evil)的插入模式,web-mode又php-mode用于插入模式。所以我不能使用set-local-map。因为在正常模式下,相同的键将随后调用其他命令。因此,绑定evil-insert-state-map仅需处于活动状态。 我有以下内容: (eval-after-load 'php-mode '(progn (define-key evil-insert-state-map (kbd "C-<next>") (lambda () (interactive) (insert " = "))) (define-key evil-insert-state-map (kbd "C-<prior>") (lambda () (interactive) (insert "->"))))) (eval-after-load 'web-mode '(progn (define-key evil-insert-state-map (kbd "C-<next>") 'zencoding-expand-yas) (define-key evil-insert-state-map (kbd "C-<prior>") 'zencoding-expand-line))) 因此,每次web-mode或php-mode正在加载时,这些键绑定都会被激活。 问题是:假设我有两个打开的缓冲区,一个在中php-mode,另一个在中web-mode。当web-mode缓冲区是当前缓冲区并且我切换到另一个缓冲区时php-mode,web-mode绑定在php-mode缓冲区内部仍然处于活动状态。 我试图通过使用(add-hook 'web-mode-hook [...])和(add-hook 'php-mode-hook [...])而不是在中设置绑定来解决此问题eval-after-load。但是这种解决方案在这种情况下不起作用。 有什么建议么?我真的很感激。

1
为什么emacs不支持按键向上/向下事件
AFAIK emacs keyup/keydown仅支持事件keypressed。结果的一个例子是,当我们要标记一个区域时,我们必须先设置一个标记set-mark-command,然后可以通过在该点周围移动来标记该区域。尽管这确实是一个有趣的功能,因为您不必在标记文本时按住Shift键,但是有时希望像其他编辑器一样具有相同的行为。这个问题是为了理解为什么emacs不支持这个功能以及为什么它被认为更好。还有一种意识形态的方法如何解决emacs中的问题?

3
继续移至行尾
键绑定的默认设置C-a/C-e仅适用于一件事,移至该行的开头/结尾,是否有任何软件包可以使Emacs像这样进行操作: 如果我不在一行的末尾,C-e将转到该行的末尾,否则,转到下一行的末尾 如果我不在一行的开头,C-a将转到该行的开头,否则转到下一行的开头。 关键是您可以一直按一下C-a/e以转到每一行的开头/结尾,而无需动手指即可到达C-n/p。 并使用prefix(C-u),它们将以相反的方向转到行的开头/结尾。

1
如何从按键“代码”回到键盘的等效性?
我有以下文档: mc/keymap is a variable defined in `multiple-cursors-core.el'. Its value is (keymap (67108903 . mc-hide-unmatched-lines-mode) (27 keymap (118 . mc/cycle-backward)) (22 . mc/cycle-forward) (return . multiple-cursors-mode) (7 . mc/keyboard-quit)) Documentation: Keymap while multiple cursors are active. Main goal of the keymap is to rebind C-g and <return> to conclude multiple …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.