Thanks for your patience, Jim. New patch attached, with support for zlib and libbz2, and a test, and all relevant blurbs (I hope), and a test that passes, along with make distcheck.
.gz and .bz2 still account for the vast majority of compressed files I come across. Also, unlike zlib and libbz2, liblzma does not currently provide a file operations interface that makes it easy to use for transparent decompression (I am using zlib's and libbz2's veneers for fdopen, close and read); on the other hand, there's the following paragraph on the xz home page: While liblzma has a zlib-like API, liblzma doesn't include any file I/O functions. A separate I/O library is planned, which would abstract handling of .gz, .bz2, and .xz files with an easy to use API. Since I have implemented transparent decompression as a veneer library, I wonder therefore whether it might not be a good idea to polish it to be suitable for inclusion in xz, and I thought of approaching the xz maintainers to ask their opinion; maybe we can kill two birds with one stone, and get transparent decompression for grep and the multi-library veneer in liblzma. Advice gratefully received. I also suggest that both for easier support for many more formats and to take Paul Eggert's suggestion into account I implement decompression via a filter, as zutils does. But I thought I'd release first. One comment about the documentation: grep.texi has different sectioning for the flags from grep --help; perhaps this should be fixed? -- http://rrt.sc3d.org
