View source: R/gen_tag_functions.R
gen_tag_functions | R Documentation |
XiMpLe_node
objectsTakes a vector of character strings and turns them into functions in the defined environment
which in turn will generate XiMpLe_node
objects with the
string values as tag names.
gen_tag_functions( tags, func_names = paste0(tags, "_"), envir = .GlobalEnv, replace = FALSE, func_rename = c(`?xml_` = "xml_", `!--_` = "comment_", `![CDATA[_` = "CDATA_", `!DOCTYPE_` = "DOCTYPE_") )
tags |
A character vector defining the tags the generated functions should produce. |
func_names |
A character vector the same length as |
envir |
The environment where all generated functions should appear. |
replace |
Logical, whether objects by the same name already present in |
func_rename |
Named character vector defining which tags' functions should get a different name. This makes it easier to get functions with valid names that generate special tag nodes. |
The generated functions will be named according to func_names
and only have a dots
argument that is given to XMLNode
. See the examples to
understand how it's supposed to work.
As many functions as specified by tags
/func_names
.
XMLNode
,
# Say we would like to generate an HTML website and want to use # <a>, <div> and <p> tags. # The standard way of creating a <div> node would be this: (my_node <- XMLNode("div", "some content", class="important")) # By using gen_tag_functions(), we can create some shortcut functions # to get better readability for our code and save some typing: gen_tag_functions(tags=c("a", "div", "p")) # We can now use div_() instead of XMLNode("div"): (my_node2 <- div_("some content", class="important")) # It also works for nested tags: (my_node3 <- div_(a_(href="foo", "some content"))) # If you don't want these functions filling up your .GlobalEnv, # you can also put them in an attached environment, e.g. attach(list(), name="XiMpLe_wrappers") gen_tag_functions(tags=c("head", "body"), envir=as.environment("XiMpLe_wrappers"))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.