2012-10-09 6 views
16

मेरे पास कुछ फाइलें हैं जिन्हें मैं वर्तनी जांचना चाहता हूं। आम तौर पर मैं इन्हें vim में खोलूंगा, :set spell चलाएं और परिवर्तन करें। फाइलों को खोलना वाकई बेहद चिंतित है और मैन्युअल रूप से जांच करता है कि क्या मैंने आखिरी चेक के बाद से किसी भी शब्द को गलत तरीके से याद किया है।एकाधिक फ़ाइलों पर वर्तनी जांच कैसे चलाएं और खोल स्क्रिप्ट में किसी भी गलत शब्द को प्रदर्शित करें?

क्या कोई तरीका है कि मैं कई फाइलों पर एक वर्तनी-जांच चला सकता हूं और फ़ाइल नाम के साथ किसी गलत तरीके से वर्तनी वाले शब्द प्रदर्शित कर सकता हूं, ताकि मैं जा सकूं और उन्हें बदल सकूं? मैं हर फाइल खोलना नहीं चाहता, जांचें कि यह "साफ" है, फिर अगला खोलें और दोहराएं।

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

मैं OS X चला रहा हूं, इसके लायक होने के लिए।

उत्तर

20

आप ओएस एक्स brew info aspell पर होमब्री के साथ एस्पेल स्थापित कर सकते हैं समर्थित भाषाओं की सूची।

brew install aspell --lang=en,fi,jp 

aspell check एक इंटरैक्टिव वर्तनी परीक्षक में एक फ़ाइल को खोलता है:

for f in *.txt; do aspell check $f; done 

aspell list प्रिंट सभी अपरिचित शब्द:

cat *.txt | aspell list | sort -u 

सीखा शब्द डिफ़ॉल्ट रूप से .aspell.en.pws में संग्रहीत हैं। पहली पंक्ति के रूप में personal_ws-1.1 en जोड़ने के बाद आप ~/Library/Spelling/en में शब्दों को भी बहिष्कृत कर सकते हैं।

aspell list --personal=$HOME/Library/Spelling/en 
3

aspell का उपयोग करना, यह प्रत्येक फ़ाइल नाम तो गलत वर्तनी शब्दों का एक क्रमबद्ध सूची एक साथ समय की संख्या के साथ प्रिंट होगा वे होते हैं:

for f in *.txt ; do echo $f ; aspell list < $f | sort | uniq -c ; done 
संबंधित मुद्दे