humanzip, humanunzip - (un)compress text files in a human readable way
] [ filename ...
] [ filename ...
compresses ASCII text files in a human readable way. It finds
common words and strings of words, replaces them with single UTF-8 characters
and puts a key at the top. humanunzip
can restore zipped files to their
original state. humanzip is meant to reduce the print and screen size of
to reduce their size in bytes, although that generally
happens incidentally. Reduction is typically on order of 10%.
humanzip replaces each file with one with the extension .hz
its name. humanunzip
does the reverse, except that if it is given a
file whose name does not end in .hz
it will replace it with a file with
appended to its name. If given no files, it will read from stdin
and write to stdout.
You are encouraged to manually customize the compressed output to suit your
tastes. As long as you follow the pattern, the result will still be
decompressable by humanunzip
will try to decompress mangled files. If it detects errors
which might be recoverable, it will still write the output, but keep the
options are deliberately similar to those of gzip
- Normally human(un)zip will refuse to overwrite existing files. This option
forces it to do so.
- Send output to stdout and keep input files unchanged.
- Print short help statement.
- Keep input files instead of deleting them.
- Send output to stdout and keep input files unchanged. If there are several
input files to humanzip, the output consists of a sequence of
independently compressed members. To obtain better compression,
concatenate all input files before compressing them.
- Treat all subsequent arguments as file names, even if they start with
- Normally, humanzip uses a blacklist of common English words and
phrases such as "into" and "to the" which would
probably be annoying to be replaced by symbols. This option disables this
- -n number
- Use at most this number of abbreviations. humanzip may choose to
use fewer if it cannot find enough that are worth doing.
- -l number
- Look for abbreviations of at most this many words. Setting this too high
will cause humanzip to use a very large amount of memory. Higher
values of this option do not always result in better compression (at
least, not in the current version).
- Be verbose. Outputs information about progress as it is compressing.
- Be quiet. Output only error messages.
each return 0 on sucess, 1 if they get bad
arguments, and the number of failed files if any fail. If humanunzip
encounters possibly recoverable errors in its input, it will count that file
as a failure for this purpose even if the output turns out to be correct.
The newest version can always be found at ???
humanzip's version number is currently less than 1. When it becomes 1 or larger,
that means that I promise not to change the file format, command line options
or return values without warning and/or backwards compatibility. Until then,
new versions may break old versions' files and your scripts.
Copyright © 2007 Matthew Strait <quadongAusers.sf.net>. This is
free software. You may redistribute it under the terms of the GNU General
Public License version 2 <http://www.gnu.org/licenses/gpl.html>. There
is NO WARRANTY, to the extent permitted by law.