Sei que alguém pode usar vim scp://host/path/to/file
para editar arquivos remotos localmente e atualizar a máquina remota ao salvar ( :w
). No entanto, gostaria de saber se é possível navegar pelos diretórios usando o ssh (ou se há um plugin para fazer isso)
O NERDTree não é compatível com ele e, ao criar um vim em uma pasta, embora o netrw me permita navegar nos diretórios, abrir um arquivo não funciona.
Unix
máquina para acessar pastas em uma máquina Windows .. Acabei de tentarvim scp://[email protected]//C:/Users/user/Desktop/tmp/
e ele me deu uma tela em branco, com o erro'ls' is not recognized as an internal or external command
ao tentar:vim scp://[email protected]//C:/Users/user/Desktop/tmp/filename
.. funciona bem.vim
está emitindo um comandols
, quando ele faz logon no computador remoto .. e porque é um computador com Windows .. não existels
.. e o comando falha. É possível que o vim atravessewindows
diretórios pelo ssh usando onetrw
plugin ou algo mais? Eu estou usandoVIM 8.1
scp://host//path/
é necessária para que isso funcione; caso contrário, o vim tentará abrir o caminho como um arquivo regular, que será carregado em branco.Opa, esqueci que essa pergunta estava aberta!
Portanto, o problema era que, com a versão netrw que eu tinha (empacotada com vim-gnome no Debian Jessie), modificar um arquivo do explorer (através do ssh) não usaria o URI correto (da memória, o '@' no ' usuário @ host 'estava ausente). Ele abriu um arquivo vazio (porque não encontrou nada), mas ainda salvou o novo arquivo usando o bom URI (sobrescrevendo efetivamente o arquivo original).
A resposta do @ user21497 também me ajudou, porque eu nunca achei o atalho 'novo arquivo', o que é bastante útil porque usar ': e' cria o arquivo localmente.
Finalmente, essa pergunta me ajudou a navegar melhor usando o netrw (voltando ao explorer depois de abrir um arquivo usando: Ex)
Obrigado pela ajuda pessoal!
fonte
Não sei ao certo o que você quer dizer com "notificar novo arquivo"; se você deseja criar um novo arquivo, ao navegar via scp: // nome do host / diretório, pressione "%" como faria em um diretório local para criar um novo arquivo. Veja: ajuda netrw-%. Você pode criar um diretório usando d (: help netrw-d). Se você deseja modificar um arquivo já existente, selecione-o com o cursor no topo do nome do arquivo na tela netrw e pressione
<cr>
(também existem outros métodos de seleção, incluindo v, o, t, etc.). Veja: help netrw-quickmap para uma visão geral sobre isso. Eu apenas tentei isso e não recebi um arquivo vazio (quando pré-existente). Um novo arquivo, é claro, estará vazio.fonte