LinuxCommandLibrary

figlet

Create large, ASCII art text banners

TLDR

Generate by directly inputting text

$ figlet [input_text]
copy

Use a custom [f]ont file
$ figlet -f [path/to/font_file.flf] [input_text]
copy

Use a [f]ont from the default font directory (the extension can be omitted)
$ figlet -f [font_filename] [input_text]
copy

Pipe command output through FIGlet
$ [command] | figlet
copy

Show available FIGlet fonts
$ showfigfonts [optional_string_to_display]
copy

Use the full width of the [t]erminal and [c]enter the input text
$ figlet -t -c [input_text]
copy

Display all characters at full [W]idth to avoid overlapping
$ figlet -W [input_text]
copy

SYNOPSIS

figlet [options] [text]

PARAMETERS

-f fontfile
    Use specified font file

-d directory
    Search for fonts in directory

-D
    Print font directory path

-I infocode
    Display Figlet information (0-5)

-c
    Center output horizontally

-l
    Smush output left-to-right

-r
    Smush output right-to-left

-x
    Smush horizontally (kerning)

-w width
    Set maximum output width (default 80)

-H height
    Set maximum output height

-m smushvalue
    Set smush amount (0-95, default 0)

-C controlfile
    Use controlfile for layout/smushing

-e
    Enable full-width layout

-F
    Enable full-width smushing

-s
    Enable default smushing

-p
    Plain font layout (no smushing)

-t
    Read text from stdin

-v
    Print version and exit

-L
    List available fonts

-X
    List kerning pairs

-R
    List smush modes

-S
    List layout modes

DESCRIPTION

Figlet is a command-line utility that converts regular text into an ASCII art representation using large, stylized letters composed of smaller characters. Ideal for creating eye-catching banners, titles, and headings in terminals, scripts, or log files.

It supports hundreds of fonts stored in simple text files, allowing customization of style from block letters to script-like or even 3D effects. Users specify text directly or pipe from stdin, with options to control layout, smushing (overlapping characters for compactness), centering, and page width.

Common use cases include decorating shell prompts, generating startup messages, or enhancing MOTD (Message of the Day) displays. Output is fixed-width, preserving monospace font alignment. Figlet handles kerning pairs for better spacing and supports layout modes like full-width or default smushing.

While powerful for retro aesthetics, it's limited to ASCII, lacking Unicode or color support natively (pair with tools like lolcat for colors). Fonts are community-contributed, available via packages like figlet-fonts.

CAVEATS

Output assumes monospace font; may misalign in proportional fonts. Limited to ASCII characters. Large texts or custom fonts can exceed terminal width. No native Unicode or color support.

DEFAULT USAGE

figlet "Hello World"
Produces large ASCII "HELLO WORLD" in standard font.

FONT EXAMPLE

figlet -f slant "Linux"
Uses slant font for italic-like effect.

STDIN PIPE

echo "Welcome" | figlet -c -w 60
Centers piped text within 60 columns.

HISTORY

Developed in 1991 by Frank, Ian, and Glen (FIGLET acronym). Ported to Unix in 1993 by John Conway. Maintained as open-source with contributions from Paul Burton and others. Version 2.2.5 released in 2009; widely packaged in Linux distros.

SEE ALSO

banner(1), toilet(1), boxes(1)

Copied to clipboard