我最近安装了Ropemacs的hg tip版本,我想在使用TRAMP编辑远程文件时使用它。 有人做过这个吗? 当我尝试使用M-/
来完成变量名时,我被要求输入Rope项目根目录
,然后我输入:/ssh:myhost:/path/to/myproject/
,但是它给出以下错误:
Opening [/ssh:myhost:/path/to/myproject/] project ...
pymacs-report-error: Python: Traceback (most recent call last):
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/Pymacs/pymacs.py", line 147, in loop
value = eval(text)
File "<string>", line 1, in <module>
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/decorators.py", line 53, in newfunc
return func(*args, **kwds)
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/interface.py", line 254, in code_assist
_CodeAssist(self, self.env).code_assist(prefix)
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/interface.py", line 538, in code_assist
proposals = self._calculate_proposals()
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/interface.py", line 597, in _calculate_proposals
self.interface._check_project()
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/interface.py", line 448, in _check_project
self.open_project()
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/decorators.py", line 53, in newfunc
return func(*args, **kwds)
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/ropemode/interface.py", line 88, in open_project
self.project = rope.base.project.Project(root)
File "/home/saltycrane/lib/python-environments/default/lib/python2.6/site-packages/rope/base/project.py", line 134, in __init__
os.mkdir(self._address)
OSError: [Errno 2] No such file or directory: '/ssh:myhost:/path/to/myproject'
我想ropemacs不支持使用TRAMP的远程文件。不知道有没有人找到了解决方法。也许需要一些自定义的elisp?或者我应该使用sshfs并将远程文件系统挂载到本地...
我在一个虚拟环境中安装了ropemacs,位置为/home/saltycrane/lib/python-environments/default
。我正在Ubuntu Lucid上使用GNU Emacs 23.1.50.1。
需要提到的是,在不使用TRAMP时,使用M-/
的补全功能可以正常工作。