آموزشچگونه

آموزش خط فرمان: قسمت پنجاه و هفتم، فرمان aspell (غلط‌یاب املای تعاملی)

Print Friendly, PDF & Email

آخرین ابزاری که در رابطه با پردازش متن (Text Processing) بررسی خواهیم کرد، فرمان aspell که یک غلط‌یاب املای تعاملی است، می‌باشد.

برنامه aspell جانشین برنامه‌ای با نام ispell است و برای بیشتر بخش‌ها می‌تواند جایگزینی مناسب باشد. درحالی‌که ابزار aspell بیشتر توسط سایر برنامه‌ها که دارای قابلیت غلط‌یابی املایی است، استفاده می‌شود ولی این ابزار می‌تواند به‌تنهایی و از طریق خط فرمان نیز به‌صورت موثر، مورد استفاده قرار گیرد. این ابزار توانایی بررسی کردن هوشمندانه انواع مختلف فایل‌ها شامل اسناد HTML، برنامه‌های C/C++ و سایر انواع اتخصاصی متن را دارد.

برای غلط‌یابی یک فایل متنی که حاوی متنی ساده است، فرمان aspell را می‌توان با ساختار زیر استفاده کرد:

در این ساختار textfile نام فایل متنی است که می‌خواهیم آن را بررسی کنیم. به‌عنوان یک مثال کاربردی ابتدا یک فایل ساده متنی با نام foo.txt که حاوی برخی خطاهای املایی غلط هست ایجاد می‌کنیم:

اکنون فایل را با فرمان aspell بررسی می‌کنیم، کد زیر را وارد کنید:

نتیجه را مشاهده کنید:

همان‌طور که مشاهده می‌کنید، اولین غلط املایی ما Highlight شده است. برنامه به ما گزینه‌هایی را پیشنهاد می‌کند و در مقابل از ما برای اصلاح جواب می‌خواهد. تلفظ‌های صحیح با شماره‌هایی مشخص شده‌اند. در زیر آن اکشن‌های مورد نظر با کلمات میان‌بر مشخص شده و در آخر هم از ما می‌پرسد که چه‌کاری انجام دهد؟

شماره مربوط بهjumped  عدد ۱ می‌باشد، آن را وارد می‌کنیم و به غلط املایی بعدی هدایت می‌شویم. آن‌قدر این کار را ادامه می‌دهیم تا همه غلط‌ها برطرف شوند. زمانی که غلط‌ها برطرف شدند، برنامه از حالت تعاملی خارج می‌شود. برنامه به‌صورت پیش‌فرض برای ما فایل بکاپی را که حاوی متن اصلی با پسوند bak است را با نام فایل ایجاد می‌کند. برای نشان دادن قدرت کار خود با ابزار sed که اخیرا آن را شرح دادیم، برخی از غلط‌های املایی خود را به حالت قبلی بازمی‌گردانیم:

می‌بیینم که فرمان aspell می‌تواند با انواع مختلف فایل متنی کار کند. با استفاده از یک ویرایشگر متنی مثلا vim یک محتوای HTML ساده که دارای غلط املایی است را به فایل خود اضافه می‌کنیم:

مجددا aspell را بر روی فایل اجرا می‌کنیم:

و نتیجه عجیبی را دریافت می‌کنیم!

فرمان aspell فایل ما را یک فایل متنی ساده فرض می‌کند و تگ‌های HTML را به‌عنوان غلط املایی تشخیص می‌دهد. دلیل آن، این است که به aspell نفهمانیدم که فرمت فایل ما چیست. این بار همین کار را با اضافه کردن گزینه –H مجدد انجام می‌دهیم:

نتیجه چنین خواهد شد:

مشاهده می‌گردد که کد HTML نادیده گرفته شده و فقط Markup ساده متنی برای غلط‌یابی بررسی می‌شود.

منبع: کتاب The Linux Command Line نوشته William E. Shotts

Related Articles

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Close