bash शमबंग लाइन से विम का पता लगाने के लिए कैसे?




vim file-type (4)

यदि आप एक प्लगइन में रुचि रखते हैं, तो इसके लिए एक मौजूद है:

https://github.com/vitalk/vim-shebang

इसमें node -> javascript हाइलाइटिंग के लिए एक पैटर्न शामिल है।

AddShebangPattern! javascript ^#!.*\s\+node\>

कभी-कभी मैं बिना किसी फ़ाइल नाम एक्सटेंशन के स्क्रिप्ट लिखता हूं। उदाहरण के लिए:

#!/usr/bin/env node

console.log('hello world!');

मुझे उम्मीद है कि विम शीबंग लाइन (जैसे #!/usr/bin/env node javascript ) से फ़िलाटाइप का पता लगा सकती है। मुझे filetype.vim में क्या डालना चाहिए?


पार्टी के लिए थोड़ा देर से, लेकिन Node.vim आपके लिए ऐसी जावास्क्रिप्ट फ़ाइलों का पता लगाने का काम करता है। और फिर कुछ। :-)


निम्न में दिए गए निर्देशों का पालन करें :help new-filetype-scripts करें, उपयोगकर्ता रनटाइम में :help new-filetype-scripts फाइल बनाएं। ( ~/.vim ( ~/.vim पर यूनिक्स की तरह सिस्टम), और उसमें निम्न स्क्रिप्ट लिखें।

if did_filetype()
    finish
endif
if getline(1) =~# '^#!.*/bin/env\s\+node\>'
    setfiletype javascript
endif

इस सामग्री के साथ ~/.vim/ftdetect/node.vim यह फाइल बनाएं

fun! s:DetectNode()
    if getline(1) == '#!/usr/bin/env node'
        set ft=javascript
    endif
endfun

autocmd BufNewFile,BufRead * call s:DetectNode()






file-type