in reply to buffering zipped pipes

I need to pre-fetch some keywords in each section to properly build a data structure. The position of the keywords can be anywhere within the section.

Why not read a whole section into a buffer, scan the the buffer for the keywords, then process the whole section.