2010-05-06 10 views
162

में फ़ाइलटाइप लोड होने के बारे में जानें, जैसे ही मैं विम में कोई भी फ़ाइल लोड करता हूं, यह फ़ाइल को पहचानने और यदि संभव हो तो रंग-हाइलाइट करने का प्रयास करेगा।विम

मैं एक vim कमांड जानना चाहता हूं जो मुझे बताएगा कि कौन सी ftplugin या Filetype प्लगइन/फ़ाइल टाइप फ़ाइल को हाइलाइट करने पर विचार कर रहा है।

+0

क्या वह स्वचालित रूप से ऐसा नहीं करता है? – ereOn

+0

यदि आप ~/.vim/ftplugin में एक vimscript डालते हैं/तो यह उस विस्क्रिप्ट को स्रोत करेगा जब मिलान फ़ाइल फ़ाइल की एक फ़ाइल लोड हो जाती है। तो '~/.vim/ftplugin/python.vim' में 'setlocal कर्सरलाइन' डालें और आपके पास पाइथन फ़ाइलों में वर्तमान पंक्ति हाइलाइटिंग होगी। 'देखें: ftplugin' मदद और': मदद after' – idbrii

उत्तर

265

:set filetype?

+26

आप कुछ कीस्ट्रोक्स को बचा सकता है और बस का उपयोग ': सेट फीट' ' –

+27

? Se फुट' - मैं जीतने के लिए। ;) – sjas

+19

': se ft'? मैं जीता! –

14

आप भी अपनी स्थिति लाइन या विंडो शीर्षक %y और %Y आइटम का उपयोग करने के filetype जोड़ सकते हैं। देखें

:help 'statusline' 
:help 'titlestring' 
3

जब मैं फ़ाइल टाइप ढूंढना चाहता था तो ऐसा इसलिए था क्योंकि मेरे पास आईपीथॉन स्क्रिप्ट को संशोधित करने के लिए .ipy एक्सटेंशन था। उपरोक्त प्रश्न & ए ने यह देखने के लिए बहुत अच्छा काम किया कि आईपीथन एक्सटेंशन को पायथन (कुछ हद तक स्पष्ट) के रूप में नहीं माना जा रहा था। इस प्रकार मैं फ़ाइल टाइप सेट को मजबूर करना चाहता था, और मैंने इसे कभी भी हेल्फ़पुल विम साइट से पाया। http://vim.wikia.com/wiki/Forcing_Syntax_Coloring_for_files_with_odd_extensions

अपने .vimrc को जोड़ना नीचे काम करता है

au BufRead,BufNewFile *.ipy set filetype=python 
0

जब से तुम पूछ रहे हैं/पहली जगह में इस सवाल का खोज, मैं आप ऐसा करते हैं, क्योंकि आपके vim किसी भी तरह आप के लिए उचित सिंटैक्स उजागर नहीं करता है मान स्वचालित रूप से, और आप यह पता लगाने की कोशिश कर रहे हैं कि क्यों, और इसे कैसे ठीक किया जाए।

चयनित उत्तर में :set filetype? कमांड मूल रूप से vim पूछता है "हे, आप किस प्रकार की वर्तमान फ़ाइल सोचते हैं"। और यदि विम उचित रंग/हाइलाइटिंग प्रदर्शित नहीं कर रहा है, तो संभव है कि आपका उत्तर आपके कंसोल के नीचे filetype= प्रदर्शित कर रहा है, जिसका अर्थ है कि vim फ़ाइल प्रकार को नहीं जानता है। यह आपकी खोज का केवल आधा रास्ते है।

तार्किक रूप से, आपका अगला कदम विम कह रहा होगा "इसका उपयोग करके इसे हाइलाइट करें (उदाहरण के लिए) ps1 वाक्यविन्यास"। आप :set filetype=ps1 टाइप करके ऐसा करते हैं, अब vim ps1 शैली का उपयोग कर वर्तमान फ़ाइल को हाइलाइट करेगा (यह कि आप पहले से ही download the proper powershell syntax file and put it into your ~/.vim/syntax) प्रदान कर रहे हैं।

इस बिंदु पर, आप शायद अब से ऑटो-सिंटैक्स-हाइलाइट चाहते हैं। समाधान आपके ~/.vim/ftdetect फ़ोल्डर में एक समान पहचान स्क्रिप्ट डालना है। उदाहरण के लिए, यदि आप सभी पावरशेल स्क्रिप्ट्स .ps1, .psm1, आदि को हाइलाइट करना चाहते हैं, तो आपने this file को अपने ~/.vim/ftdetect

पर एक ख़ुशी समाप्त कर दिया है।