Questions tagged «key-bindings»

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

2
在同一缓冲区中使用两个主模式映射
我遇到了一些情况,其中非常需要将一种主要模式的键盘映射用作另一种主要模式的后备键盘映射。例如: 我在一些组织文档中写了很多LaTeX,因此latex-mode在编辑时轻松使用命令 会很棒org-mode。 我经常去Markc支持的irc会议室,因此将markdown-modekeybinds添加到中也很不错erc-mode。 在这两种情况下,此额外的键盘映射都应作为后备(这就是为什么我不能仅使用次要模式的原因)。我不希望乳胶命令覆盖任何org-mode键。我想要的是: 如果键是在latex-mode-mapAND中定义的,并且未在中定义,请 org-mode-map使用latex-mode-mapbinding。 问:如何将键盘映射设置为主要模式的后备键盘映射? 或 问:如何在不覆盖任何内容的情况下将键从一个主模式映射复制到另一个主模式映射? 只是要清楚。我知道我可以一一定义这些键,但是拥有一个自动化的解决方案将更加方便。

1
定义不带kbd的Control + Shift键
我正在尝试向其他人的软件包添加一些功能,因此我想尊重他们的模式。不幸的是,这些模式之一是不使用kbd。 我需要将一个函数绑定到C-S-b,但是我不知道如何。我知道如何使用单个修饰符(例如"\S-b")来执行此操作,但是我无法使其与多个修饰符一起使用。我知道我可以评估(kbd "C-S-b")并使用其输出([33554434]),但我想更容易阅读。 这是我尝试过的一些方法: (define-key emacs-lisp-mode-map "\C-\S-b" 'test-command) ;;; Invalid modifier (define-key emacs-lisp-mode-map [C-S-b] 'test-command) ;;; Does nothing (define-key emacs-lisp-mode-map "\C-B" 'test-command) ;;; Binds C-b

2
将普通键转换为修饰键
我有一个键盘,出于某种莫名其妙的原因,它具有一个将丹麦元符号发送到OS X-的键§。移位时,它将发送加号/减号- ±。 是否可以在Emacs中查看§密钥并将其转换为Hyper或Super?因此,如果我按住该§键并按f,它将H-f在Emacs中激活。 我已经尝试了以下方法,但不起作用: (define-key key-translation-map (kbd "§") (kbd "<Hyper>")) 它只是<Hyper> is undefined在按下键时说,根本不充当修饰符。 这也行不通: (define-key key-translation-map (kbd "§") "<Hyper>") 只是把§钥匙变成了<钥匙。

4
输入希腊语重音(')时出现问题“ <dead-acute>未定义”
我开始使用Emacs,并用希腊文写了一段文字。问题在于,对某些字母(ό,ύ,ύ,ί,ύ)使用的重音不起作用! 通常是通过按;(我的意思是按L旁边的键)然后插入要插入的字母来插入。这是希腊键盘的标准配置。当我按;它说: &lt;dead-acute&gt; is undefined. C-h c ; 说同样的话。 我该怎么做才能使用此密钥? 它可以在其他应用程序(例如浏览器)中使用。我使用Ubuntu 14.04,并安装了它的emacs软件包(Emacs 24.3.1)。

4
组织模式:如何创建“组织模式标记”键绑定?
我知道我可以使用*bold*,/italic/,_underline_,=verbatim=,~code~,和+strike-through+来标记适用于文本在org-mode。但是,如何创建按键绑定以将这些更改应用于文本区域?例如,如果我想将某些文本加粗,是否有比这更简单的方法? 导航到文本的开头 给它加上前缀 * 导航到文本结尾 追加一个*? 我似乎找不到任何“加粗”一段文本的命令,例如org-make-region-bold。有这样的命令吗?

1
减少时间,直到按键后在回声区域中显示“ Cx-”
当我尝试通过输入命令时C-x,回声区显示此前缀键的时间为1-2秒C-x-。我对Emacs还是很陌生,所以这常常使我感到困惑,而且我迷路了。 在ESC关键的作用与此类似,所以当我试图逃跑一些半输入的命令的时候,我往往最终循环压制ESC之后再次1-2次我看到ESC-在回声区。 有没有一种方法可以减少在回声区域显示反应所花费的时间,我是在做错什么,还是出于某种目的?

2
Emacs上通常可以用来绑定键盘宏的未使用键是什么?
我读的是通常的方式绑定键键盘宏C-x C-k 0来9和A到Z。 因此,例如,在定义键盘宏之后,我们可以键入内容 C-x C-k b,Emacs将要求绑定键。并且为此目的保留的键是C-x C-k 0to 9和Ato Z。 但这涉及许多击键。有什么好的按键可以绑定到此?我发现我可以使用Emacs GUI版本将其绑定到运行Ubuntu Virtual Machine的Mac上C-&lt;return&gt;或Option+ Enter。这样就可以了,但是Emacs终端版本和Mac上的本机Emacs都将C-&lt;return&gt;或Option+ Enter视为just &lt;return&gt;,因此不起作用。 Emacs上通常可以用来绑定键盘宏的未使用键是什么? 又或者,是否可以显示所有未绑定到Ctrl和的简单键Meta?

2
是否有用于定义键盘绑定的标准/推荐语法?
我已经看到了以下所有定义键盘绑定的内容。所有这些工作(至少在MS Windows上有效)。我不知道是否还有另一种方法可以做同样的事情。 我想知道是否有定义键盘绑定的标准或推荐方法,是否建议避免其中的某些方法。 (global-set-key "\M-r" 'some-command) (global-set-key [(meta r)] 'some-command) (global-set-key [?\M-r] 'some-command) (global-set-key (kbd "M-r") 'some-command)

2
如何绑定C- [真正?
C-[等效于美式英语键盘上的转义键,因此,任何对其进行绑定的尝试都会破坏M-行为。 Emacs是没有麻烦告诉&lt;escape&gt;,并C-[在GUI框架分开。以下工作正常,并且从开始的绑定M-仍然有效: (global-set-key (kbd "&lt;escape&gt;") (lambda () (interactive) (message "&lt;escape&gt;"))) 但是,如果我绑定 (global-set-key (kbd "C-[") (lambda () (interactive) (message "C-["))) 突然,emacs发疯了,像M-x断裂一样束缚。此外,按C-[拒绝触发绑定的lambda。有趣的是,C-x @ c [(将修饰符控件应用到方括号中)仍然说C-[ is undefined。 有什么方法可以在C-[不破坏emacs的情况下进行绑定吗?


1
使用功能键作为“粘性”修改键
有没有一种方法可以将功能键(例如&lt;f8&gt;)用作某种超级键按下事件,然后再将下一个击键(例如f)插入,作为s-s?换句话说,这类似于粘性修改键,但仅适用于emacs,而不是os本身。 我了解键和弦模式以及您可以使用这样的组合键(global-set-key (kbd "&lt;f8&gt; b t") 'undo)来保存键盘快捷键的事实。但是我想要一种可以与我现有的超级键绑定一起使用的东西,并且不需要我将来将所有东西都绑定两次(即,一个绑定用于超级键,一个绑定用于功能键)。

2
使用使用包解除绑定键
我正在尝试取消绑定 org-cycle-agenda-files,默认情况下设置为 C-'和C-,。 我选择这样做的武器是use-package package。 在github.com/use-package/bind-key.el 页面上,我发现了以下几行: ;; To unbind a key within a keymap (for example, to stop your favorite major ;; mode from changing a binding that you don't want to override everywhere), ;; use `unbind-key': ;; ;; (unbind-key "c-c x" some-other-mode-map) 这导致我尝试以下变体失败: (unbind-key "C-'" ) (unbind-key "C-," …

1
如何使击键立即显示在回显区域中?
如何使击键立即显示在回显区域中? 例如:当我输入键序列时C-u j,它不会立即显示在回显区域中,但是随后按下键k,我发现我事先在打错字。因此,我认为当我按一些键来调用echo区域的命令以立即显示它们时,对像我这样的新手会有所帮助。

1
如何最有效地导航到组织标题的主要文本的开头或结尾?
使用快速键从一个组织模式标题的开头快速导航到另一个很容易。 假设现在我是标题的开头,并且我想添加到正文中,紧接在TODO关键字之后的开头。然后M-f Space会带我到我想去的地方。如果没有TODO关键字,则为M-f M-b。 如果我想到达标题文本的末尾,则比较棘手。如果结尾没有关键字,并且标题下方没有隐藏的折叠文本,则与一样简单C-e。但是,这种情况很少。如果有折叠文本,但没有关键字,那么我可以做C-e M-b。但如果是一个或两个关键词在标题折叠的结束,那么我会发现自己打字(恐怖)C-e M-b M-b M-b M-f!而且,如果有两个以上的关键字,情况会更糟。 当我一个接一个地跳来跳去并编辑大量标题时,可能要考虑很多事情,这确实弄乱了我的整个流程。理想情况下,在所有这些情况下,我都想重新定义s并e作为快速键来使我准确地想要离开。 有没有人看到这个问题的现有解决方案?我的elisp技能很少,要靠我自己解决这个问题很艰巨。


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.