使用Emacs 24.3.1和ECB 2.40运行Ubuntu 12.10.除了我几天前运行的apt-get update && upgrade之外,我不知道究竟是什么引起了这种情况.
它开始时,我重新启动计算机,然后运行Emacs并执行MX ecb-activate我会收到以下错误:
ECB 2.40 - 错误:ECB只能与cedet [1.0pre6,1.1.9]一起使用!请安装它并重新启动Emacs!
我尝试了几件事,但还没弄清楚究竟是什么导致了这个问题.几天前我做了一个apt-get update &&升级IIRC,它确实更新了一堆软件包,所以这是可能的.我运行MX cedet-version并获得:
CEDET Version: 2.0
Requested File Loaded
Package Version Version Version
----------------------------------------------------------
cedet: 2.0 nil ok
eieio: 1.4 nil ok
semantic: 2.2 nil ok
srecode: 1.2 nil Not Loaded
ede: 1.2 nil Not Loaded
speedbar: 1.0.4 nil 1.0
cogre: 1.2 nil Not Loaded
cedet-contrib: 1.2 nil Not Loaded
Run Code Online (Sandbox Code Playgroud)
关于这里发生了什么的任何想法?
在 Ubuntu 12.10 上运行 Emacs (24.3.1) 和 Tramp (2.2.6-24.3) 时,我将通过 Tramp 打开一堆远程文件,例如:
m-x find-file: /scp:user@example.com:~/file.txt
Run Code Online (Sandbox Code Playgroud)
在我的笔记本电脑上进行暂停/恢复循环后,我将返回 Emacs 并开始在打开的缓冲区中工作。一旦我保存或自动保存,它就会冻结,并会显示“args out of range(000 - 000)”(此消息来自内存,零代表它显示的数字,下次我收到它时将对其进行编辑)错误并且不保存。任何后续尝试都将挂起。
另外,我无法在 find-file 中使用相同协议打开任何其他文件,如上面的“scp”情况。
我发现的一些解决方法是首先删除 ~/.emacs.d/tramp 文件,该文件有时有效,有时在多个挂起/恢复周期后它不存在。
另一个解决方法是在打开文件时使用其他协议,因此在上面的查找文件行中我将使用“ssh”或“scpc”。这仅用于打开新缓冲区,而不用于保存当前缓冲区,因此我通常会关闭文件的缓冲区,然后使用我提到的不同协议重新打开它。
有什么建议么?