如何在sublime text 2编辑器中将一行传递给控制台

Tah*_*sha 12 keyboard-shortcuts r sublimetext2

我使用RStudio来处理R编程语言,并找到ctrl+enter向控制台发送一行的快捷方式,对我的工作进行故障排除非常有用.

现在我正在使用sublimetext2,我想在RStudio中做同样的事情,向控制台发送一行.

有没有办法将现有线路发送到控制台或SublimeREPL控制台?

ang*_*son 9

我不知道控制台,但这可以通过SublimeREPL实现.

只要您同时打开REPL和同一语言的文件,就可以通过SublimeREPL 源缓冲区密钥向打开的REPL发送一行(或选择或文件).默认情况下,Ctrl+,然后l将当前行发送到REPL,但您可以通过将这些行添加到文件顶部来将热键更改为Ctrl+Enter(仅限Python,以保护其他语言的默认Ctrl+Enter功能)Preferences -> Key Bindings – User:

{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines"}, "context":
    [
        { "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
    ]
},
Run Code Online (Sandbox Code Playgroud)

(从其他可用的范围Preferences -> Browse Packages -> SublimeREPL/Default (Windows).sublime-keymap)是selection,fileblock(只Clojure的).如果要向REPL发送一行但立即解析,可以添加"action":"view_write"args对象,如下所示:

{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines", "action": "view_write"}, "context":
    [
        { "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
    ]
},
Run Code Online (Sandbox Code Playgroud)

有关键绑定的更多信息,请参阅非官方Sublime Text 2 Docs.

如果REPL在与源不同的选项卡中打开(而不是单独的视图),则源缓冲区热键将不会聚焦REPL.我确信可以实现某种标签交换切换键,但这听起来像另一个问题的问题.