如何在VSCode中配置「重新运行上一次代码」功能?
在VSCode中实现类似RStudio的「重新运行上一次代码块/行」功能
一、利用vscode-r扩展原生功能
vscode-r扩展已经内置了满足需求的命令,只需绑定合适的快捷键即可:
- 打开VSCode快捷键设置界面:按下
Ctrl+K Ctrl+S(Windows/Linux)或Cmd+K Cmd+S(Mac)。 - 在搜索框中查找以下命令并绑定快捷键:
r.runCurrentLine:运行光标所在的代码行,对应你修改后需要快速执行的场景(比如把my_fun(arg1 = "foo")改成my_fun(arg1 = "bar")后,光标在该行,按快捷键直接运行修改后的代码)。r.runCurrentChunk:运行光标所在的代码块(需用# ----标记代码块,和RStudio的代码块格式一致),适合批量执行修改后的代码块。
- 推荐绑定和RStudio一致的快捷键:
- 将
r.runCurrentLine绑定到Ctrl+Enter(Windows/Linux)或Cmd+Enter(Mac)。 - 将
r.runCurrentChunk绑定到Ctrl+Shift+Enter(Windows/Linux)或Cmd+Shift+Enter(Mac)。
- 将
二、进阶:重新运行上一次执行的旧代码(如果需要)
如果你需要不依赖当前光标位置,直接重新运行最近一次执行过的代码内容(即使代码已经被修改),可以通过VSCode的宏功能实现:
- 安装「Multi-Command」扩展(用于创建宏)。
- 打开
settings.json:按下Ctrl+Shift+P/Cmd+Shift+P,输入「Preferences: Open User Settings (JSON)」。 - 添加以下配置:
"multiCommand.commands": [ { "command": "multiCommand.reRunLastRCode", "sequence": [ "r.reRunLast" // 若需要自动聚焦终端,可添加:"workbench.action.terminal.focus" ] } ] - 回到快捷键设置,为
multiCommand.reRunLastRCode绑定快捷键,比如Ctrl+Alt+Enter。
注意:r.reRunLast是vscode-r扩展提供的命令,会直接执行上一次运行的代码内容,不受当前编辑区代码修改的影响。
内容的提问来源于stack exchange,提问作者boshek
相关产品推荐
相关产品推荐

