Random Signatures under Mutt

In order to use the random signature feature, you must first enable it during compilation. Edit config.h and make sure that it contains the line
	#define ENABLE_RANDOM_SIG

To use it, first create a file called .sigfixed in your home directory and put in there one line that will contain the unchanging part of your signature. For example, your name and email address.

Now, create a directory that will contain the signatures you wish to use. I call it .Sig and have it in my home directory, but it can have any name as you will specify it in your .muttrc.

Put the signatures you wish to use in this directory, one per file. You can name the files anything you wish as the random signature process just grabs one from the directory and doesn't use the name to determine which one to grab. For example, my directory contains the following files:

3d7thDayEBSIHS
Yodaamnesiaasiassembly
atomicBombamorbarkerblues
borgbrainsbugsburningTree
catseyecrazydelenndijkstra
dinodinosaursdisneyenhancement
evolvefangermanLoveLifegod
heardhippogriffhoarehostCoast
infoHighwayinstantCoffeeinternetkalidascope
kitekenThompsonknuthlaws
lawyerlibCluemagicmeek
memoriesmemorynovocainenuclear
pacepentBorgpizzapoisonIvy
postmanrobinsafetyserene
snowstarTrekCstyroterror
thompsontortureuserFriendlywrong

The only restrictions on names are:

  1. Names can't start with a . (period)
  2. Names can't start with a # (sharp or pound)
  3. Names can't contain a ~ (tilde)
Files with names that violate the above restrictions will not be used when determining which signature to append.

Now, edit your .muttrc and add (or change) the following two lines:

set localsignature=CompletePathToTheDirectoryOfSignatureFiles
set remotesignature=CompletePathToTheDirectoryOfSignatureFiles

If you want the same set of signatures for both local and remote mail, then you only need to set the signature variable:
set signature=CompletePathToTheDirectoryOfSignatureFiles

Because there are two different variables, you can have a different set of signatures for local and remote mail. Currently there is only one file for the fixed portion of the signature, but that can change if it turns out to be needed.