rless

CRAN statusTravis build status

rless is R package providing CSS preprocessor features to R users.

It uses LESS language, which is an CSS extension giving option to use variables, functions or using operators while creating styles. Visit oficial LESS website for more information about language specifics.

Provided LESS content is converted into CSS using V8 JavaScript engine.

Installation

You can install the released version of rless from CRAN with:

install.packages("rless")

or install the latest development build from Github:

# install.packages("devtools")
devtools::install_github("ciirc-kso/rless")

Examples

The simplest way to use rless is to call parse_less function with less content.

library(rless)

less <- "
@width: 10px;
@height: @width + 10px;

#header {
  width: @width;
  height: @height;
}
"

css <- parse_less(less)
cat(css)
#> #header {
#>   width: 10px;
#>   height: 20px;
#> }
less <- "
.bordered {
  border-top: dotted 1px black;
  border-bottom: solid 2px black;
}

#menu a {
  color: #111;
  .bordered();
}

.post a {
  color: red;
  .bordered();
}
"

css <- parse_less(less)
cat(css)
#> .bordered {
#>   border-top: dotted 1px black;
#>   border-bottom: solid 2px black;
#> }
#> #menu a {
#>   color: #111;
#>   border-top: dotted 1px black;
#>   border-bottom: solid 2px black;
#> }
#> .post a {
#>   color: red;
#>   border-top: dotted 1px black;
#>   border-bottom: solid 2px black;
#> }

We strongly recommend to visit official guide to grasp the full power of the LESS preprocessor tool.

Acknowledgment

This work was supported by a junior grant research project by Czech Science Foundation GACR no. GJ18-04150Y.