2011-04-29 172 views
2

我想使用ipy.vim脚本来设置一个小的python开发环境,但我遇到了连接问题。当我键入ipy_vimserver.setup(“演示”)我得到这个错误:问题与ipy.vim脚本

Exception in thread Thread-1: 
Traceback (most recent call last): 
    File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner 
    self.run() 
    File "/usr/lib/pymodules/python2.6/IPython/Extensions/ipy_vimserver.py", line 109, in serve_me 
    self.listen() 
    File "/usr/lib/pymodules/python2.6/IPython/Extensions/ipy_vimserver.py", line 93, in listen 
    self.socket.bind(self.__sname) 
    File "<string>", line 1, in bind 
error: [Errno 98] Address already in use 

当我键入它第二次,一切都很好,但是当我启动GVIM的F4/F5命令不执行任何操作的状态,他们无法连接到Ipython服务器。

有什么建议吗?

回答

0

问题:

看堆栈跟踪的最后一行:error: [Errno 98] Address already in use

说明:

"Address already in use"错误的一个很好的解释可以在这里找到:"Bind: Address Already in Use"

可能的解决方案:

由于我没有试过ipy.vim设置自己,从网络的角度来看,一个快速的建议是:

  • 关闭/杀了两个服务器(ipython server)和客户端(vim running ipy.vim)。
  • 重新启动ipython server
  • 运行vim与ipy.vim并尝试调试。

附加信息:

  • 在Linux/Unix机器,超时值在​​和/proc/sys/net/ipv4/tcp_fin_time
  • 定义在Windows机器上,这在HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpTimedWaitDelay设置。更多的细节在这里:TcpTimedWaitDelay
0

如果我运行完全相同的代码,我得到相同的错误。如果我将名称从“demo”更改为例如“cookies”,它就可以工作。嗯....

0

这发生在已经有一个套接字名称,你试图创建,在这种情况下,'演示'。你需要做的ipy_vimserver.setup之前将其删除 - 在你的情况下,插座要删除的文件是~/.ipython/demo

(我ipy.vim的作者之一)