FTP/SFTP для VS Code с возможностью удаленного редактирования

Вместо вступления.

Дабы не ходить вокруг до окола, сначала о проблеме, а потом ее решение.

До VS Code я пользовался Atom, в котором для работы с FTP/SFTP был отличнейший плагин Remote-FTP от icetee. Его прелесть была в том, что можно редактировать файлы сразу же на удаленном сервере.

Для VS Code, к счастью, очень много плагинов для работы с FTP/SFTP, но их роднит то, что удаленно править файлы они не умеют... Или я не разобрался 🤷

В главном репозитории расширений для VS Code, как мне кажется самым популярным является SFTP от liximomo, более 1млн. загрузок, но, как и остальные из коробки он не умеет удаленно редактировать файлы. Файлы доступны только в режиме чтения.

Исправляем сей недостаток

Решение оказывается очень простым и не совсем понятно почему настройки по умолчанию именно такие.

  • Идем по адресу >File > Preferences > Settings
  • Далее ищем параметр "downloadWhenOpenInRemoteExplorer"
  • Активируем параметр
  • Перезагружаем VS Code

Исправляем еще одну мелочь

Редактирования на удаленном сервере теперь доступно, но каждый раз при сохранении файлов мы будем видеть ошибку: No such file (Нет такого файла).

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

Открываем редактором файл по адресу

MAC

~/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/sftp.js

Windows

C:\Users\account_name\.vscode\extensions\liximomo.sftp-1.12.9\node_modules\ssh2-streams\lib\sftp.js

На 388 строке

if ( code === STATUS_CODE . OK ) {

Заменяем на

if (code === STATUS_CODE.OK || code === STATUS_CODE.NO_SUCH_FILE) {

Сохраняем и перезагружаем VS Code

Вместо заключение

Вот и все. Удаленный доступ и редактирование по ftp/sftp работает, ошибок нет. Всем бобра 🦫