Emacs在dired中禁用鼠标-1
在Emacs 23.2.1中,在直接模式下,鼠标-1(鼠标左键)执行Emacs在dired中禁用鼠标-1,emacs,mouseevent,dired,Emacs,Mouseevent,Dired,在Emacs 23.2.1中,在直接模式下,鼠标-1(鼠标左键)执行访问其他窗口中的文件。它还会将形状更改为手指,并在光标悬停在文件名上时高亮显示文件名。如何禁用访问文件和文件名突出显示?我想让mouse-1做它通常的事情:选择文本 如果在文件名或目录名之外的区域中单击开始,我仍然可以选择文本。但是我只想标记文件名,前面没有空格。我只是通过将其自定义为nil来关闭mouse-1-click-follows-link。(也可以将其设置为长时间限制值。) 或者,如果只想对直接缓存执行此操作,可以执行
访问其他窗口中的文件
。它还会将形状更改为手指,并在光标悬停在文件名上时高亮显示文件名。如何禁用访问文件和文件名突出显示?我想让mouse-1做它通常的事情:选择文本
如果在文件名或目录名之外的区域中单击开始,我仍然可以选择文本。但是我只想标记文件名,前面没有空格。我只是通过将其自定义为nil
来关闭mouse-1-click-follows-link
。(也可以将其设置为长时间限制值。)
或者,如果只想对直接缓存执行此操作,可以执行以下操作:
(add-hook 'dired-mode-hook
(lambda ()
(set (make-local-variable 'mouse-1-click-follows-link) nil)))
但通常最好命名一个在钩子上使用的函数(例如,删除它更容易):
如果您有最新版本的Emacs,其中定义了setq local
,那么您可以在hook函数中使用(setq local mouse-1-click-follows-link nil)
,而不是(set(make local variable'mouse-1-click-follows-link)nil)
解决了主要问题。然而,文件名仍然突出显示,这使得我很难看到我选择的是哪个部分。通过添加(defun dired insert set properties(beg end)nil)覆盖内部mouse.el
函数
高亮显示和手指光标也消失。这是正确的方法吗?我建议您只需自定义面高亮显示
,它用于属性鼠标面
提供的高亮显示,这样您可以看得更清楚。突出显示的原因是:您可以单击mouse-2
(不仅仅是mouse-1
)或点击链接(突出显示的文本)上的RET
,以访问文件或目录。(如果使用,则整行高亮显示,这有助于通过眼睛对齐信息。)如果确实不希望高亮显示,则选择“是”,只需更改dired insert set properties
。查看mouse.el
我刚刚了解到,默认情况下,我可以在dired模式下选择文件名的一部分:我只需单击并移动光标。但是,由于文件名高亮显示,很难看到我选择的内容。还想杀死这个“功能”:哪个普通人用鼠标点击打开一个文件?
(defun foo ()
(set (make-local-variable 'mouse-1-click-follows-link) nil)))
(add-hook 'dired-mode-hook 'foo)