當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R rtags 類似 Etags 的 R 標記實用程序


R語言 rtags 位於 utils 包(package)。

說明

rtags 使用 R 自己的解析器為 R 代碼提供 etags-like 索引函數。

用法

rtags(path = ".", pattern = "\\.[RrSs]$",
      recursive = FALSE,
      src = list.files(path = path, pattern = pattern,
                       full.names = TRUE,
                       recursive = recursive),
      keep.re = NULL,
      ofile = "", append = FALSE,
      verbose = getOption("verbose"),
      type = c("etags", "ctags"))

參數

path , pattern , recursive

論點傳遞給list.files確定要標記的文件。默認情況下,這些都是擴展名為“.R', '.r', '.S', 和 '.s' 在當前目錄中。如果出現以下情況,這些參數將被忽略src被指定。

src

要索引的文件名向量。

keep.re

進一步限製的正則表達式src(要索引的文件)。例如,指定keep.re = "/R/[^/]*\\.R$"隻會保留擴展名為“的文件”.R' 在名為 ' 的目錄中R’。

ofile

作為 file 參數傳遞給 cat;通常是寫入標簽的輸出文件(按照慣例"TAGS""tags")。默認情況下,輸出寫入 R 控製台(除非重定向)。

append

邏輯,指示輸出是否應覆蓋現有文件或附加到該文件。

verbose

邏輯性強。如果是 TRUE ,則文件名在處理時會回顯到 R 控製台。

type

指定要生成 emacs 風格 ( "etags" ) 還是 vi 風格 ( "ctags" ) 標簽的字符串。

細節

許多文本編輯器允許通過標記實用程序在源文件中快速輕鬆地定位函數和其他語言對象的定義。此函數需要預處理相關源文件,生成包含名稱及其相應位置的索引(或標記)文件。有多種標記文件格式,最流行的是 vi-style ctags 格式和 emacs-style etags 格式。這些格式的標記文件通常分別由 ctagsetags 實用程序生成。不幸的是,這些程序無法識別 R 代碼語法。它們確實允許通過正則表達式標記任意語言文件,但這還不夠。

rtags 函數旨在成為 R 代碼的標記實用程序。它解析 R 代碼文件(使用 R 的解析器)並生成 etags 和 ctags 格式的標簽。對 vi-style ctags 的支持還很初級,是根據 Neal Fultz 的補丁改編的;參見PR#17214

使用命令行包裝腳本 R CMD rtags 可能更方便。

例子


## Not run: 
rtags("/path/to/src/repository",
      pattern = "[.]*\\.[RrSs]$",
      keep.re = "/R/",
      verbose = TRUE,
      ofile = "TAGS",
      append = FALSE,
      recursive = TRUE)

## End(Not run)

作者

Deepayan Sarkar

參考

https://en.wikipedia.org/wiki/Ctags, https://www.gnu.org/software/emacs/manual/html_node/emacs/Tags-Tables.html

也可以看看

list.files , cat

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 An Etags-like Tagging Utility for R。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。