Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/romainfrancois/highlight
Syntax highlighter for R
https://github.com/romainfrancois/highlight
highlight package r syntax-highlighting
Last synced: 24 days ago
JSON representation
Syntax highlighter for R
- Host: GitHub
- URL: https://github.com/romainfrancois/highlight
- Owner: romainfrancois
- License: other
- Created: 2013-10-29T06:39:29.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2019-01-17T20:55:49.000Z (almost 6 years ago)
- Last Synced: 2024-08-13T07:15:08.713Z (3 months ago)
- Topics: highlight, package, r, syntax-highlighting
- Language: R
- Size: 1.25 MB
- Stars: 33
- Watchers: 1
- Forks: 7
- Open Issues: 11
-
Metadata Files:
- Readme: README.Rmd
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - romainfrancois/highlight - Syntax highlighter for R (R)
README
---
output: github_document
---```{r, echo = FALSE}
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:
```r
# 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:```r
highlight( file = "css_file.R", detective = lestrade )
```This will look like this:
![](img/lestrade.png)
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.```r
highlight( file = "css_file.R", detective = sherlock )
```![](img/sherlock.png)
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.```r
knitr::knit_hooks$set(
source = hl_hook_source,
document = hl_hook_css
)
```