У меня есть ssh-соединение с удаленным компьютером в моем окне терминала, и GVim работает локально как мой текстовый редактор. Я могу смонтировать удаленную машину через SSH и открывать файлы в моем локальном Vim. Я также могу редактировать удаленные файлы в моем локальном Vim через поддержку Vim для редактирования через SCP.
Скажем, я затем использую ag
на удаленном компьютере для поиска символа в моем проекте:
[user@remote project]$ ag thingy
include/blah/foo.h
1137:void thingy() {
Что я могу ввести в сеансе SSH, чтобы отправить этот файл в локальный редактор во вкладке? Если бы я был на своей локальной машине, я мог бы сделать что-то вроде gvim -p --remote-tab-silent include/blah/foo.h
, но я не думаю, что удаленная система Vim +clientserver
может быть перенаправлена через сеанс SSH, не так ли? Будет ли как-то волшебным образом работать, если я настрою пересылку X11? Если да, то как Vim определит, к какому удаленному серверу подключиться для редактирования файла? Может быть, есть какая-то интеграция между сеансом терминала, встроенным в vim, и системой netrw
, которую я мог бы использовать вместо этого?
Если бы я хотел развернуть свою собственную систему со сценариями оболочки и netcat и какими-либо пересылающими сокетами по ssh, как бы я мог это спроектировать?