TRAMP 是 Emacs 的一个很重要的组件,可以用于无缝地处理 ssh 、ftp 等远程文件编辑(甚至远程编译、调试等),还包括本地的 sudo 编辑文件等,总之是一个很强大的组件。今天要写这篇关于禁用 TRAMP 的文章,让我一时觉得真是光阴荏苒。
第一是关于 Emacs ,因为我实际上已经好久没有用 Emacs 了,有时候发现不知为什么好像在有意无意地避开它。不过最近编辑 LaTeX 文件比较多,尝试了很多编辑器,最后还是忆起 Emacs 的 cdlatex.el 最趁手,用其他的编辑器来写 TeX 简直就是体力活,所以即使在 Windows 下,也还是决定再启用 Emacs 。第二是关于 TRAMP ,我曾经是很喜欢这个东西的,因为它确实是很好用,如果在中文 Google 上搜索 Emacs TRAMP 的话,第一条的结果依然还是我很古老的那个 blog 上 4 年前的那篇半翻译半整理的文章。
不过这次我真的要禁用 TRAMP 了,因为我是在 Windows 下用 Emacs ,包括 ssh 、sudo 等功能都处于鸡肋或者非常难以配置的状态,而且我也不需要,毕竟我的目的就是编辑 TeX 文件。当然,最主要的原因还是它速度太慢,启动之后第一次按下 C-x C-f 打开文件,总是会在 mini-buffer 显示 loading tramp… 然后卡住好几分钟。
我不知道它为什么会这么卡,不过这么 fancy 的东西在 Windows 上比较卡也许也是正常,因为我还开着 ido-mode 呢,或许 Windows 路径里的盘符看着像 ssh 主机地址的 URL 吧,总之现在我只是想禁用它。在我写了上面提到的那篇文章之后不久,TRAMP 成功进入了 Emacs 核心,成为重要组件,结果似乎没有什么比较直接的禁用方法。我搜索了一下,发现网上有讨论说可以有一个选项让 TRAMP 把操作交给 ange-ftp 去做,就能达到间接禁用的目的了。结果下面就有人跟帖说,真好!这么重要的信息应该写到随 Emacs 发布的那个 NEWS 文件里去。后面有人又跟帖说,已经在里面了,祝你好运。 😀
然后这个其实已经写入到 TRAMP 的 FAQ 里去了,在最后一条:
How can I disable tramp?
Shame on you, why did you read until now?
If you just want to have Ange-FTP as default remote files access package, you should apply the following code:
(setq tramp-default-method "ftp")Unloading tramp can be achieved by applying M-x tramp-unload-tramp. This resets also the Ange-FTP plugins.
用了这个方法之后其实也没有完全禁用 TRAMP ,不过现在速度确实变快了很多。原本我以为把 file-name-handler-alist 设置成空就可以完全杜绝,后来发现还是不行。Emacs 果然还是非常深奥啊,不过现在至少是能忍了。 :p
话说我唯一一次使用Tex是编辑排版我的简历。后来很想用Tex写论文,但老师明确要求需要word/.doc文件,令人很无奈。
其实我是使用vim的,因为当年尝试emacs,觉得它太难了……
PS:你的博客主题改版了?满眼都是文字,仿佛很充实
嗯,换了一个主题,原来那个不支持嵌套的 reply 。这个主题就是看着有点挤,其他方面我都还挺喜欢的,先用一段时间看看。
在CSS里把行距调大点会好点吧
感觉字挤在一起了:P
嗯,这样也许稍微好一点了。
呵呵,看一眼大牛们的讨论,(和牢骚):
http://mybiasedcoin.blogspot.com/2010/05/poll-conference-acceptances.html
囧,抱歉发错地方了,本想回在那篇讨论”peer review”的里面。
tramp 在 linux 下一样的慢,还能卡死 emacs
为什么你们的tramp会慢得这么夸张啊??
一直觉得ido加tramp不慢呀。
不过在win32平台,禁掉tramp也没什么坏处。