Do you remember the BBS days? Well, I don’t, but I hear they were really something. Even though I was too young to understand computers at the time, I’ve since developed an affectionate nostalgia for old school computing. Imagining how digital artists of the early ’90s (and even in the present day) laboriously crafted character-by-character ASCII text art, as well as ANSI, blows my mind!
Today I’m going to show you how to turn your boring lines of text into exciting ASCII text art. We are going to use two programs, FIGlet and TOIlet. FIGlet has been around longer and is considered the classic program for automating the process of turning ordinary text into ASCII art. TOIlet is a fork of FIGlet that runs on the libcaca library and enables advanced features such as color.
Let’s Start With FIGlet
Running FIGlet is easy. Just go to your command line and enter:
You can use this in your “~/.bashrc” or in a README for one of your software projects, or in any text file for any purpose. Just use your imagination!
The fun doesn’t end there. FIGlet has a great number of alternative fonts you can use just by adding the
-f switch. The fonts are all stored in /usr/share/figlet, so you can pick and choose from there.
You can even pipe commands to FIGlet:
There’s more stuff you can do with FIGlet, including adjusting the kerning of your characters, but I won’t go into that in this brief introduction. See the main page if you’re interested.
Let’s Move On to TOIlet
I prefer TOIlet because of its cool color filters. You can use it in the same manner as you’d use FIGlet but with more options. For example:
metal filter, as you can see, adds metallic shading to the output.
My personal favorite is the
toilet -F list to see all available filters (usually invoked via the
-F flag). In my version of TOIlet, the following filters are available:
- “crop”: crop unused blanks
- “gay”: add a rainbow colour effect
- “metal”: add a metallic colour effect
- “flip”: flip horizontally
- “flop”: flip vertically
- “180”: rotate 180 degrees
- “left”: rotate 90 degrees counterclockwise
- “right”: rotate 90 degrees clockwise
- “border”: surround text with a border
Here’s an example using three different filters:
You can also export your output to the following formats using the
- “caca”: native libcaca format
- “ansi”: ANSI
- “utf8”: UTF-8 with ANSI escape codes
- “utf8cr”: UTF-8 with ANSI escape codes and MS-DOS
- “html”: HTML
- “html3”: backwards-compatible HTML
- “bbfr”: BBCode (French)
- “irc”: IRC with mIRC colours
- “ps”: PostScript document
- “svg”: SVG vector image
- “tga”: TGA image
- “troff”: troff source
If you’re an ASCII art nerd like I am, I strongly encourage you to download these two small programs and play around with them to make your own ASCII text art!