मैं स्पेलचेक चयन विंडो कैसे बना सकता हूं जिससे मुझे अपना सुधार करने की अनुमति मिल सके?


14

वर्तनी जाँच करते समय, कुंजीयन z=, एक चयन सूची लाता है, जैसा कि दिखाया गया है।

सही का चयन करें

जैसा कि आप सही वर्तनी देख सकते हैं; "अर्थात" को किसी भी विकल्प के रूप में नहीं दिखाया गया है। मैं इस मेनू को बढ़ाना चाहूंगा, ताकि मैं इसके बजाय "अर्थात" में टाइप करूं और एंटर दबाकर इसे बदल दिया जाए।

यह भी अच्छा होगा, अगर उसी चरण के हिस्से के रूप में यदि मैं प्रस्तुत विकल्पों में से एक का नाम लिखना शुरू कर सकता हूं और टैब उससे प्रतिस्पर्धा कर सकता है - तो मेरा दिमाग संख्याओं को दर्ज करने के बजाय शब्दों को दर्ज करने के बजाय शब्दों को बदलने पर बेहतर काम करता है।

मुझे संदेह है कि इसे प्लग-इन के साथ किया जाना चाहिए, लेकिन मुझे यकीन नहीं है कि यह केवल एक कॉन्फिगर विकल्प नहीं है।

जवाबों:


5

को देखते हुए spell_suggest()में समारोह spell.cइस के साथ संभव प्रतीत नहीं होता है z=। सभी संभावित सुझावों को प्राप्त करने और प्रदर्शित करने के बाद, यह होता है:

/* Ask for choice. */
selected = prompt_for_number(&mouse_used);

prompt_for_number()में रहता है misc1.c, और वही करता है जो आप इसे करने की उम्मीद करेंगे: यह एक नंबर के लिए संकेत देता है ( get_number()उसी फ़ाइल में भी देखें )। मैपिंग या अन्य इनपुट की अनुमति नहीं है।


एक दूसरा विकल्प डालने के मोड में Ctrl x+ sया Ctrl x+ Ctrl s1 के माध्यम से विम के वर्तनी "पूरा" का उपयोग करना है। यह मोटे तौर पर आप क्या चाहते हैं। आप के साथ पूर्ण करने से चुन सकते हैं Ctrl nऔर Ctrl pया तीर कुंजियों का, या अपने स्वयं सुधार टाइप करें।

आप अपनी कुंजी के साथ ऐसा करने के लिए supertab प्लगइन का उपयोग कर सकते हैं Tab:help ins-completionएक CleverTab()फ़ंक्शन भी है जिसे आप इसके लिए अनुकूलित कर सकते हैं।

अधिक जानकारी के लिए देखें: :help ins-completion, :help i_CTRL-X_s


अंत में, विम का spellsuggest()कार्य है, जो वर्तनी सुझावों की एक सूची देता है:

:echo spellsuggest('hellz')
['hells', 'hello', 'hell', 'help', 'halls', 'heals', 'heels', 'hills', 'hulls', 'hell''s',
 'hellos', 'hell’s', 'held', 'helm', 'tell', 'well', 'bells', 'cells', 'dells', 'fells',
 'helot', 'helve', 'hertz', 'hilly', 'holly']

आप अपने स्वयं के वर्तनी सुझाव स्क्रीन के निर्माण के लिए इस फ़ंक्शन का उपयोग कर सकते हैं।


पाद लेख

1 : ध्यान दें कि Ctrl sडॉक्स उल्लेख के अनुसार काम नहीं कर सकता है:

नोट: CTRL-S कई यूनिक्स टर्मिनलों में प्रदर्शन को निलंबित करता है। इसके बजाय 's' का उपयोग करें। प्रदर्शित करने के लिए CTRL-Q टाइप करें।

यदि आप gVim का उपयोग कर रहे हैं, तो Ctrl sकाम करना चाहिए। या आप अपने टर्मिनल में इसे अक्षम कर सकते हैं stty -ixon


3

मैं @ क्विंसी-बोवर्स उत्तर का विस्तार / समेकन करने जा रहा हूं:

  1. आप वर्तनी सुझाव स्क्रीन से अपने सुझाव दर्ज नहीं कर सकते।
  2. यह अपना सुझाव देने के लिए स्पेल सुझाव स्क्रीन में प्रवेश करने के लिए (VIM में) ज्यादा अर्थ नहीं रखता है।

VIM एक टेक्स्ट एडिटर है। चूंकि यह वही है जो इसे सबसे अच्छा करता है और यह अपने आप संपादन को छोड़ देता है। दूसरे शब्दों में, अपने स्वयं के कस्टम सुझाव के लिए गलत वर्तनी वाले शब्द को बदलने का उत्तर सिर्फ enterसुझाव सूची को खारिज करने के लिए दबाएं और फिर शब्द को अपनी सही वर्तनी में मैन्युअल रूप से बदलें। (इसके ciwलिए एकदम सही काम करता है)।

तब (जैसा कि @ quincy-bowers ने सुझाव दिया है) यदि आप चाहते हैं कि कस्टम सही वर्तनी बाद की सुझाव सूचियों में दिखाई दे, zgजब कर्सर शब्द पर होता है और इसे आपके वर्तनी शब्दकोश ( :help zgविवरणों के लिए देखें) में जोड़ा जाएगा ।

हालांकि, यह सब कहने के बाद, इसने चतुर लोगों को नहीं रोका है जो वीआईएम का उपयोग करने से वैकल्पिक विकल्प ढूंढते हैं (एक बिल्ली जो वे कहते हैं, त्वचा के लिए असीमित तरीके) और इसलिए आप उदाहरण के लिए एक वैकल्पिक प्लगइन का प्रयास कर सकते हैं -स्पाइट-सुझाव


वर्तमान वर्कफ़्लो का वर्णन करना उत्तर की तुलना में अधिक टिप्पणी है। हालांकि आप इसे अच्छे से समझाते हैं।
लिंडन व्हाइट

1
@Oxinabox शायद आप की तर्ज पर कुछ और खोज रहे हैं: vim.org/scripts/script.php?script_id=4929 हो सकता है?
सुकीमा

हां, यह बहुत अधिक है जैसे मैं क्या देख रहा हूं।
लिंडन व्हाइट

2

किसी भी प्लगइन्स को जोड़े बिना आप अपनी वर्तनी फ़ाइल में एक ज्ञात अच्छा शब्द जोड़ सकते हैं। z=वर्तनी सुझावों को लाने के बजाय , उस पाठ का चयन करें जिसे आप वर्तनी फ़ाइल में जोड़ना चाहते हैं और दबाएं zg

मुझे यह भी ध्यान देना चाहिए कि वर्तनी सुझाव विंडो के भीतर आप माउस का उपयोग कर सकते हैं, जिसे आप तब तक चुनना चाहते हैं जब तक आपने माउस को NORMAL मोड के लिए सक्षम नहीं किया है। मैंने set mouse=aअपने .vimrc में सेट किया है, उदाहरण के लिए, जो सभी मोड में माउस को सक्षम करता है चाहे मैं विम या जीवीम में हूं।

मुझे नहीं लगता कि आप चाहते हैं कि अन्य चीजें एक प्लगइन के बिना पूरी की जा सकती हैं या खुद को बदल सकती हैं।


1
ये सभी उपयोगी सुझाव हैं, लेकिन मैं नहीं देखता कि वे सवाल का जवाब कैसे देते हैं?
मार्टिन टूरनोइज

@Carpetsmoker मैं खुद के जवाब के बारे में भी यही कह सकता था। मैंने उससे कहा कि यह संभव नहीं है और एक संभावित कार्य के रूप में वर्कफ़्लो को बदलने की पेशकश की है। जैसे आपने किया।
क्विंसी बोवर्स

1
@MartinTournoij यह उत्तर वास्तव में समस्या का समाधान देता है: नए शब्द को शामिल करने की आवश्यकता > zg इस तरह के समावेश को निष्पादित करता है
निलोन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.