O arquivo .swp criado por VM do Vim existe e o Vim o ignora

1

Eu tenho um arquivo aberto no Vim dentro de um guest de máquina virtual do Linux e então tento abrir o arquivo no host do Windows, e não recebo o aviso que diz "Swap file blah. swp já existe! " (O arquivo é compartilhado para o convidado.) Eu quero esse aviso porque essa é a única maneira que eu posso descobrir que eu já estou editando o arquivo em outro lugar, como neste caso, na VM!

Não importa se edito o arquivo no Windows primeiro e depois uso o Vim no Linux na VM, ou edito o arquivo na VM do Linux e, em seguida, abro o arquivo no Vim no Windows: é o mesmo resultado, nenhum aviso. Você poderia dizer que o comportamento é uniforme do Linux para o Windows. Em ambos os casos, o Vim cria um arquivo .swo silenciosamente, sem reclamar como deveria (eu acredito). No entanto, se o arquivo for aberto pela segunda vez na VM enquanto já estiver aberto na VM, eu o faço obter o aviso e a mesma coisa no Windows (para aqueles que quiserem perguntar sobre minhas configurações do Vim ).

A leitura de :help recovery não fornece nada informativo. A versão é Vim 7.4 em ambos os casos.

    
por user62177541 22.03.2015 / 04:42

2 respostas

0

Eu acho que o Vim não reconhecerá o arquivo de troca como pertencente ao arquivo editado.

O arquivo de troca do Vim contém o nome do caminho do arquivo editado. Isso faz sentido, já que você pode ter seus arquivos de troca em outro diretório que o arquivo editado. Aparentemente, o Vim verifica se o nome do caminho no swapfile encontrado corresponde ao arquivo a ser editado. Isso não estaria no seu caso, já que um caminho está na VM do Linux e o outro caminho está no Windows.

Infelizmente, não consegui encontrar uma prova dessa teoria no manual do Vim e não tenho tempo agora para verificá-la nas fontes.

    
por 23.03.2015 / 00:20
0

Eu pensei em tentar reiniciar o sistema e ver se isso ainda acontecia e com certeza o curava, então aparentemente esse é um fenômeno temporário estranho. Eu posso deixar esta discussão para o caso de alguém ver esse problema. Primeiro, pensei nessa solução porque pensei ter me lembrado de fazer a mesma coisa em outra máquina com uma configuração de VM semelhante e o problema não ocorreu lá. Isso de fato era verdade. A mesma situação na outra máquina fez mostrar o aviso como deveria. Então, ao reiniciar, os avisos agora aparecem novamente.

    
por 25.03.2015 / 04:55

Tags