बाद / निर्देशिका का उपयोग कब करें?


14

मैं समझता हूं कि यह उन चीजों को रखने का स्थान है जो अंतिम कहना चाहिए और किसी अन्य स्रोत से अतिरंजित नहीं होना चाहिए, लेकिन मैं इस बात पर स्पष्ट नहीं हूं कि कैसे तय करना है, जबकि, कुछ कहना ~/.vim/after/ftplugin/है ~/.vim/ftplugin/

क्या लोग आम तौर पर ~/.vim/ftplugin/सामान का उपयोग करते हैं और ~/.vim/after/ftplugin/यदि वे अवांछित व्यवहार का निरीक्षण करते हैं, तो वे सामान ले जाते हैं, या क्या वे इसे तुरंत बाद की निर्देशिका में डाल देते हैं?

जवाबों:


21

आम तौर पर, यदि आप अपना स्वयं का प्लगइन जोड़ना चाहते हैं, या एक मानक प्लगइन को अपने स्वयं के साथ बदलना चाहते हैं, तो यह ~/.vim/pluginया में जाएगा ~/.vim/ftplugin। यदि इसके बजाय आप किसी मौजूदा प्लगइन की कार्यक्षमता को बनाए रखना चाहते हैं, लेकिन इसे जोड़ते हैं, या इसके द्वारा बनाई गई कुछ सेटिंग्स को बदल देते हैं, तो आपका प्लगइन ~/.vim/after/pluginया में चला जाएगा ~/.vim/after/ftplugin


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

6
विम करता स्रोत प्रत्येक फ़ाइल खोज मापदंड से मेल खाता है, लेकिन ठीक से लिखा प्लगइन्स प्रपत्र के अपने शीर्ष के निकट एक परीक्षण है, if exists("g:loaded_<plugin name>") finish endif let g:loaded_<plugin name> = 1। प्लगइन जो पहले "जीत" लोड होता है और बाद में उसी नाम के प्लग इन finishकमांड के माध्यम से जल्दी बाहर निकलता है । ~/.vim/pluginउदाहरण के लिए, आपकी निर्देशिका में एक प्लगइन कैसे है , एक प्लगइन को $VIMRUNTIME/pluginपूरी तरह से लोड करने से रोका जा सकता है । वह परीक्षण प्लगइन फ़ाइलों में शामिल नहीं हैafter
गैरीजोन

ठीक है, मुझे लगता है कि मैं इसे अभी प्राप्त करता हूं। चूंकि सभी मिलान फ़ाइलों sourced किया जाएगा, एक का उपयोग finishगार्ड-खंड जब आप केवल पहले मैच लोड करना चाहते हैं, और (के बाद निर्देशिका का उपयोग बिना एक finishगार्ड-खंड) जब आप एक सेटिंग है कि अन्य में से एक से प्रभावित है ओवरराइड करने के लिए की जरूरत है सूत्रों का कहना है।
ivan

1

यदि वेनिला विम एक निश्चित फ़ाइलेप्ट को पहचानता है और आप शिप किए गए व्यवहार को संशोधित करना चाहते हैं तो आपकी अपनी सेटिंग में चले जाते हैं ~/.vim/after/ftplugin/

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