क्या यह संभव है और vimrc को विभाजित करने के लिए उपयोगी है?


22

शीर्षक के अनुसार, क्या vimrcफ़ाइल को कई उप-फाइलों में विभाजित करना संभव है ? सेटिंग्स के समूहों के लिए अलग-अलग फाइलें रखें जो एक बात की चिंता करते हैं ? यह बात कुछ भी हो सकती है, किसी भी प्रकार की उपयोगकर्ता-परिभाषित समूह सेटिंग्स। उदाहरण के लिए,

[अद्यतन]

  • में सभी पायथन (-मोड) संबंधित सेटिंग्स रखें vimrc.python-mode?
  • में कैलेंडर उपयोगिता के लिए सेटिंग्स रखें vimrc.calendar?
  • एक अलग फ़ाइल में रंग सेटिंग रखें?
  • रखने मैपिंग एक अलग फाइल में (शॉर्टकट उर्फ?)?

3
फ्लिप पक्ष: फ़ाइल-आधारित के बजाय स्थान-आधारित समूहीकरण। देखें vi.stackexchange.com/q/77/205
muru

इस सवाल का जवाब मैं देख रहा हूँ में लाइनों के बीच somethere हो सकता है vi.stackexchange.com/a/3152/1963 ? स्रोत फाइलें जिनमें वे सेटिंग हैं जिनमें मुझे उन विशिष्ट चीजों की आवश्यकता है जो मुझे चाहिए?
निकोस एलेक्जेंडरिस

filetypeटैग हटा दिया गया - शायद अब के लिए? यह पाठकों को लगता है कि प्रश्न विशिष्ट फ़ाइल प्रकारों के बारे में है, जो कि ऐसा नहीं है।
निकोस एलेक्जेंड्रिस

यह मूल प्रश्न को देखते हुए उचित लगा।
मूरू

@ ममरू हां, कोई चिंता नहीं। हम इसे बाद में भी जोड़ सकते हैं। धन्यवाद।
निकोस एलेक्जेंड्रिस

जवाबों:


22

हां यह संभव और उपयोगी है और यहां तक ​​कि सबसे अच्छा अभ्यास भी माना जाता है। उन्हें विम भाषण में फिलाटाइप प्लगइन्स कहा जाता है। और विम भी कई भाषाओं के लिए कई फ़ाइल प्लगइन्स (साथ ही इंडेंट और सिंटैक्स फ़ाइलों) के साथ आता है।

आपको इसे इस .vimrcतरह से सक्षम करने की आवश्यकता है :

filetype plugin on

फिर अपनी विशिष्ट फ़ाइल सेटिंग्स को एक फ़ाइल (गैर-मौजूदा निर्देशिका बनाने) में डाल दिया, जिसे ~/.vim/ftplugin/python.vimअजगर सेटिंग्स के लिए कहा जाता है । यह एफएक्यू में भी शामिल है ।

अद्यतन (१३.११.२०१५) एक और संभावना भी है (यदि आप फ़िलाटाइप विशिष्ट विकल्पों का उपयोग नहीं करना चाहते हैं): यदि आप किसी विशिष्ट फ़ाइल के लिए कुछ विकल्प समूह बनाना चाहते हैं, तो आप sourceया runtimeकमांड का उपयोग कर सकते हैं । उदाहरण के लिए मेरी .vimrcइस पंक्ति में है:

" 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

अच्छा, मेरे पास पहले से ही यह है! लेकिन वास्तव में कभी करीबी नज़र नहीं आई। तो, मैं vimrc पंप। सेटिंग्स के बारे में क्या है जो एक विशिष्ट फ़िलेटाइप की चिंता नहीं करता है?
निकोस एलेक्जेंड्रिस

2
आपको आवश्यकता हो सकती है :he autoloadऔर :he source? इस उत्तर को भी देखें stackoverflow.com/a/805242/1821490
एलेक्स क्रोल

@AlexKroll filetype plugins के लिए नहीं।
क्रिश्चियन ब्रेबेंड

@ChristianBrabandt जो कुछ भी आप चाहते हैं उसके लिए। आप किसी भी स्क्रिप्ट को स्रोत बना सकते हैं .vimrc। बस source my-funy-useful-script.vimअपने में लाईन .vimrcलगाइये और विम को पुनः आरंभ (या :so $MYVIMRCकमांड) के बाद लोड करें । :he writing-library-scriptsआपकी मदद भी कर सकता है।
एलेक्स क्रॉल

@AlexKroll मुझे लगता है कि यह उस उत्तर के करीब है जिसकी मुझे तलाश है। क्या आप वर्तमान उत्तर को संपादित करने और उसका विस्तार करने का मन करेंगे? या, एक अलग उत्तर दें? मैं केवल विशिष्ट फ़ाइल प्रकारों की तलाश नहीं कर रहा हूं । मुझे उम्मीद है कि यह मेरे सवाल में स्पष्ट है।
निकोस एलेक्जेंड्रिस

5

यह पूरी तरह से संभव है कि आप क्या चाहते हैं। कुछ अन्य लोगों ने फिलाटाइप प्लगइन्स के बारे में कहा है जो इसके लिए अच्छा काम करते हैं।

लेकिन आप अपने vimrc में सोर्स और .vim फाइल कर सकते हैं ताकि आप जितनी चाहें उतने फाइलों में .vimrc को विभाजित कर सकें। बस फ़ाइल स्रोत और यह काम करेगा। एक उदाहरण के रूप में यहाँ मेरा (शायद बहुत उपयोगी नहीं है) dotfiles। https://github.com/dspecht/dotfiles/


क्या आप इस बात का उदाहरण दे सकते हैं कि आपने अपने उत्तर में क्या किया और यह क्यों काम करता है?
एवरग्रीनट्री
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.