aspell
位於 utils
包(package)。 說明
通過 Aspell、Hunspell 或 Ispell 對給定文件進行拚寫檢查。
用法
aspell(files, filter, control = list(), encoding = "unknown",
program = NULL, dictionaries = character())
參數
files |
包含要檢查的文件名稱的字符向量。 |
filter |
用於在拚寫檢查之前處理文件的可選過濾器,以函數形式給出(使用形式 |
control |
拚寫檢查器的控製選項的列表或字符向量。 |
encoding |
文件的編碼。根據需要回收。 |
program |
給出要使用的拚寫檢查程序的名稱(如果在係統路徑上)或完整路徑的字符串,或 |
dictionaries |
要使用的其他 R 級別字典的名稱或文件路徑的字符向量。沒有路徑分隔符的元素指定 R 係統字典(在子目錄‘分享/字典R 主目錄的’)。文件擴展名(目前隻有‘.rds’)可以省略。 |
細節
使用的拚寫檢查程序必須支持通過命令行選項激活的所謂 Ispell 管道接口-A。除了程序之外,還需要提供合適的詞典。看http://aspell.net,https://hunspell.github.io/和https://www.cs.hmc.edu/~geoff/ispell.html,分別用於獲取 Aspell、Hunspell 和(國際)Ispell 程序和詞典。
在 Windows 上,Aspell 可通過 MSYS2 獲得。應使用非 Cygwin 版本,例如包mingw-w64-x86_64-aspell
。針對 Cygwin 運行時(包 aspell
)構建的版本需要文件和 Unix-style 路徑中的 Unix 行結尾,這與 aspell()
不兼容。
目前可用的內置過濾器有"Rd"
(對應RdTextFilter
)、"Sweave"
(對應SweaveTeXFilter
)、"R"
、"pot"
、"dcf"
和"md"
。
過濾器 "R"
用於 R 代碼,並在調用 message
、 warning
、 stop
、 packageStartupMessage
、 gettext
、 gettextf
和 ngettext
(未命名)中提取消息字符串常量。字符串常量對於前五個,fmt
和 msg1
/msg2
字符串常量分別用於後兩個)。
篩選"pot"
用於消息字符串目錄‘。鍋’文件。雙方都有爭議ignore
允許為要忽略拚寫檢查的消息字符串部分提供正則表達式:例如,使用"[ \t]'[^']*'[ \t[:punct:]]"
忽略單引號內的所有文本。
篩選"dcf"
適用於 Debian 控製文件格式的文件。要保留的字段可以通過參數控製keep
(帶有相應字段名稱的字符向量)。默認情況下, '標題' 和 '說明' 字段被保留。
篩選"md"
用於文件降價格式 ('.md' 和 '.Rmd’文件),並且需要包commonmark
和xml2
可用。
aspell
返回的對象的 print 方法有一個 indent
參數,控製可能拚寫錯誤的單詞位置的縮進。默認為2; Emacs 用戶可能會發現使用縮進 0 並訪問 grep-mode 中的輸出很有用。它還具有 verbose
參數:當該參數為 true 時,還會顯示替換建議。
可以使用額外的 R 級字典。目前,這些文件的擴展名為“.rds’通過使用序列化單詞列表的字符向量獲得saveRDS
。如果使用這樣的詞典,它們會被組合成一個單詞列表文件,然後用作拚寫檢查器的個人詞典(選項-p):因此,在這種情況下不使用默認的個人詞典。
值
繼承自aspell
(具有有用的打印方法)的 DataFrame ,其中包含有關可能拚寫錯誤的單詞的信息。
例子
## Not run:
## To check all Rd files in a directory, (additionally) skipping the
## \references sections.
files <- Sys.glob("*.Rd")
aspell(files, filter = list("Rd", drop = "\\references"))
## To check all Sweave files
files <- Sys.glob(c("*.Rnw", "*.Snw", "*.rnw", "*.snw"))
aspell(files, filter = "Sweave", control = "-t")
## To check all Texinfo files (Aspell only)
files <- Sys.glob("*.texi")
aspell(files, control = "--mode=texinfo")
## End(Not run)
## List the available R system dictionaries.
Sys.glob(file.path(R.home("share"), "dictionaries", "*.rds"))
參考
Kurt Hornik and Duncan Murdoch (2011). “Watch your spelling!” The R Journal, 3(2), 22-28. doi:10.32614/RJ-2011-014.
也可以看看
aspell-utils 用於拚寫檢查包的實用程序。
相關用法
- R aspell-utils 拚寫檢查實用程序
- R askYesNo 提出是/否問題
- R available.packages 列出類似 CRAN 的存儲庫中的可用軟件包
- R adist 近似弦距
- R aregexec 近似字符串匹配位置
- R arrangeWindows 在 MS Windows 上重新排列 Windows
- R apropos 按(部分)名稱查找對象
- R alarm 提醒用戶
- R select.list 從列表中選擇項目
- R COMPILE 編譯用於 R 的文件
- R readRegistry 讀取 Windows 注冊表配置單元
- R browseVignettes 在 HTML 瀏覽器中列出暈影
- R hasName 檢查姓名
- R nsl 按主機名查找 IP 地址
- R edit 調用文本編輯器
- R create.post 準備電子郵件和帖子的輔助函數
- R hsearch-utils 幫助搜索實用程序
- R download.packages 從類似 CRAN 的存儲庫下載軟件包
- R DLL.version MS Windows 上的 DLL 版本信息
- R ls.str 列表對象及其結構
- R Rscript R 前端腳本
- R bug.report 發送錯誤報告
- R PkgUtils 用於構建和檢查附加包的實用程序
- R cite 引用參考書目條目
- R SweaveSyntConv 轉換 Sweave 語法
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Spell Check Interface。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。