Vim bunu yapabilir, ancak biraz tıknaz olabilir ve biraz kurulum yapabilir.
romainl sizi yarı yolda bırakırsession . Eksik bitler takas dosyaları :preserveve için &işarettir cpoptions.
Takas dosyaları Vim veya sisteminiz çökerse kurtarma amaçlıdır. Kaydedilmemiş değişiklikleri kurtarmanızı sağlar (bazı sınırlamalarla bkz. :he swap-file). Ancak Vim normal olarak çıktığında, arabellekte kaydedilmemiş değişiklikler olsa bile kullandığı takas dosyalarını siler.
İşte bu noktada :preserveve cpoptions'ler &gelir. :preserve(Seçenekleriniz bunu için ayarladığınız ne 4 saniye veya 200 karakter veya sonrasında standart aksine) kuvvetleri Vim hemen takas dosyalarına tüm tamponları yazmak için. Doing :set cpoptions+=&Vim söyler değil kaydedilir takas dosyaları silmek için :preservenormal çıkarken.
Ne yazık ki, Vim takas dosyalarını onlardan kurtarırken otomatik olarak temizlemez, böylece yakında aşağıdaki gibi bir dizin elde edebilirsiniz:
.foo.txt.swn
.foo.txt.swo
.foo.txt.swp
foo.txt
Eski olanları manuel olarak silebilirsiniz, ancak Vim yalnızca *.swpyeni takas dosyasını koyacağı bir dosya varsa otomatik olarak kurtarmayı önerir . :recoverKomut takas dosyaları kurtarmak için aramaya Vim zorlayacaktır.
Otomatik komutları kullanarak, korumayı (muhtemelen QuitPreolayla birlikte) ve kurtarmayı (muhtemelen BufReadveya ile BufReadPost) otomatikleştirebilirsiniz. Recover.vim , kurtarmayı yönetmek için daha kolay bir alternatif olarak çalışabilecek bir eklentidir. Ayrıca takas dosyalarının temizlenmesini de ele alıyor gibi görünüyor. Nasıl .swoama bir .swpdosya ile bir dizini işlemek emin değilim . Bu :recoverdurumda yine de kullanmanız gerekebilir .
vim-obsession , işlem oturumlarını daha kolay hale getirdiğini iddia eden başka bir eklentidir.