text processing utilities

Ansifilter documentation

Ansifilter documentation

ANSI codes are commands embedded in a text stream to add formatting instructions into this text. These codes are interpreted by terminal emulators like xterm or Putty.

An example of the colordiff output:

ANSI sample

Ansifilter parses common ANSI codes to remove them or to convert them to another colored text file format (HTML, TeX, LaTeX, RTF, Pango or BBCode).
Support for ASCII art files (based on codepage 437 and ANSI.SYS sequences or BIN/XBIN files) is enabled with the --art-cp437 and --art-bin options.

Ansifilter GUI Linux

The utility is also available as command line interface:

ansifilter ansifile.txt will give:

Several ANSI codes:
Bold
Underline
Black
Red
Green
Red Background
Green Background
Image inverted and back

ansifilter --html ansifile.txt will give:

Several ANSI codes:
Bold
Underline
Black
Red
Green
Red Background
Green Background
Image inverted and back

Features

These are the options of the command line interface:

File handling:
  -i, --input=<file>     Name of input file
  -o, --output=<file>    Name of output file
  -O, --outdir<dir>      Name of output directory
  -t, --tail             Continue reading after end-of-file (like tail -f)

Output text formats:
  -T, --text (default)   Output text
  -H, --html             Output HTML
  -M, --pango            Output Pango Markup
  -L, --latex            Output LaTeX
  -P, --tex              Output Plain TeX
  -R, --rtf              Output RTF
  -B, --bbcode           Output BBCode

Formatted text options:
  -a, --anchors          Add HTML line anchors (assumes -l)
  -d, --doc-title        Set HTML/LaTeX document title
  -e, --encoding         Set HTML encoding (must match input file encoding)
  -f, --fragment         Omit HTML header and footer
  -F, --font=<font>      Set HTML/RTF font face
  -l, --line-numbers     Print line numbers in output file
  -m, --map=<path>       Read color mapping file (see README)
  -r, --style-ref=<rf>   Set HTML/TeX/LaTeX stylesheet path
  -s, --font-size=<fs>   Set HTML/RTF font size
  -p, --plain            Ignore ANSI formatting information
  -w, --wrap<len>        Wrap long lines
      --wrap-no-numbers  Omit line numbers of wrapped lines (assumes -l)
      
ASCII art options:
      --art-cp437        Parse codepage 437 ASCII art (HTML, RTF output only)
      --art-bin          Parse BIN/XBIN ASCII art (HTML, RTF output only)
      --art-width        Set ASCII art width (default 80)
      --art-height       Set ASCII art height (default 150)

Other options:
  -h, --help             Print help
  -v, --version          Print version and license info

Examples:

ansifilter -i text_with_ansi.txt -o text_without_ansi.txt
ansifilter *.txt
tail -f server.log | ansifilter

The GUI version also accepts the first command line argument as input file name.
Ansifilter may simulate tail -f functionality in Windows.

Supported control sequences

Formatting:
Bold, Underline, Italic, Blink

Colors:
Black, Red, Green, Yellow, Blue, Magenta, Cyan, White, xterm 256 color codes

Other:
Conceal/Reveal, Image positive/negative

Color mapping

The basic ANSI color set can be adjusted with a color map file (--map option).
This text configuration overrides these color codes:

Normal: Black (0), Red (1), Green (2), Yellow (3), Blue (4), Magenta (5), 
        Cyan (6), Gray (7)
Bright: DarkGray (8), Red (9), Green (10), Yellow (11), Blue (12), Magenta (13),
        Cyan (14), White (15)

File format: <0..15> = <HTML color code>

Example file content

1= #0000aa
2= #00aa00
3= #00aaaa
4= #aa0000
5= #aa00aa
6= #aa5500
7= #aaaaaa
8= #555555
9= #5555ff
10= #55ff55
11= #55ffff
12= #ff5555
13= #ff55ff
14= #ffff55
15= #ffffff
Tupel7