SublimeREPL:OSError:[WinError 6]句柄无效

时间:2018-07-27 18:39:48

标签: r sublimetext3 sublimerepl

我在SublimeREPL中使用R,但是无法将我的代码发送到R会话。这是我正在使用的键绑定:

{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "selection"}},
{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "selection", "action":"view_write"}},

{ "keys": ["ctrl+alt+enter"], "command": "repl_transfer_current", "args": {"scope": "lines"}},
{ "keys": ["ctrl+alt+enter"], "command": "repl_transfer_current", "args": {"scope": "lines", "action":"view_write"}},

这是Sublime的日志:

command: repl_transfer_current {"action": "view_write", "scope": "selection"}
Traceback (most recent call last):
  File "C:\Program Files\Sublime Text 3\sublime_plugin.py", line 1066, in run_
    return self.run(edit, **args)
  File "C:\Users\~\AppData\Roaming\Sublime Text 3\Packages\SublimeREPL\text_transfer.py", line 132, in run
    for rv in manager.find_repl(external_id):
  File "C:\Users\~\AppData\Roaming\Sublime Text 3\Packages\SublimeREPL\sublimerepl.py", line 470, in find_repl
    if not (rv.repl and rv.repl.is_alive()):
  File "C:\Users\~\AppData\Roaming\Sublime Text 3\Packages\SublimeREPL\repls\subprocess_repl.py", line 209, in is_alive
    return self.popen.poll() is None
  File "./python3.3/subprocess.py", line 930, in poll
  File "./python3.3/subprocess.py", line 1145, in _internal_poll
OSError: [WinError 6] The handle is invalid

1 个答案:

答案 0 :(得分:0)

基于this线程,我通过在is_alive中将subprocess_repl.py设置为True而不是调用self.popen.poll()来解决了这个问题。

def is_alive(self):
    # return self.popen.poll() is None
    return True