लाटेक्स में कुछ वातावरणों को अनदेखा करने के लिए वर्तनी को कैसे कॉन्फ़िगर करें


10

क्या लेटैक्स डॉक्यूमेंट के हिस्से की वर्तनी जांच नहीं करने का कोई तरीका है? उदाहरण के लिए, mintedपर्यावरण या URL का उपयोग करके कोड ब्लॉक \url{}?

(मुझे यकीन नहीं है कि यह वर्तनी जांच के लिए प्रासंगिक है, लेकिन मैं लेटेक्स फ़ाइलों को संपादित करने के लिए विमटेक्स प्लगइन का उपयोग कर रहा हूं ।)


1
देखें (यह भी): vi.stackexchange.com/a/4003/1800
VanLaser

@Gregoire ने vimtex / मुद्दों / # 219 में भी इस प्रश्न का उल्लेख किया है ।
कार्ल यंगवे Lervåg

जवाबों:


10

आप एक साथ क्लस्टर में जोड़कर वाक्यविन्यास आइटम के लिए वर्तनी जाँच को अक्षम कर सकते हैं @NoSpell। आप :help spell-syntaxकुछ जानकारी के लिए पढ़ सकते हैं और अपनी टेक्स सिंटैक्स फ़ाइल को देख सकते हैं , जिसमें सबसे अधिक संभावना पहले से ही कई उदाहरण हैं। यदि आप टाइप :tabe $VIMRUNTIME/syntax/tex.vimकरते हैं, तो आपको एक नए टैब में टेक्स सिंटैक्स फ़ाइल प्राप्त करनी चाहिए। यदि आप खोज /\c@NoSpellकरते हैं तो आपको एक पंक्ति दिखाई दे सकती है जैसे

 syn cluster texMathZoneGroup add=@NoSpell

texMathZoneGroupक्लस्टर स्क्रिप्ट में पहले वाक्य रचना मदों की एक संख्या को रोकने के लिए परिभाषित किया गया है और यहां @NoSpellइन मदों के लिए अक्षम वर्तनी जांच के लिए क्लस्टर के लिए जोड़ा गया है। मुझे डर है कि मैं बिल्कुल नहीं कह सकता कि आपके विशेष सिंटैक्स आइटम के लिए सबसे अच्छा परिवर्तन कैसे करें क्योंकि मुझे पता नहीं है कि सिंटैक्स फ़ाइल बहुत अच्छी तरह से है। एक स्पष्ट क्लस्टर पहले से ही हो सकता है जहां आप बस जोड़ सकते हैं @NoSpell, या आपको एक क्लस्टर बनाना पड़ सकता है जो कि contains=प्रश्न में आइटम। आपके उपयोगकर्ता रनटाइम निर्देशिका में सिंटैक्स फ़ाइल की एक प्रतिलिपि बनाना और वितरित सिंटैक्स फ़ाइल को बदलने के बजाय वहां अपने परिवर्तन लागू करना after/syntax/tex.vimया सिंटैक्स फ़ाइल लोड होने के बाद चलने वाली अन्य स्क्रिप्ट में अपने परिवर्तनों को लागू करना भी एक अच्छा विचार है। ।

चूँकि आप एक प्लगइन का उपयोग करते हैं, इसमें संबंधित विकल्प हो सकते हैं कि किन वस्तुओं की वर्तनी जाँची गई है। मैं उपयोग नहीं करता, vimtexलेकिन कार्ल Lervåg यहाँ बहुत सक्रिय है और यदि आप उसका ध्यान आकर्षित करते हैं तो वह आपके लिए जवाब दे सकता है।


vimtexआज में ऐसे कोई विकल्प नहीं हैं, नहीं। लेकिन यह टकसाल वातावरण में वर्तनी को अनदेखा करने के लिए समझ में आता है, इसलिए मैं प्लगइन को तदनुसार अपडेट कर सकता हूं। अच्छी व्याख्या के लिए धन्यवाद!
कार्ल यंगवे Lervåg

मैंने कोड में चारों ओर देखा और मुझे खनन वातावरण के लिए एक मौजूदा क्षेत्र नहीं मिला, इसलिए मैंने अपना खुद का ऐसा बनाने की कोशिश की: syn region mintedZone start="\\begin{minted}" end="\\end{minted}" contains=@NoSpellलेकिन यह मदद करने के लिए प्रतीत नहीं होता है। कोई उपाय?
ग्रैगोइरे

@ Grégoire कृपया, हम इस चर्चा को विमटेक्स मुद्दे में जारी रखें ।
कार्ल येंगवे लार्वाग

5

आप अपने खुद के वाक्यविन्यास नियमों को जोड़ सकते हैं उदा ~/.vim/after/syntax/tex.vim। आदेश के अंदर वर्तनी जाँच को रोकने के लिए जैसे \url, आप निम्नलिखित कोड का उपयोग कर सकते हैं:

syntax match texStatement '\\command' nextgroup=texMyCommand
syntax region texMyCommand matchgroup=Delimiter start='{' end='}' contained contains=@NoSpell

यहां texStatementऔर Delimiterऐसे समूह हैं जो आंतरिक सिंटैक्स प्लगइन द्वारा परिभाषित किए गए हैं, देखें :e $VIMRUNTIME/syntax/tex.vim

यदि आप उपरोक्त आदेशों को समझना चाहते हैं, तो मैं निम्नलिखित सहायता अनुभागों की सिफारिश कर सकता हूं:

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