$ grep "'" /usr/share/dict/words | wc -l
26226
$ grep -i python /usr/share/dict/words
Python
Python's
python
python's
pythons
समस्या यह है कि एपोस्ट्रोफ के साथ ये सभी शब्द वास्तव में आपकी डिक्शनरी फ़ाइल में हैं। इसलिए यदि आप अपने vim वर्तनी शब्दकोश को संशोधित करने के साथ ठीक हैं, तो ऐसा करें:
$ grep "'" /usr/share/dict/words | sed "s/'/’/g" >> ~/.vim/spell/en.utf-8.add
यह करेगा
grep
अपने सिस्टम शब्दकोश के सभी शब्दों को खोजने के लिए जिसमें एक एपॉस्ट्रॉफ़ ( '
) है;
sed
सीधे उद्धरण को स्मार्ट उद्धरण में बदलने के लिए (यह s/'/’/g
, जहां पहला उद्धरण सीधा है और दूसरा स्मार्ट है); तथा
- इसे अपनी भाषा के शब्दकोश में जोड़ें (जो भी आपकी भाषा है उसे बदलें)।
आपको इसे एक .spl
फ़ाइल में पुनः स्थापित करने की आवश्यकता होगी , जिसे आप विम से कर सकते हैं:
:mkspell! ~/.vim/spell/en.utf-8.add
यदि आप वास्तविक वर्तनी फ़ाइलों का उपयोग करना चाहते हैं जो विम एक प्रारंभिक स्थान (आपके सिस्टम शब्दकोश के बजाय) के रूप में उपयोग करता है, तो आप :spelldump
कमांड का उपयोग कर सकते हैं । आउटपुट में वर्तमान के लिए Vim उपयोग करने वाले सभी शब्द शामिल होंगे spelllang
, जिसमें.add
फ़ाइल से पहले से ही शामिल हैं । :spelldump
किसी फ़ाइल के परिणाम को सहेजें और पहले दो पंक्तियों (हेडर जानकारी) को हटा दें, फिर ऊपर के समान कमांड का उपयोग करें। आप uniq
डुप्लिकेट प्रविष्टियों को हटाने के लिए, साथ ही इसके माध्यम से पाइप करना चाहते हैं। (करने की आवश्यकता नहीं है sort
; का उत्पादन :spelldump
पहले से ही हल है।)
's
पैटर्न के रूप में क्यों उपयोग करते हैं ? सिर्फ'
सही के लिए खोज नहीं है, अच्छी तरह से? यह शब्द एक है कि याद करेंगे'
(जैसे एक अलग स्थान मेंyou'd
,you've
आदि)