【发布时间】:2013-10-05 04:42:12
【问题描述】:
大家好,
我信任的老 Carbon Emacs 养成了一个令人沮丧的习惯:当我使用 C-s 时,minibuffer 会提示输入搜索字符串,但它并不集中。显然,输入字符串不会做任何事情。我不知道当时哪个缓冲区有焦点。
当我按 C-g 时,搜索会照常取消。当我按下 Return 键时,I-search 提示变成了 Search 提示,并且 minibuffer 重新获得焦点。 更新 --- 当我输入 C-w 时,当前单词像往常一样被设置为搜索字符串,随后的 C-s 按预期推进搜索。
AFAIK,我没有更改 .emacs 文件中的任何内容,也没有自定义任何内容。 emacs 的版本是一样的,操作系统也是一样的。此行为在 emacs 重新启动后仍然存在。连 emacs -q 都解决不了。
更新 -- 事实证明 `focus' 不是正确的词;使用 i-search,焦点停留在您正在搜索的缓冲区上,但迷你缓冲区会回显搜索词。嗯,它应该,但它没有。所以,下面的 sn-p 看错了方向。
我已经尝试过这个 sn-p 来重新获得对 minibuffer 的关注:
(defun minibuffer-refocus ()
"Refocus the minibuffer if it is waiting for input."
(interactive)
(when (active-minibuffer-window)
(message "")
(select-window (minibuffer-window))))
(global-set-key (kbd "C-M-g") 'minibuffer-refocus)
但无济于事。它在其他情况下就像一个魅力,但不适用于增量搜索... 更新 -- 这是意料之中的。
有没有人知道发生了什么,或者有什么技巧可以找到它?这真的很烦人...
详情
- 2008 年 11 月 1 日 leopard.local 上的 GNU Emacs 22.3.1(i386-apple-darwin9.5.0,Carbon 版本 1.6.0)
- OSX 10.6.7
- C-s 运行命令 isearch-forward
更新
好消息是解决了。坏消息是我不知道怎么做:-(
更新
坏消息是它又回来了。我也意识到上面的 sn-p 确实有帮助,因为迷你缓冲区并没有真正获得焦点。
【问题讨论】:
-
Messages 缓冲区有什么线索吗?
-
@vpit3833 不幸的是,'messages' 中没有一个窥视。
-
也许您无意中进入了递归编辑?
-
@vpit3833 不。它从一开始就是正确的。和其他东西(如替换)一样工作。叹。仍然没有解决这个问题......考虑切换到普通的 emacs(可可构建)或 Aquamcs。切换的愚蠢理由:-(
-
如果您仍在使用 Emacs 22,仅此一项就是切换到至少 23(如果不是 24)的充分理由。emacsformacosx.com 是 OSX 用户的首选站点。跨度>
标签: macos ubuntu emacs carbon-emacs