gluedown
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.
Installation
Install the release version from CRAN:
install.packages("gluedown")
The development version can be installed from GitHub:
# install.packages("remotes")
remotes::install_github("kiernann/gluedown")
Usage
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
Lists
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
Inline
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 Michigan, which has the abbreviation MI.
Pipes
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.
Extensions
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
Contribute
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.