上一篇文章提到使用TRAMP进行远程的文件管理以及coding,现在我基本上能够使用本地emacs进行远程工作了。这样做的好处是,如果你有多台服务器,你不必为每台服务器配置一遍emacs,不必考虑不同服务器上emacs的版本问题。
但是,我发现cscope在远程条件下不能建立索引,更不能查找变量、函数什么的了。google了好久,在这里看到了答案。大概解释一下。
先说做法,编辑你load-path下的xcscope.el,修改以下三个地方:
1991行
1 | (apply 'start-process "cscope" outbuf |
改为
1 | (apply 'start-file-process "cscope" outbuf |
2001行
1 | (apply 'call-process cscope-program nil outbuf t options) |
改为
1 | (apply 'process-file cscope-program nil outbuf t options) |
2124行
1 | (apply 'start-process "cscope-indexer" |
改为
1 | (apply 'start-file-sprocess "cscope-indexer" |
完成修改之后,就能够在远端建立索引,查找变量什么的了。不过这样做有个毛病,每次进行cscope操作的时候都要输入密码。额,很无奈的一件事情,cscope每次都会新开一个shell,然后输入密码,唉,为什么不缓存一下密码呢….
p.s原文地址:http://chunyemen.org/archives/448, 欢迎访问纯爷们的小生活