ईमैक में वर्तनी-जाँच करने के लिए क्या विकल्प हैं


19

क्योंकि मैं वर्तमान में Emacs में बहुत सारे गैर-प्रोग्रामिंग कार्य कर रहा हूं, वर्तनी-जाँच एक बार फिर से मेरी प्रमुख चिंताओं में से एक बन गई।

मैंने देखा कि Emacs में वर्तनी-जाँच के विकल्पों से संबंधित कोई प्रश्न अभी तक नहीं आया है, इसलिए यहाँ हम जाते हैं:

Emacs में वर्तनी जांच करने के लिए मेरे पास क्या विकल्प हैं?

विशेष रूप से,

  • सामान्य प्रयोजन वर्तनी-जाँच के लिए, यानी टाइपोस के लिए समझदार सुझाव, शब्दों का वर्तनी सुधार
  • चयनात्मक वर्तनी-जाँच के लिए, जैसे सामान्य उद्देश्य वर्तनी-जाँच लेकिन केवल टिप्पणियों में
  • ऐसी किसी भी चीज़ के लिए जिसे मैं भूल गया या नहीं जानता लेकिन आप इसके बारे में सोच सकते हैं (वर्तनी-जांच से संबंधित, दोह ...)

संपादित करें: एक अलग प्रश्न में "अन्य" सामान बंद कर दिया, emacs में बेहतर ग्रंथ लिखने के लिए क्या विकल्प हैं


1
मैं इस पृष्ठ की सलाह देता हूं: एमएसीएस में वर्तनी
ल्यूक

1
जैसा कि यह खड़ा है यह प्रश्न बहुत व्यापक है । मैं इसे दूसरे बुलेट पॉइंट (वर्तनी-जांच का चयन) तक सीमित रखने का सुझाव देता हूं, और शायद व्याकरण के बारे में अलग से पूछ सकता हूं।
गिल्स एसओ- बुराई को रोकना '

केवल आपके पहले दो आइटम वर्तनी जाँच के बारे में हैं। व्याकरण और भाषा वर्तनी जांच नहीं है, और आपके अंतिम तीन आइटम पूरी तरह से एक अलग सवाल करेंगे।
मलाबारबा

1
हालाँकि मैं वास्तव में इस बात से सहमत नहीं हूँ कि मूल प्रश्न बहुत व्यापक था या दो अलग-अलग प्रश्नों से बना था, मैंने दूसरा भाग लिया है। यह प्रश्न अब केवल वर्तनी-जाँच के बारे में है, अन्य व्याकरण की जाँच और बेहतर पाठ लिखने के बारे में है।
११:२३

जवाबों:


10
  • सामान्य प्रयोजन वर्तनी-जाँच के लिए, कुछ लोकप्रिय विकल्प हैं
    1. ispellऔर दोस्त: एमएसीएस में निर्मित और आम तौर पर कहा जाता है ispell-buffer। केवल मांग पर वर्तनी की जाँच करता है।
    2. flyspell-mode: इसके अलावा अंतर्निहित और प्रदान करता है पर मक्खी की जाँच और गलतियों पर प्रकाश डाला गया।
    3. speck-mode: MELPA से उपलब्ध है, यह टाइप करने के बाद रुकने पर शब्द की वर्तनी की जाँच करता है। इसके अलावा फ्लाईस्पेल मोड से कुछ विशिष्ट विशेषताएं हैं जैसे एक ही बफर में कई शब्दकोशों का उपयोग करने में सक्षम हैं। (डिस्क्लेमर: मैंने केवल कुछ समय पहले इस मोड का इस्तेमाल किया था)

ध्यान दें कि उपरोक्त सभी को समर्पित वर्तनी जाँच कार्यक्रम जैसे aspellया hunspellउपयुक्त शब्दकोश की आवश्यकता होती है । मोड केवल कमांड लाइन कार्यक्रमों के लिए एक सुविधाजनक emacs इंटरफ़ेस प्रदान करते हैं।

  • चयनात्मक वर्तनी जाँच के लिए, आप एक फ़ंक्शन को वायरिंग द्वारा flyspell-modeचर के साथ कस्टमाइज़ कर सकते हैं flyspell-generic-check-word-predicateजो चयन करता है कि किन शब्दों को जाँचना चाहिए। आपका सूचीबद्ध उदाहरण हालांकि आसान है - बस उपयोग करें flyspell-prog-modeजो केवल कोड बफ़र्स में टिप्पणियों की जांच करता है।

1
सबसे पहले, मैं आपको अपने उत्तर के लिए धन्यवाद देता हूं। गिल्स और मालाबारबा की टिप्पणियों के बाद मैंने प्रश्न को दो भागों में विभाजित किया है। इसलिए, मेरा सुझाव है कि आप weasel-wordनए प्रश्न के उत्तर के रूप में अपने उत्तर के दूसरे भाग (एक के बारे में ) को पोस्ट करें । आप लिंक मेरे मूल प्रश्न में पा सकते हैं।
११:१४ बजे

कृपया wcheckअपनी सूची में जोड़ें । यह बहुत अच्छा है, हालांकि flyspellहाल ही में इतना अच्छा हो गया है, कि मैं wcheckअब और उपयोग नहीं करता हूं।
रासमस

OSX के लिए, एक्वामाक्स नामक Emacs का अत्यधिक अनुकूलित संस्करण देशी OSX स्पेलचैकर के लिए बिल्ट-इन समर्थन (जिसमें उपयोगकर्ता द्वारा जोड़े गए शब्दों का OSX उपयोगकर्ता शब्दकोश शामिल है) शामिल है। यह एक विशेष आइटम है जो कोई अन्य Emacs संस्करण पेश नहीं कर सकता है।
कानून

6

@ वामसी का जवाब पहले से ही सामान्य-उद्देश्य और चयनात्मक वर्तनी-जांच को शामिल करता है। लेकिन व्यक्तिगत ऑटो सुधार के बारे में क्या ? @Malabarba ने अपने ब्लॉग पर इस विषय के बारे में एक अच्छी पोस्ट की है । मूल विचार गलत शब्दों के जोड़े और एब्बर के रूप में उपयुक्त सुधारों को संग्रहीत करना है । यहाँ (थोड़ा संशोधित संस्करण) कोड है जो आपको यह आसानी से करने देता है:

(defun ispell-word-then-abbrev (p)
  "Call `ispell-word'. Then create an abbrev for the correction made.
With prefix P, create local abbrev. Otherwise it will be global."
  (interactive "P")
  (let ((before (downcase (or (thing-at-point 'word) "")))
        after)
    (call-interactively 'ispell-word)
    (setq after (downcase (or (thing-at-point 'word) "")))
    (unless (string= after before)
      (define-abbrev
        (if p local-abbrev-table global-abbrev-table) before after))
      (message "\"%s\" now expands to \"%s\" %sally."
               before after (if p "loc" "glob"))))

(define-key ctl-x-map (kbd "C-i") 'ispell-word-then-abbrev)
(setq save-abbrevs t)
(setq-default abbrev-mode t)

इस जगह के साथ, आप बस कर सकते हैं

  1. C-x C-iएक गलत शब्द के बाद मारा
  2. एक सुधार का चयन करें, और
  3. फिर कभी इसकी चिंता मत करो

क्योंकि अब से Emacs स्वचालित रूप से सुधार के साथ शब्द के गलत वर्तनी वाले संस्करण को बदल देगा। यह कितना उपयोगी है इसे शब्दों में बयां करना मुश्किल है!


यदि आप Emacs की नई-पाई गई ऑटो-करेक्शन क्षमताओं को सुपरचार्ज करना चाहते हैं, तो आप यहाँ परिभाषित एब्रोव्स को अपनी abbrev_defsफ़ाइल में जोड़ सकते हैं ।

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