Title: | Server-Side Syntax Highlighting |
---|---|
Description: | Prism <https://prismjs.com/> is a lightweight, extensible syntax highlighter, built with modern web standards in mind. This package provides server-side rendering in R using 'V8' such that no JavaScript library is required in the resulting HTML documents. Over 400 languages are supported. |
Authors: | Jeroen Ooms [aut, cre] , Lea Verou [cph] (Prism JavaScript library) |
Maintainer: | Jeroen Ooms <[email protected]> |
License: | MIT + file LICENSE |
Version: | 2.0.1 |
Built: | 2024-12-02 05:43:33 UTC |
Source: | https://github.com/ropensci/prismjs |
The prism_highlight_text
function takes a string with a single code snippet
and returns an html fragment with syntax classes. This html gets colorized by
the prism stylesheet when both are inserted
in an HTML document.
prism_highlight_text(txt, language = "r") prism_highlight_document( input, output = NULL, include_css = FALSE, preview = interactive() ) prism_process_xmldoc(doc) prism_languages()
prism_highlight_text(txt, language = "r") prism_highlight_document( input, output = NULL, include_css = FALSE, preview = interactive() ) prism_process_xmldoc(doc) prism_languages()
txt |
string with code that you want to highlight |
language |
the language that |
input |
literal html string, connection, or file path, passed to xml2::read_html |
output |
path to file or connection to write to, passed to xml2::write_html. Set
|
include_css |
insert the Prism css style (with the default theme) into the html header. |
preview |
opens the generated output html in a browser |
doc |
an xml2 document that will be modified in place
such that all |
The function prism_highlight_document
processes an entire HTML document,
similar to how PrismJS works in a browser. It automatically finds all
<code class="language-xyz">
elements in the document and substitutes these
with highlighted html elements. Again, CSS is needed to actually colorize the
html, you can use include_css
to automatically inject the CSS in the html
header if your input document does not have this yet.
html with classes that can be colorized using a prims stylesheet
html <- prism_highlight_text('p { color: red }', language = 'css') cat(html) prism_languages()
html <- prism_highlight_text('p { color: red }', language = 'css') cat(html) prism_languages()