Ubuntu 14.04、HP ZBook GNU Emacs 23.1.1(x86_64-redhat-linux-gnu、GTK+ 版本 2.18.9)
当我在缓冲区中输入内容,或者只是用 ^N、^P 等移动光标时,emacs 经常会弹出一个“缓冲区菜单”窗口(这是一个单独的 X 窗口)。为什么会发生这种情况?我该如何阻止它?
答案1
我刚刚遇到了同样的问题。您可以使用“Ch l”找出刚刚发生的按键(在关闭窗口后)。在我的情况下,它是 C-mouse-1,因为在我的笔记本电脑上,鼠标垫正好是我打字时喜欢将手掌放在的地方。即使我使用普通鼠标,它仍然会处理鼠标垫。您可以使用 global-set-key 禁用它,使 C-mouse-1 未定义(只需不提供新设置)。
答案2
快速解决方法:在显示此行为的 emacs 窗口中键入内容之前,将鼠标光标移动到窗口的 Ctrl-mouse-1 无效的区域(例如顶部的“窗口句柄”区域)。现在您可以键入而不必担心缓冲区菜单会不时弹出。(我希望)。
永久修复位于 emacs 之外的某个地方,要么在窗口管理器中,要么在 X11 配置中。默认情况下,emacs 具有变量:使指针不可见设置吨(真)这将导致键入时出现正确行为。emacs 外部的某些因素导致 emacs 仅在键入时偶尔隐藏指针。
希望这可以帮助。
答案3
Len 的回答为我指明了正确的方向,但我仍然花了很长时间才弄清楚如何实现它,这个命令对我有用,可以阻止触摸板触发缓冲菜单:
(global-unset-key (kbd "C-<down-mouse-1>"))
将它放入您的初始化文件中,您就不会再遇到触摸板问题。