当使用rope-goto-definition和rope-show-doc时,Emacs会挂起

时间:2014-01-20 14:33:06

标签: python emacs rope ropemacs pymacs

我已经安装了ropemacs作为python开发包的emacs-for-python集合的一部分。

当我使用rope-goto-definitionrope-show-doc函数转到/显示库符号时,我可以或多或少地始终让emacs挂起。

为了启用库的内省,我将以下内容添加到$PROJECT_ROOT/.ropeproject/config.py

VIRTUAL_ENV = "$HOME/.virtualenvs/$PROJECT_ROOT/"
ACTIVATE_FILE = VIRTUAL_ENV + "bin/activate_this.py"
execfile(ACTIVATE_FILE, dict(__file__=ACTIVATE_FILE))

跳转到项目本地定义时似乎永远不会发生,并且不一定总是在跳转到库函数时。然而,一旦我在图书馆里四处寻找,它似乎在一两次额外的跳跃之后一直发生。也就是说,我还没有真正找到一个有用的模式。一旦emacs挂起,我唯一能做的就是多次执行C-g,直到emacs响应,然后快速杀死 * Pymacs * 缓冲区。如果我这样做太慢,它会再次冻结。在重新启动Pymacs之后,我有时能够跳转到之前使其冻结的符号,但大多数时候跳转到相同的符号将导致它立即再次冻结。一旦我重新启动 * Pymacs * 一次,python集成似乎也会稍微不稳定,除了我输入几个字符之外,有时没有明显的原因。

我怎样才能继续调试呢?

我从它的git存储库(rev. a5274)安装了emacs-for-python。我的emacs来自http://emacsformacosx.com/,版本为24.3。

编辑:等待超过十五分钟后,pymacs终于抛出了一个错误。这是$ HOME / Library / Saved Application State / com.adobe.flashplayer.installmanager.savedState:

中的权限错误
  

打开[$ HOME]项目...完成pymacs-report-error:Python:   OSError:[Errno 13]权限被拒绝:'$ HOME / Library / Saved   申请状态/ com

由于某种原因,该目录由root拥有。

现在似乎跳到符号始终有效,但通常情况下它很慢,正如伊克巴尔安萨里所暗示的那样。

进一步调查我试图编译emacs-for-python安装目录(C-u 0 M-x byte-recompile-directory)的内容。看起来它可能会缩短查找时间,但有时它仍然非常慢。

现在最令人难以理解的是,跳转到定义所需的时间并不一致。有时立即完成的同样的跳跃可能在其他时间需要几分钟。

0 个答案:

没有答案