Сценарий публикации Vim - PullRequest
3 голосов
/ 29 апреля 2011

Я ищу скрипт vim, который при сохранении дублирует мои изменения во втором каталоге.В этом случае второй каталог находится на виртуальной машине, к которой я могу подключиться по ssh.Есть предложения?

Ответы [ 4 ]

1 голос
/ 29 апреля 2011

Если вы хотите сделать это вручную, добавьте это в ваш vimrc:

command! DuplicateFileRemotely !scp % user@remotehost:~/mylocation/

Затем вызовите его в командном режиме:

:DuplicateFileRemotely

Если вы хотите сделать это каждый раз, когдафайл сохранен, добавьте и ваш vimrc:

autocmd! BufWritePost * :DuplicateFileRemotely
0 голосов
/ 29 апреля 2011

Vim может автоматически сохранять копии в «резервную папку» (при условии, что вы можете сопоставить расположение в вашей локальной файловой системе). См. :h backupdir для получения дополнительной информации об этой опции или посмотрите справку в Интернете здесь: http://vimdoc.sourceforge.net/htmldoc/options.html#%27backupdir%27

0 голосов
/ 29 апреля 2011

вы можете настроить сопоставление клавиш для записи в 2 местоположения, например:

map <C-s> :w<ENTER>:w /path/to/alt/dir/%<ENTER>

Это приведет к двойному сохранению Ctrl-s, сохранению файла в его текущем местоположении, а также кВаш альтернативный каталог с тем же именем файла.

0 голосов
/ 29 апреля 2011

Если вы можете получить доступ к файловой системе локально, вы можете использовать cp.Добавьте это к вашему .vimrc и измените путь.

autocmd BufWritePost,FileWritePost *.* silent !cp <afile> /your/remote/path &

Если вы можете получить доступ только по ssh, используйте scp или rsync.

autocmd BufWritePost,FileWritePost *.* silent !scp -Cr <afile> ssh://hostname:remote/path &

Если вы хотите, чтобы это происходило для определенных расширений файлов, измените *.* на *.py например, копировать только файлы Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...