Пока Microsoft работает над официальной реализацией этого в VSCode (см .: https://github.com/Microsoft/vscode-python/issues/79)), я лично использую следующую задачу, определенную в tasks.json
, для запуска Python на моей удаленной машине. Она содержит две задачи: (1)синхронизируйте код с удаленным компьютером с помощью rsync; (2) выполните код через SSH в удаленном интерпретаторе. Обратите внимание, что задача выполнения dependsOn
задача синхронизации, так что выполнение кода всегда выполняется из последней локальной копии.
{
"version": "2.0.0",
"tasks": [
{
"label": "Synchronize Code",
"type": "shell",
"command": "rsync -axv --exclude-from=rsync-exclude.lst --max-size=5MB \"${workspaceFolder}\" user@hostname:dev/code-sync/",
"problemMatcher": [],
"isBackground": true,
"presentation": {
"echo": false,
"reveal": "silent",
"focus": false,
"panel": "shared",
"clear": false
}
},
{
"label": "Remote Execute",
"type": "shell",
"command": "ssh -n user@hostname \"source ~/.profile && source /path/to/virtualenv/bin/activate && python ~/dev/code-sync/${workspaceFolderBasename}/${relativeFile}\"",
"dependsOn": [
"Synchronize Code"
],
"problemMatcher": []
}
]
}
Обратите внимание, что вы также можете назначить привязку клавиш для выполнения задачи, чтобы вы могли выполнять код Python на пульте дистанционного управления одним нажатием клавиши. Добавить в keybindings.json
:
{
"key": "cmd+shift+r",
"command": "workbench.action.tasks.runTask",
"args": "Remote Execute"
}