siteymlgen makes it easy to organise ‘R Markdown’ website output. The init() function placed within the first code chunk of the index.Rmd file of an ‘R’ project directory will initiate the generation of an automatically written _site.yml file. ‘siteymlgen’ recomends a specific naming convention for your ‘R Markdown’ files. This naming will ensure that your navbar layout is ordered according to a heirarchy. ‘siteymlgen’ package version: 1.0.0
sitegenyml is a package to automate the generation of _site.yml file for building Rmarkdown websites. Often writing the _site.yml can be the most annoying task when generating a webite using Rmarkdown, particularly when there are multiple tabs and sub tabs. The
init() function should be placed in a code cell of your index.Rmd file. When your other
.Rmd files are named according to the siteymlgen convention then the _site.yml will automatically populate.
The basic syntax of yaml is to use key-value pairs with the format
key: value. In a
.Md file, a yaml code block is bounded by
---. Between the code block you can pass instructions in yaml format to modify the output of each file. For example, specifying the author of the document is as straightforward as:
However, writing yaml code can be quite a pain as it needs to be properly formatted and the use of single spaces are important (no tabs or double spacing). One awesome package that allows you to write yaml output fast and accurately is ymlthis. However, when writing large html reports I have often found that writing the
_site.yml can be time consuming and boring. Automating this part of the workflow is the rationale for this package.
_site.yml file is made as painless as possible. The first step is to add a file named
_site.yml into a repository and then add the following into the
You can specify values to modify the basic yaml output. For a full range of input variables please refer to the
?init help section :
init(authors = c("Adam","Paul"), left="yes", dir="~/Documents/siteymlgen/inst/extdata/", navbar_title = "Main title", title = "hello", categories=c("r", "reprodicibility"), toc=TRUE, toc_depth = 3, file="_site.yml")
When you build your website within Rstudio the
init function will parse the directory of
.Rmd files and then arrange them into a navbar. The order in which the
.Rmd files are displayed within your website can be controlled by following our naming convention below.
In order to control how your website navbar is ordered then you need to stick to the following naming convention:
The capital first letter of the file name controls the position of the tab in the navbar. The number controls the position within the dropdown menu, if you do not want a dropdown menu then label the file [A-Z]1_TitleofTab.Rmd.
Included within this package is data that demonstrates the functionality of this project. First copy the data to a new folder:
Then naviage to the directory and create a new R project. Set up build tools so that you can build an R markdown website and then “Build Website”. You will see that the _site.yml file has been populated with yaml output, which was generated by the
init() function within the first code chunk of the