NAME
FIGlet - display large characters made up of ordinary screen charactersSYNOPSIS
figlet [ -cklnoprstvxDELNRSWX ] [ -d fontdirectory ]- [ -f fontfile ] [ -m layoutmode ]
- [ -w outputwidth ] [ -C controlfile ]
- [ -I infocode ] [ message ]
DESCRIPTION
FIGlet prints its input using large characters (called ``FIGcharacters'')made up of ordinary screen characters (called ``sub-characters''). FIGlet output is generally reminiscent of the sort of ``signatures'' many people like to put at the end of e-mail and UseNet messages. It is also reminiscent of the output of some banner programs, although it is oriented normally, not sideways.USAGE
Just start up FIGlet (type ``figlet'') and then type whatever you want. Alternatively, pipe a file or the output of another command through FIGlet, or put input on the command line after the options. See EXAMPLES for other things to do.OPTIONS
FIGlet reads command line options from left to right, and only the last option that affects a parameter has any effect. Almost every option has an inverse, so that, for example, if FIGlet is customized with a shell alias, all the options are usually still available.- -f fontfile
- Select the font. The .flf suffix may be left off of fontfile, in which case FIGlet automatically appends it. FIGlet looks for the file first in the default font directory and then in the current directory, or, if fontfile was given as a full pathname, in the given directory. If the -f option is not specified, FIGlet uses the font that was specified when it was compiled. To find out which font this is, use the -I3 option.
- -d fontdirectory
- Change the default font directory. FIGlet looks for fonts first in the default directory and then in the current directory. If the -d option is not specified, FIGlet uses the directory that was specified when it was compiled. To find out which directory this is, use the -I2 option.
- -c
- -l
- -r
- -x
- These options handle the justification of FIGlet output. -c centers the output horizontally. -l makes the output flush-left. -r makes it flush-right. -x (default) sets the justification according to whether left-to-right or right-to-left text is selected. Left-to-right text will be flush-left, while right-to-left text will be flush-right. (Left-to-right versus right-to-left text is controlled by -L, -R and -X.)
- -t
- -w outputwidth
- These options control the outputwidth, or the screen width FIGlet assumes when formatting its output. FIGlet uses the outputwidth to determine when to break lines and how to center the output. Normally, FIGlet assumes 80 columns so that people with wide terminals won't annoy the people they e-mail FIGlet output to. -t sets the outputwidth to the terminal width. If the terminal width cannot be determined, the previous outputwidth is retained. -w sets the outputwidth to the given integer. An outputwidth of 1 is a special value that tells FIGlet to print each non-space FIGcharacter, in its entirety, on a separate line, no matter how wide it is.
- -p
- -n
- These options control how FIGlet handles newlines. -p puts FIGlet into ``paragraph mode'', which eliminates some unnecessary line breaks when piping a multi-line file through FIGlet. In paragraph mode, FIGlet treats line breaks within a paragraph as if they were merely blanks between words. (Specifically, -p causes FIGlet to convert any newline which is not preceded by a newline and not followed by a space character into a blank.) -n (default) puts FIGlet back to normal, in which every newline FIGlet reads causes it to produce a line break.
- -D
- -E
- -D switches to the German (ISO 646-DE) character set. Turns `[', `\' and `]' into umlauted A, O and U, respectively. `{', `|' and `}' turn into the respective lower case versions of these. `~' turns into s-z. -E turns off -D processing. These options are deprecated, which means they probably will not appear in the next version of FIGlet.
- -C controlfile
- -N
- These options deal with FIGlet controlfiles. A controlfile is a file containing a list of commands that FIGlet executes each time it reads a character. These commands can map certain input characters to other characters, similar to the Unix tr command or the FIGlet -D option. FIGlet maintains a list of controlfiles, which is empty when FIGlet starts up. -C adds the given controlfile to the list. -N clears the controlfile list, cancelling the effect of any previous -C. FIGlet executes the commands in all controlfiles in the list. See the file figfont.txt, provided with FIGlet, for details on how to write a controlfile.
- -s
- -S
- -k
- -W
- -o
- These options control how FIGlet spaces the FIGcharacters that it outputs. -s (default) and -S cause ``smushing''. The FIGcharacters are displayed as close together as possible, and overlapping sub-characters are removed. Exactly which sub-characters count as ``overlapping'' depends on the font's layoutmode, which is defined by the font's author. -k causes ``kerning''. As many blanks as possible are removed between FIGcharacters, so that they touch, but the FIGcharacters are not smushed. -W makes FIGlet display all FIGcharacters at their full width, which may be fixed or variable, depending on the font. The difference between -s and -S is that -s will not smush a font whose author specified kerning or full width as the default layoutmode, whereas -S will attempt to do so. If there is no information in the font about how to smush, or if the -o option is specified, then the FIGcharacters are ``overlapped''. This means that after kerning, the first subcharacter of each FIGcharacter is removed. (This is not done if a FIGcharacter contains only one subcharacter.)
- -m layoutmode
- Specifies an explicit layoutmode between 1 and 63. Smushmodes are explained in figfont.txt, which also provides complete information on the format of a FIGlet font. For the sake of backward compatibility with versions of FIGlet before 2.2, -m0 is equivalent to -k, -m-1 is equivalent to -W, and -m-2 is equivalent to -s. The -m switch is normally used only by font designers testing the various layoutmodes with a new font.
- -v
- -I infocode
- These options print various information about FIGlet, then exit. If several of these options are given on the command line, only the last is executed, and only after all other command-line options have been dealt with. -v prints version and copyright information, as well as a ``Usage: ...'' line. -I prints the information corresponding to the given infocode in a consistent, reliable (i.e., guaranteed to be the same in future releases) format. -I is primarily intended to be used by programs that use FIGlet. infocode can be any of the following.
- -1 Normal operation (default).
- This infocode indicates that FIGlet should operate normally, not giving any informational printout, printing its input in the selected font.
- 0 Version and copyright.
- This is identical to -v.
- 1 Version (integer).
- This will print the version of your copy of FIGlet as a decimal integer. The main version number is multiplied by 10000, the sub-version number is multiplied by 100, and the sub-sub-version number is multiplied by 1. These are added together, and the result is printed out. For example, FIGlet 2.2 will print ``20200'' , version 2.2.2 will print ``20202''. Similarly, version 3.7.2 would print ``30702''. These numbers are guaranteed to be ascending, with later versions having higher numbers. Note that the first major release of FIGlet, version 2.0, did not have the -I option.
- 2 Default font directory.
- This will print the default font directory. It is affected by the -d option.
- 3 Font.
- This will print the name of the font FIGlet would use. It is affected by the -f option. This is not a filename; the ``.flf'' suffix is not printed.
- 4 Output width.
- This will print the value FIGlet would use for outputwidth, the number of columns wide FIGlet assumes the screen is. It is affected by the -w and -t options.
- If infocode is any other positive value, FIGlet will simply exit without printing anything.
- -L
- -R
- -X
- These options control whether FIGlet prints left-to-right or right-to-left. -L selects left-to-right printing. -R selects right-to-left printing. -X (default) makes FIGlet use whichever is specified in the font file. Once the options are read, if there are any remaining words on the command line, they are used instead of standard input as the source of text. This feature allows shell scripts to generate large letters without having to dummy up standard input files. An empty argument, obtained by two sequential quotes, results in a line break.
EXAMPLES
To use FIGlet with its default settings, simply typeexample% figlet
example% figlet -f script
example% figlet -c
example% figlet -t
example% figlet -k
example% figlet -p < myfile
example% figlet -ptk -f shadow < anotherfile example% figlet -cf slant
example% figlet Hello world
Other Things to Try
On many systems nice effects can be obtained from the lean font by piping it through tr. Some you might want to try are the following:example% figlet -f lean | tr ' _/' ' ()' example% figlet -f lean | tr ' _/' './\\' example% figlet -f lean | tr ' _/' ' //' example% figlet -f lean | tr ' _/' '/ '
COMPRESSED FONTS
You can compress the fonts and controlfiles using the zip archiving program. Place only one font or controlfile in each archive, and rename the archive file (which will have a name ending in .zip) back to .flf or .flc as the case may be. If you don't rename the file appropriately, FIGlet won't be able to find it.THE STANDARD FONTS
Here are a few notes about some of the fonts provided with FIGlet. You can get many other font from the Web siteFILES
- file.flf
- FIGlet font file
- file.flc
- FIGlet control file
DIAGNOSTICS
FIGlet's diagnostics are intended to be self-explanatory. Possible messages areUsage: ... Out of memory Unable to open font file Not a FIGlet 2 font file Unable to open control file Not a FIGlet 2 control file "-t" is disabled, since ioctl is not fully implemented.
ORIGIN
``FIGlet'' stands for ``Frank, Ian and Glenn's LETters''. Inspired by Frank's .sig, Glenn wrote (most of) it, and Ian helped.BUGS
Very little error checking is done on font and control files. While FIGlet tries to be forgiving of errors, and should (hopefully) never actually crash, using an improperly-formatted file with FIGlet will produce unpredictable output.MAILING LIST
You can get many fonts which are not in the basic FIGlet package from the Web site http://www.figlet.org/ It should also contain the latest version of FIGlet and other utilities related to FIGlet. We run 3 e-mail lists dedicated to FIGlet software and font announcements, as well as general discussion about FIGlet:[email protected] General discussion
[email protected] Font announcements
[email protected] Software announcements
(The last two lists are moderated)
http://www.figlet.org/mailman/listinfo/figlet
http://www.figlet.org/mailman/listinfo/figletfonts
http://www.figlet.org/mailman/listinfo/figletsoftware
AUTHORS
Glenn Chappell <[email protected]> did most of the work. You can e-mail him but he is not an e-mail fanatic; people who e-mail Glenn will probably get answers, but if you e-mail his best friend:05 July 2005 | v2.2.2 |