- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
大家好,
我可信赖的老 Carbon Emacs 养成了一个令人沮丧的习惯:当我使用 C-s 时,迷你缓冲区提示输入搜索字符串,但它没有聚焦。显然,输入一个字符串不会做任何事情。我不知道当时哪个缓冲区有焦点。
当我按 C-g 时,搜索像往常一样被取消。当我按下 Return 时,I-search 提示变成 Search 提示,迷你缓冲区重新获得焦点。 更新 --- 当我输入 C-w 时,当前单词像往常一样设置为搜索字符串,随后的 C-s 按预期推进搜索。
据我所知,我没有更改 .emacs 文件中的任何内容,也没有自定义任何内容。 emacs 的版本是一样的,操作系统也是一样。此行为在重新启动 emacs 后仍然存在。即使是 emacs -q 也无法解决。
更新 -- 结果发现“焦点”不是正确的词;使用 i-search,焦点停留在您正在搜索的缓冲区上,但迷你缓冲区会回应搜索词。嗯,它应该,但它没有。因此,以下代码片段看错了方向。
我试过这个片段来重新获得对迷你缓冲区的关注:
(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)
但是没有用。它在其他情况下就像一个魅力,但不适用于增量搜索......更新 - 这是意料之中的。
有没有人知道发生了什么,或者有找到它的技巧?这真的很烦人......
详情
好消息是这个问题已经解决了。坏消息是我不知道如何:-(
坏消息是它又回来了。我还意识到上面的代码片段确实有帮助,因为迷你缓冲区并没有真正获得焦点。
最佳答案
请注意,当您运行 C-s 时,M-e 提供了一种编辑搜索模式的方法,但它比让 C-s 按预期工作效率低得多...
我遇到了完全相同的问题(在两台不同的 Lion 机器上),我不明白出了什么问题,但我可以告诉你:
我使用几种“输入法”,即几种键盘映射:法语和美式扩展。我选择了 OS X 选项,允许根据当前应用程序进行键盘映射(例如,我通常使用美国的 Emacs,法语的邮件)。
法语映射正常,
如您所述,美国扩展映射失败,
在同一个 Emacs session 中,从继续到另一个保留了不变性:法语有效,美国扩展已损坏,
好消息是:US not-extended 似乎工作正常! Maybe (maybe) C-s 是美国 OS X 上的一些前缀,用于某些多键字符的扩展映射,并且在 OS X 之间开始了一些非常糟糕的交互,可能期待下一个字符部分多键序列,以及从中窃取它们的 Emacs。胡乱猜测。
关于macos - 碳 Emacs : no `focus' in minibuffer on incremental search,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5648559/
场景: 我开始输入 M-x 来输入命令 我切换到另一个 emacs 窗口/缓冲区,因为我意识到我在错误的窗口中执行命令 我开始再次输入 M-x 以在正确的窗口中执行命令 结果:我收到可怕的“命令试图在
我对 emacs 相当陌生,当我认为它不应该保持事件状态时,我遇到了 minibuffer 保持事件状态的问题。我对“其他窗口”有以下映射: (global-set-key (kbd "M-s M-
我一般使用 ido-switch-buffer ,但有时当候选人太多时,helm-buffers-list是可取的。但是脱离ido很麻烦, 调用 helm 并重新输入丢失的信息。 所以我写了这段代码,
当在接受正则表达式并提供 C-p/C-n 历史导航的几个命令中时,我试图重新定义用于导航历史的键。除了 C-p/C-n 之外,我还想使用其他键。例如,当使用发生或替换正则表达式时,C-p 和 C-n
我想从 dired-mode 打印通过使用 P .这适用于我通过 lpr-switches 设置的默认打印命令,但我经常想编辑命令。例如,如果 P建议 lpr , 我要加 -o number-up=2
我想在 Emacs 中设置一种 ISearch 模式替换,我可以在每次输入到 minibuffer 后运行命令。是否可以? 编辑 1: 这个想法是用我自己的模式完全取代 ISearch。理想情况下,我
我正在使用 ido mode 用于 Emacs 23 中的文件和缓冲区切换。 如果目录中的文件超过一行,则以下选项允许调整迷你缓冲区的大小: (setq resize-mini-windows t)
我正在使用 GNU Emacs 24.4.1(编辑:也见于 24.5.1)。来自 vc-mode(我认为)的一些旧输出出现在 minibuffer 中: Auto-merging foo/bar 我目
我正在尝试转auto-complete在小缓冲区中: (add-hook 'minibuffer-setup-hook 'auto-complete-mode) 我得到的是auto-complete在
我已经开始在 30 英寸显示器上编码,想知道是否可以在 emacs 中将 minibuffer 移动到屏幕顶部?谷歌搜索没有显示任何内容。 干杯 尼迈·埃瑟里奇 最佳答案 查看 default-min
我想做的是,当我发现自己使用一个提示我输入值的函数时,这个值总是正确的,以便能够将函数绑定(bind)到一个键并自动接受答案,在迷你缓冲区中模拟 RET。 以“ido-switch-buffer”为例
当我使用 query-replace将“abc”替换为“def”,然后调用 query-replace再次,我得到一个看起来像这样的迷你缓冲区,都在同一张脸上: Query replace (de
我使用 Ido 模式,也使用 Ergoemacs 模式,它绑定(bind)了 find-file命令 C-o。当您浏览文件时,您可以通过在 minibuffer 中按 C-x C-f 来暂时禁用 Id
我看到我可以通过在 minibuffer 中使用“M-p”来返回命令的历史记录。但我想查看我在 minibuffer 中使用的所有命令。 谢谢。 最佳答案 变量是 command-history ,不
我是 Emacs 的新手。我在 Windows 上运行 emacs。当我通过单击 runemacs.exe 启动 Emacs 时,我有一个欢迎窗口。现在要创建一个新文件并进行一些实验编辑,我按 C-x
这个问题在这里已经有了答案: is it possible to move the emacs minibuffer to the top of the screen? (4 个回答) Using g
我写emacs lisp代码如下: #!/usr/bin/emacs --script (setq input (read-minibuffer "please input your name:")
我想为 minibuffer 完成列表设置一个特定的窗口。目前,我在此配置中有 3 个窗口: ______ | | | |____| | |____|_| 在这种情况下,我想将左下角的窗口用于
我可以通过点击 M-! 快速运行 shell 命令。我想做的一件事是对当前文件执行 shell 快速操作。一个例子是通过 perforce check out 文件: M-! p4 编辑缓冲区文件名
我是一个邪恶的 Emacs 用户。然而,当我发现普通模式比常规 Emacs 命令更方便时,我真的只使用普通模式进行精美的 Vim 风格编辑。 (主要是花哨的批量编辑/猛拉/删除)。然而,我也是 min
我是一名优秀的程序员,十分优秀!