11b5b52efSMasatake YAMATO.. _ctags-lang-r(7): 21b5b52efSMasatake YAMATO 31b5b52efSMasatake YAMATO============================================================== 41b5b52efSMasatake YAMATOctags-lang-r 51b5b52efSMasatake YAMATO============================================================== 61b5b52efSMasatake YAMATO------------------------------------------------------------------- 71b5b52efSMasatake YAMATORandom notes about tagging R source code with Universal Ctags 81b5b52efSMasatake YAMATO------------------------------------------------------------------- 91b5b52efSMasatake YAMATO:Version: @VERSION@ 101b5b52efSMasatake YAMATO:Manual group: Universal Ctags 111b5b52efSMasatake YAMATO:Manual section: 7 121b5b52efSMasatake YAMATO 131b5b52efSMasatake YAMATOSYNOPSIS 141b5b52efSMasatake YAMATO-------- 151b5b52efSMasatake YAMATO| **@CTAGS_NAME_EXECUTABLE@** ... --languages=+R ... 161b5b52efSMasatake YAMATO| **@CTAGS_NAME_EXECUTABLE@** ... --language-force=R ... 17*03889d61SMasatake YAMATO| **@CTAGS_NAME_EXECUTABLE@** ... --map-R=+.r ... 181b5b52efSMasatake YAMATO 191b5b52efSMasatake YAMATODESCRIPTION 201b5b52efSMasatake YAMATO----------- 211b5b52efSMasatake YAMATOThis man page gathers random notes about tagging R source code 221b5b52efSMasatake YAMATOwith Universal Ctags. 231b5b52efSMasatake YAMATO 241b5b52efSMasatake YAMATOKinds 251b5b52efSMasatake YAMATO----------- 261b5b52efSMasatake YAMATOIf a variable gets a value returned from a *well-known constructor* 271b5b52efSMasatake YAMATOand the variable appears for the first time in the current input file, 281b5b52efSMasatake YAMATOthe R parser makes a tag for the variable and attaches a kind 291b5b52efSMasatake YAMATOassociated with the constructor to the tag regardless of whether 301b5b52efSMasatake YAMATOthe variable appears in the top-level context or a function. 311b5b52efSMasatake YAMATO 321b5b52efSMasatake YAMATOWell-known constructor and kind mapping 331b5b52efSMasatake YAMATO 3409bc94cdSMasatake YAMATO ============ ================== 351b5b52efSMasatake YAMATO Constructor kind 3609bc94cdSMasatake YAMATO ============ ================== 371b5b52efSMasatake YAMATO function() function 38cd905678SMasatake YAMATO c() vector 392b000035SMasatake YAMATO list() list 4009bc94cdSMasatake YAMATO data.frame() dataframe 4109bc94cdSMasatake YAMATO ============ ================== 421b5b52efSMasatake YAMATO 431b5b52efSMasatake YAMATOIf a variable doesn't get a value returned from one of well-known 441b5b52efSMasatake YAMATOconstructors, the R parser attaches ``globalVar`` or ``functionVar`` kind 451b5b52efSMasatake YAMATOto the tag for the variable depending on the context. 461b5b52efSMasatake YAMATO 471b5b52efSMasatake YAMATOHere is an example demonstrating the usage of the kinds: 481b5b52efSMasatake YAMATO 491b5b52efSMasatake YAMATO"input.r" 501b5b52efSMasatake YAMATO 511b5b52efSMasatake YAMATO.. code-block:: R 521b5b52efSMasatake YAMATO 531b5b52efSMasatake YAMATO G <- 1 54cd905678SMasatake YAMATO v <- c(1, 2) 552b000035SMasatake YAMATO l <- list(3, 4) 5609bc94cdSMasatake YAMATO d <- data.frame(n = v) 571b5b52efSMasatake YAMATO f <- function(a) { 581b5b52efSMasatake YAMATO g <- function (b) a + b 59cd905678SMasatake YAMATO w <- c(1, 2) 602b000035SMasatake YAMATO m <- list (3, 4) 6109bc94cdSMasatake YAMATO e <- data.frame(n = w) 621b5b52efSMasatake YAMATO L <- 2 631b5b52efSMasatake YAMATO } 641b5b52efSMasatake YAMATO 651b5b52efSMasatake YAMATO"output.tags" 661b5b52efSMasatake YAMATOwith "--options=NONE --sort=no --fields=+KZ -o - input.r" 671b5b52efSMasatake YAMATO 681b5b52efSMasatake YAMATO.. code-block:: tags 691b5b52efSMasatake YAMATO 701b5b52efSMasatake YAMATO G input.r /^G <- 1$/;" globalVar 71cd905678SMasatake YAMATO v input.r /^v <- c(1, 2)$/;" vector 722b000035SMasatake YAMATO l input.r /^l <- list(3, 4)$/;" list 7309bc94cdSMasatake YAMATO d input.r /^d <- data.frame(n = v)$/;" dataframe 7409bc94cdSMasatake YAMATO n input.r /^d <- data.frame(n = v)$/;" nameattr scope:dataframe:d 751b5b52efSMasatake YAMATO f input.r /^f <- function(a) {$/;" function 761b5b52efSMasatake YAMATO g input.r /^ g <- function (b) a + b$/;" function scope:function:f 77cd905678SMasatake YAMATO w input.r /^ w <- c(1, 2)$/;" vector scope:function:f 782b000035SMasatake YAMATO m input.r /^ m <- list (3, 4)$/;" list scope:function:f 7909bc94cdSMasatake YAMATO e input.r /^ e <- data.frame(n = w)$/;" dataframe scope:function:f 8009bc94cdSMasatake YAMATO n input.r /^ e <- data.frame(n = w)$/;" nameattr scope:dataframe:f.e 811b5b52efSMasatake YAMATO L input.r /^ L <- 2$/;" functionVar scope:function:f 821b5b52efSMasatake YAMATO 831b5b52efSMasatake YAMATO.. TODO: 841b5b52efSMasatake YAMATO 851b5b52efSMasatake YAMATO - other kinds 861b5b52efSMasatake YAMATO - operators for assignment, <-, <<-, ->>, ->, = 871b5b52efSMasatake YAMATO - illuminating duplicated tags 881b5b52efSMasatake YAMATO - fields (constructor, assignmentop) 891b5b52efSMasatake YAMATO - sub parsers 901b5b52efSMasatake YAMATO 911b5b52efSMasatake YAMATOSEE ALSO 921b5b52efSMasatake YAMATO-------- 931b5b52efSMasatake YAMATOctags(1) 94