.Un ~ dosyası nedir veya Terminal'deki Vim neden .un ~ dosyasını oluşturur?


94

Bazı dot dosyalarım olduğunu fark ettim .un~, örneğin a ile bitiyor .vividchalk.vim.un~ama nereden geldiğinden emin değilim. Terminalde Vim kullandığım zaman yaratılmış gibi görünüyorlar. Bu dosyalar nedir? Düzenlediğim dosyayı kapattığımda kendilerini kaldırmalarını sağlayabilir mi?

Yanıtlar:


137

Dosyaları düzenleyip kaydettiğinizde, Vim orijinal dosya ile aynı ada sahip bir dosya un~ve sonunda bir uzantı oluşturur.

Vim 7.3 yeni bir kalıcı geri alma özelliği içerir, yani geri alma bilgileri Vim'den çıkıldığında kaybolmaz ve ile biten bir dosyada saklanır .un~. undofileSeçeneği ayarladınız , böylece Vim orijinal dosyayı kaydederken bir geri alma dosyası oluşturur. Seçeneği temizleyerek, Vim'in yedekleme dosyasını oluşturmasını durdurabilirsiniz:

:set noundofile

Varsayılan olarak bu seçeneğin kapalı olduğunu unutmayın. Bu undofileseçeneği, başlatma dosyalarından birinde açıkça etkinleştirdiniz . Dosyasız dosyalarınızın yalnızca belirli bir dizinde saklanmasını istiyorsanız, bu undodirseçeneği birleştirilmiş tüm dosyalarınızı içeren bir dizine yönlendirebilirsiniz.

Kaynak: http://vimhelp.appspot.com/vim_faq.txt.html#faq-7.2


4
Teşekkürler! Vim'de yeniyim ve kargo taraması yapmadan anlamaya ve yapılandırmaya çalışıyorum. Şimdi bu ayarın geldiğini görüyorum vim-sensible. ReadMe'yi vim-sensible'da okumak çok faydalıdır. Ve (gözetleme kodu ekran video kaydından) yapabileceğimi öğrendim :verbose set undofile?ve bu seçeneğin nerede olduğunu göreceğim. Sanırım buna hakkım var.
kaplan

1
Vim 7.3'e sahibim ve kalıcı geri alma benim için çalışmıyor ( set undofileKalıcı geri alma işlemine ihtiyacım var ). Diğer ayarlar yeni özelliğe müdahale ediyor mu , örneğin nobackupveya noswapfile?
Dennis

Krem olmayan krem-vim-yükleyicinin de bunu varsayılan olarak etkinleştirdiğini düşünüyorum.
Josiah Yoder

1
Oh adamım !! şimdi şunu hatırlamam gerekiyor: set nobackup set noswapfile set noundofileher _vimrc'de köpek yavrusu parçaları istemiyorsam ??
Bunlardan BİRİNİN

12
Görünüşe göre vim 8'de (en az 8.0.427) bu özellik varsayılan olarak açılmıştır. Elbette YMMV ...
Chuck Wolber

3

:set noundofileEmri gerçekten nereye koyacağımı bulmam biraz zaman aldı . Ben yeniyim ve sadece yedekleme yapmamayı nasıl sağladığımı cevaplayacağım.

  1. Aç vim.
  2. Komut modunda yazın :e $HOME/.vimrc
  3. Yazmak :set noundofile
  4. Kaydet ve çık: :wq

Benim kullanım durumum için çalışıyor, bu biraz farklı: Windows üzerinde ConEmu içinde Vim kullanmak. Teşekkürler!
Mário Meyrelles

Vim Windows yükleyicide varsayılan olarak dosya olmayan dosyalarım var. Rehberiniz bana yardımcı oldu, teşekkürler!
Cardin

0

Vim'in her yerde geri alma dosyaları oluşturmasını önlemenin bir başka yolu, geri alma işlemini mevcut bir dizine ayarlamaktır, örn.

if has('persistent_undo')         "check if your vim version supports
  set undodir=$HOME/.vim/undo     "directory where the undo files will be stored
  set undofile                    "turn on the feature
endif

buradan takıldı

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.