如何在安装的卷上禁用 emacs 的 vc 集成?

Chr*_*s R 6 git emacs sshfs

我在 OSX (Emacs24) 上运行 Emacs,有时我必须在安装的 sshfs 卷上编辑文件。然而,Emacs 的 vc 集成——特别是 git——在 sshfs 挂载上真的很慢。

我想有选择地禁用 vc-mode,无论是在配置中还是使用 .dir-locals.el。我怎样才能做到这一点?

小智 5

正如 pmr 所提到的,您可以从后端列表中删除 git。

后端默认列表(RCS CVS SVN SCCS Bzr Git Hg Mtn Arch)

在 emacs 中有多种设置变量的方法

只需编辑您的~/.emacs文件并添加以下两行即可解决问题(注意 Git 已从列表中删除)

;; Disable git backend to speed up sshfs file load among other things
(setq vc-handled-backends (quote (RCS CVS SVN SCCS Bzr Hg Mtn Arch)))
Run Code Online (Sandbox Code Playgroud)


pmr*_*pmr 0

我会尝试修改变量vc-handled-backends,我的 Emacs 版本将其描述为:

vc-handled-backends 是“vc-hooks.el”中定义的变量。其值为(RCS CVS SVN SCCS Bzr Git Hg Mtn Arch)

文档:将使用 VC 的版本控制后端列表。将尝试此列表中的条目以确定文件是否处于此类版本控制之下。从列表中删除条目可防止 VC 在访问由该后端管理的文件时被激活。空列表会完全禁用 VC。

您可以自定义此变量。

在 Emacs 23.1 版本中引入了此变量,或者更改了其默认值。