The goal of gluedown
is to ease the transition from R’s powerful
vectors to formatted markdown text. The package uses
glue()
to wrap character vectors
in markdown syntax. With the knitr
package, users can print the formatted vectors directly to the body of a
markdown document.
Install the release version from CRAN:
install.packages("gluedown")
The development version can be installed from GitHub:
# install.packages("remotes")
remotes::install_github("k5cents/gluedown")
library(gluedown)
library(stringr)
library(rvest)
Use the results='asis'
chunk option to print the formatted output to
the body of a document.
```{r results='asis'}
md_order(x = c("Legislative", "Executive", "Judicial"))
```
- Legislative
- Executive
- Judicial
Printing vectors as markdown lists was the initial inspiration for the package. Here, we use five different functions to create five elements of a new vector.
inlines <- c(
md_bold("Alabama"),
md_code("Alaska"),
md_link("Arizona" = "https://az.gov"),
md_italic("Arkansas"),
md_strike("California")
)
print(inlines)
#> [1] "**Alabama**" "`Alaska`"
#> [3] "[Arizona](https://az.gov)" "_Arkansas_"
#> [5] "~~California~~"
Then we can print that new vector as a list, including the inline formatting.
md_bullet(inlines)
- Alabama
Alaska
- Arizona
- Arkansas
California
You can also use gluedown
to format R inline code
results.
name <- sample(state.name, size = 1)
abb <- state.abb[match(name, state.name)]
# `r md_bold(name)`
# `r md_italic(abb)`
In this case, our randomly selected state is New Hampshire, which has the abbreviation NH.
All functions are designed to fit within the tidyverse ecosystem and work with pipes.
read_html("https://w.wiki/A58") %>%
html_node("blockquote") %>%
html_text(trim = TRUE) %>%
str_remove("\\[.*\\]") %>%
md_quote()
We the People of the United States, in Order to form a more perfect Union, establish Justice, insure domestic Tranquility, provide for the common defence, promote the general Welfare, and secure the Blessings of Liberty to ourselves and our Posterity, do ordain and establish this Constitution for the United States of America.
The package primarily uses GitHub Flavored Markdown, with support for useful extensions like task lists.
legislation <- c("Houses passes", "Senate concurs", "President signs")
md_task(legislation, check = 1:2)
- Houses passes
- Senate concurs
- President signs
Please note that the gluedown
project is released with a Contributor
Code of
Conduct. By
contributing to this project, you agree to abide by its terms.