问题与ipy.vim脚本
问题描述:
我想使用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服务器。
有什么建议吗?
答
问题:
看堆栈跟踪的最后一行: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
答
如果我运行完全相同的代码,我得到相同的错误。如果我将名称从“demo”更改为例如“cookies”,它就可以工作。嗯....
答
这发生在已经有一个套接字名称,你试图创建,在这种情况下,'演示'。你需要做的ipy_vimserver.setup之前将其删除 - 在你的情况下,插座要删除的文件是~/.ipython/demo
(我ipy.vim的作者之一)