Vimrc'i ayırmak mümkün ve yararlı mı?


22

Başlığa göre, vimrcdosyayı birkaç alt dosyaya bölmek mümkün mü? Tek bir şeyi ilgilendiren ayar grupları için ayrı dosyalar mı tutuyorsunuz ? Bu şey herhangi bir şey, herhangi bir kullanıcı tanımlı ayar grubu olabilir. Örneğin,

[güncellenmiş]

  • Python (-mode) ile ilgili tüm ayarları sakla vimrc.python-mode?
  • vim için Takvim yardımcı programı için ayarlar saklansın vimrc.calendarmı?
  • renk ayarı ayrı bir dosyada saklansın mı?
  • tutmak eşleştirmeleri (kısayollar aka?) ayrı bir dosyada?

3
Kapak tarafı: dosya türü yerine konum tabanlı gruplama. Bkz. Vi.stackexchange.com/q/77/205
muru

Aradığım cevap vi.stackexchange.com/a/3152/1963 adresindeki satırlar arasında olabilir mi? İhtiyacım olan belirli şeyler için istediğim ayarları içeren kaynak dosyalar?
Nikos Alexandris

filetypeEtiketi kaldırıldı - şimdilik belki? Okuyucuların soruların belirli dosya türleriyle ilgili olduğunu düşünmesini sağlar, ki durum böyle değildir.
Nikos Alexandris

orijinal soru göz önüne alındığında uygun görünüyordu.
muru

@muru Evet, endişelenme. Bunu daha sonra da ekleyebiliriz. Teşekkür ederim.
Nikos Alexandris

Yanıtlar:


22

Evet, bu mümkün ve yararlıdır ve hatta en iyi uygulama olarak kabul edilir. Vim konuşmasında bunlara filetype eklentileri denir. Ve Vim bile birkaç dil için birçok dosya türü eklentisi (girintileme ve sözdizimi dosyaları ile) ile birlikte gelir.

Bunu şu şekilde etkinleştirmeniz gerekir .vimrc:

filetype plugin on

ardından belirli dosya türü ayarlarınızı ~/.vim/ftplugin/python.vimpython ayarları için çağrılan bir dosyaya (var olmayan dizinler oluşturma) yerleştirin . Bu ayrıca SSS bölümünde de yer almaktadır .

Güncelleme (13.11.2015) Başka bir olasılık daha var (dosya türüne özgü seçenekleri kullanmak istemiyorsanız): Bazı seçenekleri belirli bir dosyaya gruplamak istiyorsanız, sourceveya runtimekomutunu kullanabilirsiniz. Örneğin benim .vimrcbu satırı içerir:

" This script contains plugin specific settings
source ~/.vim/plugins.vim
" This script contains mappings
source ~/.vim/mapping.vim
" additional helper functions:
source ~/.vim/functions.vim
" For abbreviations read in the following file:
source ~/.vim/abbrev.vim

Güzel, bende zaten var! Ama gerçekten yakından bakmadım. Bu yüzden vimrc'yi pompaladım. Yine de belirli bir dosya türüyle ilgili olmayan ayarlara ne dersiniz?
Nikos Alexandris

2
İhtiyacınız olabilir :he autoloadve :he source? Ayrıca bu yanıtı kontrol edin stackoverflow.com/a/805242/1821490
Alex Kroll

@AlexKroll dosya türü eklentileri için değil.
Christian Brabandt

@ChristianBrabandt istediğiniz her şey için. İçindeki herhangi bir komut dosyasını kaynaklayabilirsiniz .vimrc. Sadece source my-funy-useful-script.vimsatırınıza koyun .vimrcve Vim yeniden başlattıktan sonra yükler (veya :so $MYVIMRCkomut). Ayrıca :he writing-library-scriptssize yardımcı olabilir.
Alex Kroll

@AlexKroll Bu aradığım cevaba daha yakın olduğunu düşünüyorum. Mevcut yanıtı düzeltip genişletir misiniz? Veya ayrı bir cevap mı? Sadece belirli dosya türlerini aramıyorum . Umarım bu sorum açıktır.
Nikos Alexandris

5

İstediğinizi yapmak tamamen mümkündür. Bazıları bunun için iyi çalışan filetype eklentileri hakkında söylediler.

Ancak vimrc'nizde .vim dosyasını kaynaklayabilir ve böylece .vimrc'yi istediğiniz sayıda dosyaya bölebilirsiniz. Sadece dosyayı kaynak ve işe yarayacak. Burada bir örnek olarak (muhtemelen çok kullanışlı değil) dotfiles dosyalarım var. https://github.com/dspecht/dotfiles/


Cevabınızda ne yaptığınıza ve neden işe yaradığına ilişkin bir örnek verebilir misiniz?
EvergreenTree
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.