जैसा कि पीटर रिनकर ने नोट किया है , विम के मानक मार्कडाउन प्रारूपण में पहले से ही r
"फ़ेंस कोड ब्लॉक" के भीतर कोड को हाइलाइट करने के लिए समर्थन शामिल है , और इसे सक्षम करने के लिए, आपको बस अपने कोड में एक वैश्विक चर सेट करना होगा vimrc
:
let g:markdown_fenced_languages = ['r']
हालाँकि, ऐसा करने के बाद, आप पाएंगे कि आपके निट कोड ब्लॉक अभी भी हाइलाइट नहीं किए गए हैं।
ऐसा इसलिए है क्योंकि निट आर कोड को अलग करने के लिए पंडोक की सूचना स्ट्रिंग्स के प्रारूपण का उपयोग करता है जो कि एक नियमित कोड ब्लॉक से चलाया जाना है , और विम का नियमित मार्कडाउन हाइलाइटिंग इस 1 का समर्थन नहीं करता है ।
इसे ठीक करने का सबसे आसान तरीका निम्नलिखित प्रकार को जोड़कर कोड ब्लॉक के इस प्रकार से मिलान करने के लिए मैन्युअल रूप से एक अतिरिक्त वाक्यविन्यास आइटम जोड़ना है ~/.vim/after/syntax/markdown.vim
syntax region markdownHighlightr matchgroup=markdownCodeDelimiter start=/^\s*```{r}.*$/ end=/^\s*```\ze\s*$/ keepend contains=@markdownHighlightr
आप पंडोक हाइलाइटिंग के लिए एक विम प्लगइन स्थापित करने पर भी विचार कर सकते हैं, जो संभवतः इस बॉक्स से बाहर का समर्थन करेगा।
1: यह वास्तव में विम के मार्कडाउन सिंटैक्स फ़ाइल में एक समस्या नहीं माना जा सकता है। मूल Markdown वाक्य रचना सब पर कोड ब्लॉक fenced है शामिल नहीं है, और CommonMark कल्पना को परिभाषित नहीं करता कैसे जानकारी तार स्वरूपित किया जाना चाहिए।