2009-11-08 11 views
11

मुझे आश्चर्य है कि कोई भी Emacs के लिए विभिन्न वर्तनी मोडों के पेशेवरों और विपक्षों पर वजन कर सकता है। Emacswiki-CategorySpelling वर्तनी जांच के लिए तीन मोड का उल्लेख है:emacs में विभिन्न वर्तनी जांच मोड के पेशेवरों और विपक्ष

  • Flyspell मोड (डिफ़ॉल्ट एक)
  • स्पेक मोड
  • Wcheck मोड (flyspell तुलना में तेजी से करने के लिए डिज़ाइन किया जा रहा है)। (डिज़ाइन किया गया सामान्य प्रयोजन होने के लिए)

मैं भी इन विधियों में से है, जिसमें एक तरह से वर्तनी परीक्षक (अपने वाक्य रचना के आधार पर उदाहरण के लिए एक बफर के भाग को छोड़ना के लिए उपलब्ध कराने के इच्छुक हूँ, आदेश गणित मोड को छोड़ने के लिए में एक लाटेक्स दस्तावेज़ में भागों, जिन्हें AUCTEX मोड में ब्राउन के रूप में हाइलाइट किया गया है)। Flyspell doesn't seem to do this

+1

यह चर्चा में शामिल हो सकता है: ज़ा ली की फ्लाईस्पेल मोड की आलोचना और स्पीक मोड कैसे काम करना है - http://xahlee.org/emacs/emacs_spell_checker_problems.html – Yoo

उत्तर

6

आप कई अलग-अलग तरीकों से आंशिक फ्लाईस्पेल-मोड कर सकते हैं। एक मल्टी-मोड दृष्टिकोण का उपयोग करना है, जहां आप एकल बफर में एकाधिक मोड परिभाषित करते हैं, जिनमें से एक टिप्पणी संपादित करने का एक तरीका है (उदाहरण के लिए), जिसमें फ्लाईस्पेल-मोड सक्षम है। मैं कुछ प्रोग्रामिंग भाषा के लिए ऐसा करता था, लेकिन मुझे इसके लिए कॉन्फ़िगर नहीं मिल रहा है, इसलिए मुझे लगता है कि मैं अब उस भाषा का उपयोग नहीं करता हूं। किसी भी तरह, वहां अधिक जानकारी के लिए mmm-mode देखें।

दूसरा विकल्प 'फ्लाईस्पेल-प्रोग-मोड' (जो देखें) का उपयोग करना है जो बफर के कुछ हिस्सों के लिए फ्लाईस्पेल मोड सेट करता है, इस मामले में फ़ॉन्ट चेहरे द्वारा परिभाषित किया गया है (तारों और टिप्पणियों के लिए विशिष्ट चेहरे हैं अधिकांश प्रोग्रामिंग भाषा प्रमुख मोड के लिए)। यह एक अनुमानित कॉल-बैक फ़ंक्शन का उपयोग करता है, जिसे परिभाषित किया जा सकता है हालांकि आप इसे चाहते हैं; मैं टीएनटी, जो Emacs के लिए एक AIM-मोड है बनाए रखने, और हम इतने तरह उपयोग:

(defun tnt-im-mode-flyspell-verify() 
    "This function is used for `flyspell-generic-check-word-p' in TNT." 
    (not (get-text-property (point) 'read-only))) 

(put 'tnt-im-mode 'flyspell-mode-predicate 'tnt-im-mode-flyspell-verify) 
(put 'tnt-chat-mode 'flyspell-mode-predicate 'tnt-im-mode-flyspell-verify) 

flyspell बनाम कलंक बनाम wcheck के बारे में - मैं केवल मोड flyspell का उपयोग किया है। लगता है कि speck देखने योग्य पर बहुत उन्मुख लगता है, जो ठीक हो सकता है, लेकिन आम तौर पर मैं चाहता हूं कि मैं जो भी दस्तावेज़ काम कर रहा हूं, वह वर्तनी-जांच के लिए काम कर रहा है, इसलिए मैं उसे नहीं चाहूंगा। एक बाहरी कार्यक्रम के लिए wcheck एक सामान्य इंटरफ़ेस प्रतीत होता है; मुझे लगता है कि आपको अपना उपयोग स्वयं बनाना होगा। फ्लाईस्पेल को दो अलग-अलग तरीकों से इस्तेमाल किया जा सकता है: जैसा-आप-प्रकार, मैं आमतौर पर इसका उपयोग कैसे करता हूं, और "बैच मोड", जहां एक पूरे क्षेत्र या बफर को एक बार में चेक किया जाता है। पूर्व अविश्वसनीय रूप से तेज़ है, और मुझे कभी भी बेहतर टूल देखने का कोई कारण नहीं मिला है। उत्तरार्द्ध एक छोटा सा धीमा हो सकता है, खासकर जब बहुत सारे गलत वर्तनी वाले शब्द होते हैं और दस्तावेज़ बड़ा होता है, लेकिन मुझे पूरा होने के लिए 15 सेकंड से अधिक समय तक प्रतीक्षा करना याद नहीं है। 15 सेकंड के लिए स्क्रीन देखते समय और कुछ भी नहीं करना लंबे समय की तरह लग सकता है, यह वास्तव में नहीं है। निश्चित रूप से वाईएमएमवी।

नीचे पंक्ति: मैं फ्लाईस्पेल-मोड के साथ रहूंगा, मान लीजिए कि यह आपकी आवश्यकताओं को पूरा करता है।

संबंधित मुद्दे