Your company here — click to reach over 10,000 unique daily visitors

aha - Man Page

Convert ANSI escape sequences to HTML


aha[-bhlnprsvwx] [-c file] [-f file] [-i X] [-L LANG] [-t TITLE] [-y STYLE]


aha reads ECMA-48 SGR-colored text from the standard input, converts it to colored HTML and writes it to the standard output. The options are as follows:

-b, --black

Style HTML output to use a black background with white text.

-c file, --css file

Adds the given css file to the output. In fact just adds <link rel="stylesheet" href=" file " /> to the header.

-f file

Read from file instead of from the standard input.

-h, --help, -?

Print help for aha to the standard output.

-i X, --iso X

Use the ISO-8859-X character encoding instead of UTF-8 for the output, where X is a number from 1-16.

-l, --line-fix

Use a fix for inputs using control sequences to change the cursor position. This is a hot fix, thus it may not work with every program.

-L LANG, --lang LANG

Uses the ISO-639-1
code LANG for the language.

-n, --no-header

Do not enclose HTML output in <html>, <head> and <body> tags.

-p, --pink

Style HTML output to use a pink background.

-r, --ignore-cr

Ignore all carriage-returns (ASCII sign 13, \r) which may lead to double new lines in html.

-s, --stylesheet

Use a stylesheet instead of inline styles.

-t TITLE, --title TITLE

Set the HTML document title to TITLE instead of "stdin" or the filename.

-v, --version

Print version number of aha to the standard output and exit.

-w, --word-wrap

Wrap long lines in the html output. Works with CSS3 supporting browsers and many older ones.

-x, --no-xml

Don't use doctype xml but html (may useful for old browsers like IE)

-y STYLE, --style STYLE

Sets the style used in the <body> element to STYLE after styles set by other parameters.


Create an HTML file with a black background, a custom title and a larger font-size using aha's help:

$ aha -h | aha -b -t 'the awesome aha help' -y 'font-size:1.875em' > aha-help.html

Create an HTML file with a white background using the output of diff(1):

$ diff -u --color=always oldfile.c newfile.c | aha > diff.html

Create an HTML file with a black background from the output of htop(1). You have to use option -l due the other new-line-commands htop uses:

$ echo q | htop | aha -b -l > htop.html

Create an HTML file from the output of this man page. man(1) uses bold and underline formatting from nroff(1), which ul(1) converts to SGR:

$ MAN_KEEP_FORMATTING=1 COLUMNS=80 man aha | ul | aha > man-aha.html

See Also


Control Functions for Coded Character Sets, Ecma, ECMA-48, 61, 1991.


The aha utility is maintained by Alexander Matthes ‘Ziz’ <ziz@mailbox.org>.


Blinking text using the HTML tag <blink> and the css property text-decoration:blink have been deprecated on modern browsers, thus requiring the use of option -s and redefining the .blink css class.


August 4, 2020