Hot exit é um dos principais recursos do editor de texto sublime. Ele permite fechar o editor a qualquer momento sem se preocupar com modificações nos arquivos abertos - ele é fechado sem nenhuma pergunta. Ao iniciar o ST novamente, todos os arquivos abertos e editados estarão no mesmo estado em que estavam antes de fechar
Gostaria de saber se existe uma maneira de fazer o mesmo no vim?
Respostas:
O Vim pode fazer isso, embora possa ser um pouco desajeitado e precise de algumas configurações.
romainl te deixa no meio do caminho
session
. Os bits ausentes são arquivos de troca:preserve
, e o&
sinalizador paracpoptions
.Os arquivos de troca destinam-se à recuperação se o Vim ou o seu sistema travar. Eles permitem recuperar alterações não salvas (com algumas limitações, consulte
:he swap-file
). No entanto, quando o Vim sai normalmente, ele exclui os arquivos de troca que estava usando, mesmo que o buffer tenha sofrido alterações não salvas.É aí que
:preserve
ecpoptions
's&
entrar.:preserve
Forças Vim para escrever todos os tampões para os seus arquivos de swap imediatamente (em oposição ao padrão após 4 segundos ou 200 caracteres, ou o que quer que suas opções definiu que ele). Doing:set cpoptions+=&
diz ao Vim para não excluir os arquivos de troca salvos:preserve
ao sair normalmente.Infelizmente, o Vim não limpa automaticamente os arquivos de troca ao se recuperar deles, para que você possa acabar com um diretório parecido com este:
Você pode excluir os antigos manualmente, mas o Vim oferecerá automaticamente a recuperação apenas se houver um
*.swp
arquivo onde ele colocaria seu novo arquivo de troca. O:recover
comando forçará o Vim a procurar arquivos de troca dos quais recuperar.Usando comandos automáticos, você pode automatizar a preservação (provavelmente com o
QuitPre
evento) e a recuperação (provavelmente comBufRead
ouBufReadPost
). O Recover.vim é um plug-in que pode funcionar como uma alternativa mais amigável para gerenciar a recuperação. Parece também lidar com a limpeza de arquivos de troca. Não tenho certeza de como ele trataria um diretório com um arquivo,.swo
mas sem.swp
. Você ainda pode precisar usar:recover
para esse caso.O vim-obsession é outro plug-in que afirma facilitar as sessões de manuseio.
fonte
Sim. Chama-se "sessão" e você pode ler tudo sobre isso em:
fonte