क्या फ़ाइल में एक टिप्पणी रखने का कोई तरीका है जो फ़ाइलप्राय सेट करने के लिए vim प्रक्रिया करेगा?


30

उदाहरण के लिए, यदि मैं नाम के साथ एक फ़ाइल रखना चाहता हूं gitconfig(कोई अग्रणी नहीं .) के रूप में पहचाना जाना चाहिए filetype=gitconfig, तो क्या यह टिप्पणी में इंगित करने का एक साधन है या फ़ाइल के भीतर भी ऐसा ही कुछ है? ध्यान दें, मैं चाहता हूं कि यह पूरे सिस्टम में काम करे, इसलिए vim की स्टार्टअप फाइल्स को संशोधित करना पसंद नहीं है।

जवाबों:


45

यह modelineसुविधा की तरह लगता है (ऑन-लाइन सहायता देखें)। Gitconfig में आप फ़ाइल की शुरुआत या अंत के पास निम्नलिखित की तरह एक मॉडल रख सकते हैं:

# vi: ft=gitconfig

इसके लिए माॅडलइन को सक्षम करने की आवश्यकता होती है और चूंकि वे एक सुरक्षा खतरा हो सकते हैं, हालांकि वे कई प्रणालियों पर डिफ़ॉल्ट रूप से अक्षम होते हैं।

एक और तरीका जो थोड़ा और काम का हो सकता है वह है एक .vimफाइल बनाना

au BufRead,BufNewFile */gitconfig setfiletype gitconfig

और इसे ~/.vim/ftdetectअपने सभी सिस्टम पर छोड़ दें ।


बिल्कुल सही, मॉडलइन वही है जिसकी मुझे तलाश थी। मॉडलाइन सक्षम है, लेकिन ऐसा लगता है कि मेरे सेटअप में कुछ और इसके साथ हस्तक्षेप कर रहा है। यदि मैंने आपकी सुझाई गई लाइन को फ़ाइल के शीर्ष पर रखा है, तो मैं इसे फिर से खोलने के बाद set filetype?फाइलपेट 'कॉन्फिडेंस' को प्रकट करता हूं ।
मुरली सूरीर

हो सकता है कि आप यह :verbose set filetypeदेखने के लिए उपयोग कर सकते हैं कि confमूल्य कहां से आता है - मुझे लगता है कि विम की सिस्टम डिफ़ॉल्ट फाइलाइप सेटिंग्स कहीं पर होगी।
jw013

जाहिरा तौर पर इसे /usr/share/vim/vim73/filetype.vim से अंतिम बार सेट किया गया था। सिस्टम स्तर फ़िलेोटाइप का पता लगाना उस निर्देश को ओवरराइड कर सकता है जिसे मैंने फ़ाइल में रखा है?
मुरली सूरिार

क्या आप रूट के रूप में विम चल रहे थे? यदि हाँ, मुझे लगता है कि मॉडलाइन लोड नहीं होगा।
एलियास

modelinesविकल्प का मूल्य भी जांचें । :set modelines?यदि यह शून्य पर सेट है, तो यह मॉडलइन को संसाधित नहीं करेगा।
क्रिश्चियन लॉन्ग

1

आप एक सिंटैक्स फ़ाइल बना सकते हैं और इसे विम की share/syntaxनिर्देशिका में डाल सकते हैं (डेबियन लेन पर यह /usr/share/vim/vim71/syntax(आपका डिस्ट्रो भिन्न हो सकता है))।

विम के सिंटैक्स प्रारूप पर प्रलेखन यहाँ है: http://vimdoc.sourceforge.net/htmldoc/synxax.html

आप इंटरनेट पर कहीं भी एक तैयार वाक्यविन्यास फ़ाइल खोजने में सक्षम हो सकते हैं, लेकिन मैं इसे आपके लिए एक अभ्यास के रूप में छोड़ दूँगा।

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