ElixirSublime 代码补全功能的异常问题.
最开始的问题是:
1 | Traceback (most recent call last): File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 358, in on_query_completions res = callback.on_query_completions(v, prefix, locations) File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 270, in on_query_completions if not session.send('COMPLETE', expand_selection(view, locations[0], aliases=aliases)): File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 189, in send self.socket.send(str.encode(cmd)) AttributeError: 'NoneType' object has no attribute 'send' Traceback (most recent call last): File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 311, in on_activated_async callback.on_activated_async(v) File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 255, in on_activated_async self.on_load_async(view) File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 260, in on_load_async ElixirSession.ensure(os.path.dirname(filename)) File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 160, in ensure session.connect() File "/Users/user/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/elixir_sublime.py", line 179, in connect self.socket, _ = _socket.accept() File "./socket.py", line 135, in accept socket.timeout: timed out |
ElixirSublime日志
1 | <_io.TextIOWrapper name='/var/folders/m3/vn1yyrfx7l36cq6p8msc6wt80000gn/T/ElixirSublime.log' mode='w' encoding='US-ASCII'> |
通过Sublime的日志文件看到ElixirSublime使用了一个Mix项目~/Library/Application Support/Sublime Text 3/Packages/ElixirSublime/sublime_completion
,
其中需要的依赖poison
没找到, 我就进入这个执行了一下:
1 | mix deps.get |
结果又冒出一个证书问题.
上述问题, 请参考Elixir 在Mac OS X上安装Hex.pm服务器证书不信任的问题