Вам когда-либо приходилось писать код на Raspberry Pi или других системах Linux, не имеющих GUI? Во-первых, тем, кто редко ими пользуется, практически невозможно запомнить команды копирования и вставки в vi. Во-вторых, остро ощущается отсутствие таких функциональностей, как подсветка синтаксиса, проверка кода на наличие ошибок и одновременный просмотр двух файлов.

К счастью, есть такое расширение VS Code, которое подключается к удаленным/проектируемым без фронтенда системам. Оно позволяет использовать VS Code на настольном компьютере для редактирования файлов удаленной файловой системы. 

Если я пишу код, предназначенный для запуска на Raspberry Pi, то целесообразно выполнять разработку именно на нем, а не на ПК. Какие-то зависимости языка и платформы не хотелось бы обнаружить в последнюю минуту. 

У многих систем Linux нет графической консоли. Следовательно, при попытке заняться разработкой на такой удаленной системе я теряю привычные функциональности в VS Code, например расширения, ориентированные на конкретный язык, или превосходную графическую интеграцию с Git и GitHub. 

Познакомимся с расширением VS Code Remote-SSH, которое решает обозначенную проблему.

Как выглядит VS Code Remote-SSH?

VS Code Remote-SSH выглядит точно так же, как и привычный редактор VS Code, поскольку это он и есть. Обратите внимание на знакомое файловое дерево в левой части скриншота. Это файлы на удаленной системе! Вы можете их открывать, редактировать, сохранять и удалять с помощью уже известных элементов управления VS Code.

VS Code с расширением Remote-SSH

Кроме того, на скриншоте мы видим открытую терминальную сессию на удаленной системе. Вы можете компилировать и выполнять код из этого терминала точно так же, как из любого окна SSH!

В качестве дополнительного преимущества можно использовать VS Code для безопасного копирования файлов на удаленную систему. Для этого просто перетаскиваем файлы с компьютера в дерево файлов VS Code, в результате чего файлы копируются с помощью scp (безопасного копирования)! Рассмотрим соответствующий скриншот: 

Копирование файлов на удаленную систему 

В чем отличие?

После установки расширения SSH в VS Code вы увидите зеленую полосу в нижнем левом углу окна. При нажатии на нее открывается меню для подключения и отключения от удаленного хоста. При необходимости VS Code будет сохранять историю востребованных хостов. Следующий скриншот отображает окно VS Code, подключенное к хосту Linux по адресу 192.168.9.86:

Подключение к удаленному хосту 

После подключения вы можете нажать на Open Folder и открыть любой каталог на удаленной системе. Обратите внимание на новый значок, появившийся на боковой панели. Он предоставляет список последних подключений и удаленных каталогов. 

Открытие удаленных каталогов 

Установка и начало работы 

Установить расширение и начать с ним работу довольно просто. В VS Code переходим в Extensions, вводим в поисковой строке SSH, выбираем расширение Microsoft Remote-SSH и нажимаем Install. Готово! И при этом даже не приходится перезапускать VS Code.

Установка расширения

Установив расширение, просто нажимаем на зеленую полосу в нижнем левом углу окна VS Code для запуска процесса подключения. 

Подключение одним кликом на зеленую полосу 

Далее вручную вводим user@host или нажимаем на Add New SSH Host… (Добавить новый SSH-хост…) для создания закладки на часто посещаемый хост, как показано на скриншоте:

Указание имени пользователя и имени хоста 

Заключение 

Мне приходилось часто работать над небольшими проектами C на Raspberry Pi. Но после установки расширения VS Code Remote-SSH я ни разу не воспользовался vi и nano.

Remote-SSH  —  это ценный инструмент, который обеспечивает доступ к языковым расширениям, интеграцию Git и GitHub, а также дарит возможность использовать мышку!

Читайте также:

Читайте нас в TelegramVK и Дзен


Перевод статьи Doron Chosnek: Learn to Code Remotely With VS Code And SSH

Предыдущая статьяReact в плагине Sketch: проблема загрузки исходных данных
Следующая статьяВозможности и перспективы WebAssembly