电脑技术学习

FreeBSD spell 拼字检查

dn001

◎前言: 不知您是否有用過 spell 這個程式, 他有一個很大的缺點 就是無法更正錯誤字... 而ispell顧名思義,就是Interactive spelling checking -- 互動式拼字檢查 。 有興趣試試看的人,可以嘗試用用以前的redhat Linux。 ◎ispell:互動式拼字檢查 透過這個程式,可以檢視您的檔案是否有錯別字。 若有的話,可以選擇取代、忽略或是可能的字。 安裝: 您可以發現,在textproc之中,有spell和ispell,而聰敏的FreeBSD會幫您都裝上。 支援語系: 安裝的過程中可以看到這個畫面,顯示除了預設的檢查英文 還有其他語言可以供您選擇,我只會英文所以.. 若要支援其他語言,在make install的時候,需要額外加上參數。 如支援法文的拼字檢查,則安裝時請輸入: 安裝完成後,別忘了要make clean, 此時又驗證FreeBSD會一併裝上spell與ispell。 ◎spell: 位置:/usr/local/bin/spell 語法:spell < 欲檢測的檔案 說明:ispell預設會將錯誤的字顯示在螢幕。 我隨便輸了3行字,其中只有第二行為字典中找得到的,所以spell顯示另外兩行有錯誤的。 ◎ispell敘述: ispell最常被使用的形式為:ipsell filename 此時,ipsell將會在螢幕的頂端,展示每一個不存在字典中的"字", 並且允許你去改變它。 此時,包含這個錯誤字的那一行和該行先前一行,會被一起列出在螢幕上端, 若您的終端機能夠顯示反白的話,該錯誤字將會以高反白的情況顯示。 你可以徹底取代這個字的,或者是選一個被建議的字。 完成修正之後,系統會自動幫您留一個備份為: 原檔案名稱.bak 命令群是一些單獨的字,如下: ◎互動式拼字程式內命令: R 將拼錯的字取代(手動輸入取代) Space 僅有這次接受這個"字"。 A 接受目前的拼法,剩下的文件中比照處理。 I 接受這個字,用大寫書寫此字,並更新私人的字典檔。 U 接受這個字,並且增加一個小寫的版本到私人的字典檔。 0-n 用系統建議的最相近字取代(0-n 為編號) L 在系統的字典檔中搜尋字。 X 離開,但會將已經改變的儲存,其餘不便。 Q 離開,若內容已有更改會詢問是否要改變。 ! 跳脫回到shell ,可執行其他shell命令 命令執行完後 按space回ispell ^L 重畫螢幕 ^Z 暫停ispell程式 ? 求助視窗 ◎ispell 啟動:ispell [common-flags] [-M|-N] files A.切換式參數: ispell [-M|-N] files-M 參數被定義,在螢幕的下方,有命令提示視窗會概述這些參數。 相反的,-N 參數,會讓命令提示視窗從畫面消失。 (命令提示視窗預設是被顯示的) B.特殊旗標(flag): 若-L旗標被賦予,此定義的數字被視為在螢幕上方要空出多少行數。 若-V旗標被賦予,不屬於7-bit ANSI 可列印字元集會以"cat -v"方式被顯示, 這個旗標當您在老舊的終端機上工作時非常有用,ispell會顯示8-bit字元 將被選擇的檔案型態,視為已經被定義的字串字元。 C.一般旗標: ispell [common-flags] [-M|-N] files -t 輸入的檔案是TeX或LaTeX格式。 -n 輸入的檔案是nroff/troff格式。 -H 輸入的檔案格式是SGML/HTML格式。 這實在應該用-s,但因為歷史因素所以-s旗標已經被使用。 -b 建立一個備份檔案,備份檔名稱為原有名稱加上.bak。 -x 不建立備份檔。 -B 將run-together 這種類型的字,視為字與字間遺失空白,作為拼字錯誤。 -C 將run-together 這種類型的字,為合法的複合字。 說明: -B-C參數,是用來處理一些粘在一起的字元,像是notthe應為not the。 若使用-B參數,則這個字會被視為錯誤,並建議用not the、not-the或其他取代; 而使用-C參數,若此連結字的兩個部分都屬於合法字,則視為沒有錯誤。 -S 以正確的可能性來排序最接近字。 -Wn 定義此長度的字永遠為合法字 ◎個人的字典: 若有些字是你自己創出來的(字典沒有的字),但是又常用的,你可以加入自己的字典檔。 ispell會先搜尋個人的家目錄,而後搜尋現在的目錄所在位置。 在自己的家目錄下,加上.ispell_Words或是.ispell_english這兩個檔案. 其餘語言類推。( .ispell_語言 ) 檔案內容為自創的字,一個字一行。 由於預設語系是英文,所以同一資料夾下.ispell_english會優於.ispell_words執行。 也就是說若兩個檔案同時出現,只有.ispell_english產生效用。 ◎參考資料:ispell(1)

标签: