.Vimrc dosyam nerede?


438

Vim kullanıyorum ve ayarlarımı gerçekten kaydetmek istiyorum. Benim sorunum .vimrc dosyamı bulamıyorum ve standart /home/user/.vimrckonumda değil olmasıdır. Bu dosyayı nasıl bulabilirim?


21
Eğer orada değilse oluşturun.

10
Ubuntu makinem bunu adlı bir dosyaya sahipti /usr/share/vim/vimrc.
ckjbgames

Yanıtlar:


514

Yaratmanız gerekiyor. Kullandığım çoğu kurulumda, varsayılan olarak oluşturulmadı.

Genellikle olarak yaratırsınız ~/.vimrc.


17
ayrıca kontrol / etc / vim /
vimrc

@Nateshbhat: Bunu kullanmaya devam etmeli miyim /etc/vim/vimrcveya kopyalamalıyım ~/.vimrc? Yoksa ikisine birden sahip olabilir miyim?
Mohammad Faisal

Özelleştirmek istiyorsanız, önce yerel olarak kopyalarım. Aksi takdirde, tüm kullanıcılar için ayarları değiştirirsiniz.
AlG

354

Zaten bir .vimrc dosyanız varsa bu yöntemler çalışır:

:scriptnames.vimrcdosyanız da dahil olmak üzere Vim'in sizin için yüklediği tüm .vim dosyalarını listeler .

:e $MYVIMRCkullandığınız geçerli .vimrc dosyasını açın ve düzenleyin, ardından durum çubuğundaki yolu görüntülemek için Ctrl+ tuşunu kullanın G.


7
@MorganWilde Mutlaka değil :scriptnamesve :e $MYVIMRCher ikisi de benim için boş çıktılar döndürüyor .
Rohmer

1
İçin +1 :scriptnames. Bununla birlikte $MYVIMRC, örneğin vim ile başlarken ayarlanacağı garanti edilmez vim -u filename.
1983

4
: scriptnames'de vimrc var ama .vimrc değil, aynı mı? Onları usr / share klasörümde buldum, ~ / .vimrc (kabul edilen cevap olarak) ekleyerek daha fazla yapılandırma yapmadan bir şey bile yapabilir miyim? Bu, vimrc'ye kullanıcıya özel seçenekler eklemenin bir yolu mu?
Tyler

15
Not :e $MYVIMRCBir olduğunda çalışır vimrcilk etapta dosya. Aksi takdirde, tam anlamıyla çağrılan bir dosyayı düzenlemeye başlar $MYVIMRC.
Tomalak

1
@Shadoninja - "senin" değildi, bu küresel rcdosya. .vimrcDosyanızda tanımladığınız her şey (çoğu durumda ana dizininizde) içindeki varsayılanları geçersiz kılar /etc/vimrc.
mathguy

92

Kısa cevap:

Vimrc'nizi oluşturmak için Vim'i başlatın ve aşağıdakilerden birini yapın:

:e $HOME/.vimrc  " on Unix, Mac or OS/2

:e $HOME/_vimrc  " on Windows

:e s:.vimrc      " on Amiga

İstediğiniz ayarları ekleyin ve dosyayı kaydedin.

Bu dosyanın varoluşunun, compatible seçeneği . Ayrıntılar için aşağıya bakın.

Uzun cevap:

İki çeşit vimrc vardır:

  • kullanıcı vimrc içinde$HOME
  • Sistem vimrc içinde $VIM(Amiga sistemlerinde, s:.vimrcbir kullanıcı vimrc kabul edilir)

Kullanıcı vimrc dosyası, kullanıcı tarafından oluşturulana kadar genellikle yoktur. Bulamazsanız $HOME/.vimrc(veya $HOME/_vimrcWindows'ta), o zaman oluşturabilirsiniz ve muhtemelen oluşturmanız gerekir.

Sistem vimrc normalde değiştirilmeden bırakılmalı ve $VIM* dizininde yer almalıdır . Sistem vimrc değil kişisel ayarlarınızı sakladığınız iyi bir yer . Bu dosyayı değiştirirseniz, Vim'i yükseltirseniz değişikliklerinizin üzerine yazılabilir. Ayrıca, buradaki değişiklikler çok kullanıcılı bir sistemdeki diğer kullanıcıları etkileyecektir. Çoğu durumda, kullanıcı vimrc'sindeki ayarlar sistem vimrc'sindeki ayarları geçersiz kılar.

Gönderen :help vimrc:

Başlatma komutlarını içeren dosyaya "vimrc" dosyası denir. Bir vimrc dosyasındaki her satır Ex komut satırı olarak yürütülür. Bazen "exrc" dosyası olarak da adlandırılır. Bunlar aynı dosya türüdür, ancak Vi her zaman kullanılan "exrc", "vimrc" Vim'e özgü bir isimdir. Ayrıca bkz. | Vimrc-intro |.

Kişisel başlangıçlarınız için yerler:

    Unix            $HOME/.vimrc or $HOME/.vim/vimrc
    OS/2            $HOME/.vimrc, $HOME/vimfiles/vimrc
                    or $VIM/.vimrc (or _vimrc)
    MS-Windows      $HOME/_vimrc, $HOME/vimfiles/vimrc
                    or $VIM/_vimrc
    Amiga           s:.vimrc, home:.vimrc, home:vimfiles:vimrc
                    or $VIM/.vimrc

Dosyalar yukarıda belirtilen sırayla aranır ve yalnızca bulunan ilk dosya okunur.

(MacOS, yukarıdakiler için Unix olarak sayılır.)

Sırf unutmayın varlığı , bir kullanıcı vimrc ait kapatarak Vim'ın davranışını değiştirecek compatibleseçeneği. Gönderen :help compatible-default:

Vim başladığında, 'uyumlu' seçeneği açıktır. Bu, Vim başlatma işlemine başladığında kullanılacaktır. Ancak bir kullanıcı vimrc dosyası bulunduğunda veya geçerli dizindeki bir vimrc dosyası veya "VIMINIT" ortam değişkeni ayarlandığında, 'uyumsuz' olarak ayarlanır. Bunun diğer seçenekleri ayarlama veya sıfırlama yan etkisi vardır (bkz. 'Uyumlu'). Ancak yalnızca ayarlanmamış veya sıfırlanmamış seçenekler değiştirilecektir.


* $VIMkabuğunuzda ayarlanmamış olabilir, ancak her zaman Vim içinde ayarlanır. Neye ayarlandığını görmek istiyorsanız, Vim'i başlatın ve komutu kullanın:echo $VIM


28

Ek bilgi olarak, çoğunlukla macOS'ta, .vimrc dosyası dizinde bulunur:

/usr/share/vim/.vimrc

25
Sistem vimrc budur. $ HOME / .vimrc dosyasını düzenlemek ve zaten yoksa oluşturmak daha iyidir.
Laurence Gonsalves

1
.Vimrc dosyası ana dizinde oluşturulmamışsa vi /usr/share/vim/.vimrckullanmak için dosyaya başvurur .
Sandeep

Bulduğum gibi Ubuntu'da da aynı.
ckjbgames

25
:echo($MYVIMRC)

size .vimrc dosyanızın konumunu verecektir.

:e $MYVIMRC

açacak.


1
Aşağıdakileri geri alıyorum: -bash: beklenmedik simge '$ MYVIMRC' yakınında sözdizimi hatası
Yannis Dran

@YannisDran - Uhmm, ne?
Kale

@Idigas Komut penceremde echo (xxx) yazıyordum ama şimdi bunu vim editörüne yazmak istediğinizi fark ettim. Ancak: e xxx çalışıyor olsa da,: echo (xxx) çalışmaz. E121 Tanımsız Değişken: xxx E15: Geçersiz İfade: (xxx $)
Yannis Dran

@YannisDran - Açıkça söylemek gerekirse, vim komut satırına echo ($ myvimrc) yazdıktan sonra bu hatayı mı aldınız? Not: echo (myvimrc) şans eseri?
Kale

1
Ben $ kullanın ve vi editörü (Typing: enable komut satırı) içine yaptım. Btw, şimdi vim hiçbir şeye cevap vermiyor, göstergeyi sadece vim'in ilk satırına koyuyor. (Vim-Vi OSX'te v.7.3 geliştirildi)
Yannis Dran

15

Hangi sebepten olursa olsun, bu cevaplar benim için pek işe yaramadı. Bunun yerine benim için işe yarayan buydu:

Vim, :versionkomut size (diğer şeyler arasında) sistemi ve kullanıcı vimrc ve gvimrc dosyaların yollarını ve bunun gibi çıktı görünüyor şey verir:

 system vimrc file: "$VIM/vimrc"
   user vimrc file: "$HOME/.vimrc"
    user exrc file: "$HOME/.exrc"
system gvimrc file: "$VIM/gvimrc"
  user gvimrc file: "$HOME/.gvimrc"

İstediğin user vimrc file: "$HOME/.vimrc"

Dosyayı düzenlemek için: vim $HOME/.vimrc

Kaynak: vimrc dosyasını açın


2
Aslında önerdiğiniz çözüm zaten onlar tarafından ele alındığında mevcut cevapların sizin için nasıl işe yaramadığını anlamıyorum. Bu cevap bahseder $HOME/.vimrcve üst cevabı bahseder ~/.vimrcaynı olan $HOME/.vimrc.
DoubleDown

Size tamamen katılıyorum. Söylemek istediğim, cevabım düzenlendiğinde kayboldu
Aaron Alphonsus

11

Vim'i açın ve normal mod türünde:

:echo $VIM

yetersiz cevap
Fl.pf.

Benim için sadece çıktı /usr/share/vim. Sürüm 8.2.100, Arch Linux.
Yaroslav Nikitenko

Bu size sistem vimrc'inizin bulunduğu dizini söyler, ancak kullanıcı vimrc'nizin nereye gitmesi gerektiğini veya adının ne olması gerektiğini söylemez.
Laurence Gonsalves

Peki, "nerede" sorusu vimrc dosyasıdır. Vimrc kullanıcısı nereye gitmeli? ~/.vimrcVeya içine koyun ~/.vim/vimrc, ikincisinin önünde nokta olmadığını unutmayın.
adem

8

unix'te vim --versionvim yapılandırma dosyalarının çeşitli konumlarını gösterir:

   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"

Bunun Windows için Git ile birlikte gelen VIM ile çalıştığını doğrulayabilir. (Bu sadece bir SO cevabının Git Bash'de ÇALIŞMADIĞINI varsayabileceği için dikkat çekiyor.)
Janet

5

İşte birkaç ipucu daha:

  • In Arch Linux küresel bir yer almaktadır /etc/vimrc. Orada yararlı detaylar ile bazı yorumlar var.

  • Dosya adı a ile başladığından ., ls -aTÜM dosyaları göstermek için kullanmadığınız sürece gizlenir .

  • Vim'deyken yazmak :version, dosya konumu da dahil olmak üzere bir dizi ilginç bilgi gösterir.

  • Ne ~/.vimrcanlama geldiğinden emin değilseniz bu soruya bakın .


5

Mac'te satır numarasını varsayılan olarak göstermeyi nasıl ayarladığımı paylaşmak istiyorum.

  1. Bir terminale şunu yazın cd . Bu, ana klasöre gitmenize yardımcı olacaktır.
  2. Terminalde yazın vi .vimrc. Bu, kullanmak istediğiniz boş bir vimrc sistem dosyası oluşturur.
  3. Dosyaya yazın set numberve Escklavyeye basın ve yazın :wq. Bu, varsayılan ayar dosyasında gösterilen satır numarasını ayarlayacaktırvimrc ve kaydedecektir.
  4. vi somethingbunun işe yarayıp yaramadığını görmek için. Değilse, terminali tamamen yeniden başlatmayı deneyin.

Bir terminaldeyseniz, cd /usr/share/vim/o klasöre gidin ve yazın ls. Doğrudan vimrc adlı bir dosya görebilirsiniz. Ancak salt okunur yazan bir sistem dosyasıdır. Bunu değiştirmeyi denemenin iyi bir fikir olmadığını düşünüyorum. Bu nedenle, bir vimrc oluşturmak için yukarıdaki adımları takip etmek daha iyidir. Benim için çalıştı.


CentOS7 kurulumum için yukarıdakilere geçmem gereken bir şey: 1. adımdan sonra "cd kullanıcı adı" yazın.
HoldOffHunger

2

Önceki yanıtta her şeyi denedim ve bir .vimrcdosya bulamadım , bu yüzden bir tane yapmak zorunda kaldım.

Örnek dosyayı kopyaladım, cp vimrc_example.vim ~/.vimrc .

Adlı dosyayı kopyalamak /usr/share/vim/vim74/vimrc_example.vimiçin~/.vimrc . Bunlarvimrc_example dosyadaki .

Çözümüm diğer işletim sistemleri için Unix için. Vim belgelerine göre, hedef yolunuz aşağıdaki gibi olmalıdır:

    For Unix and OS/2   : ~/.vimrc
    For Amiga           : s:.vimrc
    For MS-DOS and Win32: $VIM\_vimrc
    For OpenVMS         : sys$login:.vimrc

1

Cmd'den (Windows):

C\Users\You> `vim foo.txt`

Şimdi Vim'de şu komutu yazarak komut moduna girin: " : " (ie Shift+ ;)

:tabedit $HOME/.vimrc

Bu, ABD düzenine sahip bir klavye olduğunu varsayar.
Peter Mortensen


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.