SYNOPSISsq < infile > outfile
unsq < infile > outfile
DESCRIPTIONsq compresses a sorted list of words (a dictionary). For example:
- sort -u /usr/share/dict/words | sq | gzip -9 > words.sq.gz
unsq uncompress the output of sq. For example:
- gunzip < words.sq.gz | unsq | sort -f -o words
The squeezing is achieved by eliminating common prefixes, and replacing them with a single character which encodes the number of characters shared with the preceding word. The prefix size is encoded as a single printable character: 0-9 represent 0-9, A-Z represent 10-35, and a-z represent 36-61.