I use RStudio for working with R programming language and find the ctrl+enter
shortcut to send a line to the console extremely useful in troubleshooting my work.
Now I am using sublimetext2 and I would like to do the same thing in RStudio, send a line to the console.
Is there a way to send the existing line to the console or a SublimeREPL console?
Save this answer. Show activity on this post. First press Ctrl + B to compile the program, then press Ctrl + Shift + B and choose run in cmd option, which will run the program in system CMD instead of the Sublime Text console.
Control+B initiates a build (in the Tools menu).
The Python ConsoleSublime Text 2 has an embedded Python interpreter.
I don't know about the console, but this is possible with SublimeREPL.
As long as you have a REPL and a file of the same language open at the same time, you can send a line (or a selection or file) to your open REPL via the SublimeREPL Source Buffer Keys. By default, Ctrl+,
followed by l
sends the current line to the REPL, but you can change the hotkey to Ctrl+Enter
(in Python only, to protect other languages' default Ctrl+Enter
functionality) by adding these lines to the top of your Preferences -> Key Bindings – User
file:
{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines"}, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
]
},
Other available scopes (from Preferences -> Browse Packages -> SublimeREPL/Default (Windows).sublime-keymap
) are selection
, file
, and block
(Clojure only). If you want to send a line to your REPL but not parse it immediately, you can add "action":"view_write"
to the args
object, like so:
{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines", "action": "view_write"}, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
]
},
See the Unofficial Sublime Text 2 Docs for more information on key bindings.
In the case that the REPL is open in a different tab than your source (rather than a separate view), the source buffer hotkeys will not focus the REPL. I'm sure it's possible to implement some sort of tab-swapping toggle key, but that sounds like a problem for another question.
In addition to setting up your own key bindings, you can simply install Enhanced-R
:
In Sublime:
Install Package
"Enhanced-R
If you are using Sublime for mostly just R
, then you can set the default syntax for the whole app. Or you can change it per file (Cmd + Shift + P again, then start typing Syntax Enhanced R
)
Then, like you are used to in RStudio, you simply hit Cmd + enter to ship the code to the Console or R.app etc
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With