Vim sync to remote on save

1

Estou procurando um plug-in ou script que funcione de maneira semelhante a Sublime SFTP
Basicamente, ele deve conter um arquivo de configuração e mapear a hierarquia local e remota. Ao salvar em um arquivo, ele deve poder fazer o upload das alterações para o controle remoto de acordo.

Não está familiarizado com a escrita de scripts do Vim, portanto, se isso for possível com scripts, espero que não seja muito difícil de entender e modificar. Deve ser flexível o suficiente para mapear projetos diferentes e não ter que alterar o script toda vez que cd for para um projeto diferente.

Eu encontrei o plug-in ftpsync , mas parece bastante manual, sem mencionar o arquivo de configuração .

    
por resting 24.03.2013 / 19:14

4 respostas

0

O Vim vem com o plugin netrw por padrão. É um explorador de arquivos local / remoto e você pode ler sobre isso em :h netrw .

O uso básico é assim:

:e scp://[email protected]/path/to/project/ " list content of remote directory
/filename<CR>                             " jump to filename
<cr>                                      " open file for editing
(editing)                                 " magic…
:w                                        " save file remotely
:Rex                                      " re-open latest file listing
rince, repeat…

Falando de maneira prática, o netrw funciona como qualquer outro plugin SFTP / recurso em qualquer outro editor / IDE: o arquivo é baixado, editado e salvo localmente e finalmente re-carregado.

Netrw é uma fera, eu sugiro que você leia o doc cuidadosamente.

No entanto ...

… editar arquivos diretamente em um servidor remoto, seja remotamente via ssh ou localmente via (S) FTP, não é uma boa ideia. Pode ser lento e não é particularmente seguro do ponto de vista da qualidade do código.

Supondo que você esteja desenvolvendo web, uma estratégia muito melhor é executar um servidor de desenvolvimento em sua própria máquina e apenas sincronizar seus arquivos para um servidor de teste remoto depois de ter testado tudo localmente.

Essa parte de "sincronização" geralmente é tratada de forma mais eficiente usando uma GUI ou CLI do cliente FTP dedicado (S) ou, melhor ainda, um VCS como o Subversion, o Mercurial, o Git ou outros.

Como desenvolvedor da Web, eu recomendo strongmente que você faça o roteamento do VCS.

    
por 24.03.2013 / 21:00
0

Eu escrevi um plugin para esse propósito. Ele pode ser encontrado aqui: link

Permite que você baixe ou envie o arquivo atual através do sftp.

Está nos estágios iniciais, mas funcionou para os meus propósitos e você está livre para gastar ou contribuir se quiser!

    
por 11.07.2013 / 14:31
0

um plugin vim para sincronizar arquivos pelo sftp pode ser encontrado aqui

    
por 16.10.2013 / 17:30
0

Ou você pode experimentar este plugin que eu escrevi: link .

Funciona com qualquer coisa que o netrw suporte (ftp, ssh, etc.).

    
por 13.01.2015 / 22:40

Tags