Tenho tentado configurar a versão shell do vim para salvar quaisquer arquivos alterados quando a janela do shell perder o foco.
Seguindoessesinstruções não funcionam.
Embora eu esteja usando o OS X, acho que isso também pode afetar o vim em execução no Linux. Pode estar errado, mas pensei em tentar também aqui e também em apple.stackexchange.com.
Devo presumir que talvez a razão pela qual isso não funcione para uma versão de linha de comando do vim seja porque ele se destina apenas a funcionar com versões GUI, ou seja, MacVim?
Existe uma maneira de fazer isso funcionar para uma versão shell do vim?
Estou usando a versão mais recente do vim disponível no homebrew.
Responder1
De :h FocusLost
:
FocusLost When Vim lost input focus. Only for the GUI version and a few console versions where this can be detected. May also happen when a dialog pops up.
Os terminais *nix (incluindo OS X) não divulgam seu status de foco para nenhum aplicativo executado neles, portanto, isso não funcionará lá e, de fato, não há como fazê-lo funcionar.
Responder2
Se o seu objetivo é evitar a perda de código, talvez os arquivos de backup possam ajudá-lo.
set backup " keep a backup after overwriting a file
set backupdir^=/tmp// " list of directories to put backup files in
Eu tenho isso no meu .muttrc
, ele armazena arquivos de backup até reiniciar o Mac em/tmp/