highlight

Syntax highlighter for R


output: github_document

library(highlight)
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "README-"
)

highlight

highlight is a syntax highlighter for R code.

Installation

You can install highlight from github with:

# install.packages("devtools")
devtools::install_github("romainfrancois/highlight")

Typical highlighting (lestrade)

Typical syntax highlighting is only interested in whether a token is a function
call, a keyword, a string, … this is what the lestrade detective does:

highlight( file = "css_file.R", detective = lestrade )

This will look like this:

This differentiates function calls,
formal arguments, used arguments
because lestrade identified these tokens as such.

semantic highlighting (sherlock)

Traditional highlighting only reveals the obvious, so the package also benefits from
the investigation of sherlock for semantic highlighting. In semantic highlighting,
every symbol gets a different color.

highlight( file = "css_file.R", detective = sherlock )

With this we can quickly skim through the file and see e.g. the different uses of filename.

In rmarkdown

To use in rmarkdown you can use the hl_hook_source and hl_hook_document hooks. Unfortunately this
does not work for README on github so this document uses screenshots.

knitr::knit_hooks$set( 
  source = hl_hook_source, 
  document = hl_hook_css
)