5 releases

0.2.2 Nov 29, 2024
0.2.1 Nov 30, 2023
0.1.3 Mar 29, 2023
0.1.2 Sep 8, 2022
0.1.0 Nov 13, 2020

#97 in Command-line interface

Download history 9378/week @ 2024-10-31 10436/week @ 2024-11-07 9040/week @ 2024-11-14 12883/week @ 2024-11-21 14357/week @ 2024-11-28 14582/week @ 2024-12-05 18654/week @ 2024-12-12 8560/week @ 2024-12-19 7276/week @ 2024-12-26 9783/week @ 2025-01-02 12583/week @ 2025-01-09 10385/week @ 2025-01-16 10608/week @ 2025-01-23 10144/week @ 2025-01-30 10288/week @ 2025-02-06 6694/week @ 2025-02-13

39,399 downloads per month
Used in 11 crates

MIT license

32KB
628 lines

ansi-to-html

Documentation

Rust library to convert a string that can contain ANSI escape codes to HTML.

ANSI support

This crate currently supports SGR parameters (text style and colors). The supported styles are:

  • bold
  • italic
  • underlined
  • crossed out
  • faint
  • foreground and background colors: 3-bit, 4-bit, 8-bit, truecolor (24-bit)

Not supported SGR parameters (note that most of these are niche features and rarely supported by terminals):

  • slow/rapid blink
  • reverse video
  • conceal
  • alternative fonts
  • fraktur
  • doubly underlined
  • proportional spacing
  • framed
  • encircled
  • overlined
  • underline color (not in standard)
  • ideogram attributes
  • superscript, subscript (not in standard)
  • bright foreground/background color (not in standard)

All unsupported ANSI escape codes are stripped from the output.

It should be easy to add support for more styles, if there's a straightforward HTML representation. If you need a different style (e.g. doubly underlined), file an issue.

Dependencies

~2.3–4MB
~69K SLoC