pygmentize

Latest Version Docs Pygmentize Version License

Rust library and wrapper around the pygmentize CLI. Apply syntax highlighting to over 500 languages and other text formatted. Render into HTML, SVG, LaTeX, and Terminal (ANSI color sequences).

Rendered HTML Output

Rendered example of examples/html.rs.

Rendered Example

Example

```rust use pygmentize::{HtmlFormatter, PygmentizeError};

let code = r#"fn main() { println!("Hello, world!"); }"#;

let html = pygmentize::highlight(code, Some("rust"), &HtmlFormatter::default())?; println!("{html}"); ```

Output

(whitespace added to improve clarity)

```html

    

    fn
    main
    ()
     
    {

        
    println!
    (
    "Hello, world!"
    );

    }

```

Rendered

(with the Dracula theme)

Rendered Example 2

Override Pygmentize Path

The path to the pygmentize binary, can be overridden using pygmentize::set_bin_path(). The default path is "pygmentize".

If pygmentize is installed in a virtual environment, within your crate directory, i.e. Cargo.lock and env/ being within the same directory. Then assuming that the current directory is the same. Then the path can be overridden by doing:

rust pygmentize::set_bin_path("./env/Scripts/pygmentize");

Install

The library is a wrapper around the pygmentize CLI, and as such it must be available in the system PATH. The easiest way to install pygmentize is through Python.

console pip install Pygments