Yeni bir dosya olarak nasıl kaydedilir ve Vim'deki orijinal dosya üzerinde çalışmaya nasıl devam edilir?


362

:savKomutu her kullandığımda dosyayı yeni bir adla kaydeder ve yeni dosyayı Vim'de açar.

Dosyayı yeni bir adla kaydetmek ancak orijinal dosyayı düzenleme için açık tutmak mümkün mü?


13
Ters soru ile geldim.
cambunctious

4
@cambunctious Ben de. Ben googling yapıyordum vim "save as"ve bu soru bana :saveasbeklediğim gibi çalışan bir şey olduğunu öğretti : mevcut dosyayı yeni bir adla kaydeder ve yeni dosyayı açar.
Jacktose

Yanıtlar:


526

:wKomutu bir dosya adıyla kullanın :

:w other_filename

78
Ayrıca, :w %:h/other_filenameaçık dosyayla aynı dizindeki bir dosya adına yazmak için kullanın .
loevborg

2
@Ioevborg durum böyle değil mi? Ben sadece: w fname yorumunuzu okumadan ve davranış varsayılan gibi görünüyor.
Blake

10
@ Cokemonkey11 Geçerli dosyanın konumunun çalışma diziniyle aynı olması vim'deki varsayılan davranış değildir. Muhtemelen vimrc dosyanızda bunu sizin için yapan bir şey var. Daha fazla bilgi burada bulunabilir vim.wikia.com/wiki/Set_working_directory_to_the_current_file
Derek

8
Ben sadece "%: h /" olmadan orijinal dosyanın olduğu yerde değil, vim açtığınızda bulunduğunuz dizine kaydedileceğini doğruladı ....
RVC

7
Geçerli dosyaya değil, yalnızca:w other_filename veri yazacağından bahsetmek yararlı olabilir . other_filename
Ram Patra

270

Cevaplar için teşekkürler. Şimdi Vim'de "AS KAYDET" in iki yolu olduğunu biliyorum.

Hello.txt dosyasını düzenlediğim varsayıldı.

  • : w world.txt , hello.txt dosyasının içeriğini vt içinde açılan arabellek olarak tutarken world.txt dosyasına yazar.
  • : sav world.txt önce hello.txt dosyasının içeriğini world.txt dosyasına yazacak, sonra buffer hello.txt dosyasını kapatacak ve son olarak world.txt dosyasını geçerli arabellek olarak açacaktır.

27
:savilk arabelleği kapatmaz, gizler. Varsayılan olarak, gizli arabellekler kaldırılır, ancak bu geçersiz kılınabilir ('gizli' veya 'gizli' seçeneklerle).
Mart'ta ZyX

7
Yani, evet ... :sav"Farklı kaydet" e daha yakınım.
skytreader

8
Vim'in yardımından: :sav[eas][!] [++opt] {file}Yani, :sav daha kısadır :saveas. Oysa :wbunun için kısayol :[range]w[rite][!] [++opt] {file}. Ve her şey kılavuzda, üstünde / altında sadece birkaç satır var.
Atcold

23

Yeni dosyayı kaydettikten sonra

Ctrl-6

Bu, alternatif dosyanın kısayolu


2
Değeri için, OS X 10.10.5 altında nvim 0.1.0 kullanarak, SHIFT-CTRL-6 gerekir.
Aaron Mendez

OS X 11'de Vim'in Homebrew versiyonunda shift-ctrl-6
Mateusz Piotrowski

3

Aşağıdaki komut yeni bir pencerede bir kopya oluşturur. Böylece hem orijinal dosyayı hem de yeni dosyayı görmeye devam edebilirsiniz.

:w {newfilename} | sp #
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.