नई वाक्यविन्यास फ़ाइलों को नहीं उठाएं


1

मैं की नकल की इस GLSL वाक्य रचना फ़ाइल को /usr/share/vim/vim74/syntax/glsl.vim, अपने अनुमतियाँ हैं -rw-r--r--अन्य वाक्य रचना फ़ाइलों के रूप में एक ही।

मैं, gvim /tmp/x.glslलेकिन यह GLSL सिंटैक्स हाइलाइटिंग को सक्रिय नहीं करता है जैसा कि मुझे उम्मीद थी।

मैं जाता हूं Syntax > Show fileypes in menuऔर मान्यता प्राप्त भाषाओं की पूरी श्रृंखला खुलती है। "GLSL" के लिए "G" के तहत कुछ भी नहीं है, न ही "OpenGL" के लिए "O" के तहत कुछ भी है।

नए glsl.vimसिंटैक्स हाइलाइटिंग विनिर्देश को ध्यान में रखने के लिए मुझे क्या करना होगा ?

जवाबों:


0

Syntax > Show filetypes in menuकार्रवाई स्रोतों $VIMRUNTIME/synmenu.vim। यदि आप उस एक को खोलते हैं, तो आप उसे देखते हैं

  " The following menu items are generated by makemenu.vim.

इसलिए, यह विम बिल्ड समय के दौरान बनाई गई एक स्थिर चीज प्रतीत होती है। यह दुर्भाग्य से जोड़ा या उपयोगकर्ता-विशिष्ट सिंटैक्स नहीं उठाता है।

निर्देशिका /usr/share/vim/को आपके वितरण के पैकेज प्रबंधक द्वारा प्रबंधित किया जाता है। यदि आप वहां फाइलें डालते हैं, तो आप विम को रीइंस्टॉल या अपग्रेड करते समय खो सकते हैं। ऐसा मत करो। सीधा करने के लिए इसे ठीक करना है ~/.vim/syntax/; यह तब आप पर लागू होता है। [1]

विम सिंटैक्स हाइलाइटिंग और फ़िलेपेट्स के बीच अंतर करता है । आपके जोड़े गए सिंटैक्स को लागू करने के लिए, आपको GLSL फ़ाइलों का पता लगाने की आवश्यकता है। :help new-filetypeआपको बताता है कि यह कैसे करना है।

ऐसा करने का एक (मॉड्यूलर) तरीका ~/.vim/ftdetect/glsl.vimनिम्नलिखित सामग्री के साथ बनाकर है :

au BufRead,BufNewFile *.glsl        set filetype=glsl

आपको जरूरत है :filetype onऔर :syntax onआपके पास ~/.vimrcभी, लेकिन वे बहुत सामान्य सेटिंग्स हैं, इसलिए आपके पास शायद पहले से ही हैं।


[१] यदि आपके पास वास्तव में एक बहु-उपयोगकर्ता प्रणाली है और इसे उपलब्ध कराने की आवश्यकता है, तो इसे कहीं और लगा दें 'runtimepath'। आपके वितरण के आधार पर, पहले से ही ऐसा पथ पूर्व-कॉन्फ़िगर किया जा सकता है (जैसे कि /etc/vim/vimrcडेबियन पर), या स्रोत सिस्टम-विशिष्ट कॉन्फ़िगरेशन (जैसे /etc/vim/vimrc.local) का अवसर हो सकता है, और आप 'runtimepath'वहां वृद्धि कर सकते हैं ।

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