ipy.vim脚本有问题

时间:2011-04-29 17:03:25

标签: python vim ipython

我正在尝试使用ipy.vim脚本来设置一个小的python开发环境,但我遇到了连接问题。当我输入ipy_vimserver.setup(“demo”)时,我收到此错误:

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服务器。

任何建议?

3 个答案:

答案 0 :(得分: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
  • 使用ipy.vim运行vim并尝试调试。

其他信息:

  • 在Linux / Unix计算机上,超时值在/proc/sys/net/ipv4/tcp_keepalive_time/proc/sys/net/ipv4/tcp_fin_time
  • 中定义
  • 在Windows计算机上,这是在HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpTimedWaitDelay中设置的。更多详情请点击此处:TcpTimedWaitDelay

答案 1 :(得分:0)

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

答案 2 :(得分:0)

如果已经有一个带有您要创建的名称的套接字,则会发生这种情况,在本例中为“demo”。您需要在执行ipy_vimserver.setup之前删除它 - 在您的情况下,要删除的套接字文件是~/.ipython/demo

(我是ipy.vim的作者之一)