FIGlet and TOIlet: ASCIIfy Your Text Art

Spread the love

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.

Also read: How to Encode/Decode Data Using Base64 and Why

Let’s Start With FIGlet

Running FIGlet is easy. Just go to your command line and enter:

figlet "I've got something to say"

figlet "I hugged your mother today"

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.

figlet -f rowancap "Make Tech ASCIIer"

figlet -f thick "Make Tech ASCIIer"

You can even pipe commands to FIGlet:

date | figlet -f basic

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:

toilet --metal -f dosrebel "Make Tech Metal-er"

The metal filter, as you can see, adds metallic shading to the output.

My personal favorite is the gay filter:

toilet --gay -f drpepper "Make Tech Rainbowier"

Enter 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:

toilet -F gay -F border -F 180 "Make Tech Like Whoa"

You can also export your output to the following formats using the -E flag:

  • “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!

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Sign up for all newsletters.
By signing up, you agree to our Privacy Policy and European users agree to the data transfer policy. We will not share your data and you can unsubscribe at any time. Subscribe


Rebecca “Ruji” Chapnik

Ruji Chapnik is a freelance creator of miscellanea, including but not limited to text and images. She studied art at the University of California, Santa Cruz and writing at Portland State University. She went on to study Linux in her bedroom and also in various other people’s bedrooms, crouched anti-ergonomically before abandoned Windows computers. Ruji currently lives in Portland, Oregon. You can find her experiments at rujic.net and her comics at dondepresso.rujic.net.

Comments are closed