From: Michael Bukin Newsgroups: comp.os.msdos.djgpp Subject: Re: Plans for Emacs reading gzipped info files? Date: 12 Aug 1997 18:25:52 +0700 Organization: Budker Institute of Nuclear Physics Lines: 98 Sender: mike AT Home-51 DOT inp DOT nsk DOT su Message-ID: NNTP-Posting-Host: inp.nsk.su Content-Type: text/plain; charset=koi8-r Content-Type-Encoding: 8bit To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Eli Zaretskii writes: > On 7 Aug 1997, Michael Bukin wrote: > > > Nate Eldredge writes: > > > > > > Are there any plans to have Emacs be able to read gzipped info files, > > > like info can? The Unix version of Emacs does this. > > Last time I tried, `jka-compr' doesn't work on MS-DOS due to file name > conflicts and other problems. At one point, I made it work on DOS, > but Richard Stallman wasn't interested to install the necessary > changes (or maybe I wasn't persistent enough to talk him into that), > so they are lost in my archives somewhere. > > On the other hand, the Emacs Info reader should already support > automatic uncompression of Info files, even without `jka-compr'. If > that support doesn't work for you, please tell me how does it fail. > To test it, compress one of the subfiles of the Emacs manual and > invoke Info. For example: > > gzip -9 info/emacs-1 (creates emacs-1.gz) > emacs -q > C-h i > > Now step through the first chapters and see if it works. I have tried it now with some of my compressed info files. Large ones won't display anything, saying something like this: "node `Top' not found" Small ones (like Knowledge Base), can be displayed, but are messed after few lines/pages (text becomes unreadable). The above applies to kb.gz which was in unix format (not in ). When in msdos format (utod'ed), it won't even start either. Possible problem with compressed info files maybe the fact, that info.el processes compressed files by supplying data from buffer into decompression process and reading its output back in buffer (is buffer treated as text or binary?). Maybe setting buffer-file-type will make it work (?for me?). -- info.el -- (if decoder (let ((buffer-read-only nil) (default-directory (or (file-name-directory fullname) default-directory))) (call-process-region (point-min) (point-max) decoder t t))))) -- /info.el -- And then I found that info.el handles compressed files differently if jka-compr is present, so I tried it. I had some troubles with jka-compr out of the box. There is `jka-compr-temp-name-template' which is "/tmp/jka-com" by default and that directory is non-existant here. But by setting it to (concat (file-name-as-directory (getenv "TMPDIR")) "jka-com") it works now. But maybe it was a problem only on NT Emacs? Don't remember now. Also setting of SHELL environment variable ?may? affect the way jka-compr works. Consider trying different values for `jka-compr-shell' and `jka-compr-use-shell' variables. I have no SHELL variable in environment. > > This would mean that the Info file for Emacs is about 1.5MB, and is > read into Emacs every time you need to consult the on-line manual. > Many people don't have a 64MB machine to afford such large files. I found it rather fast (about 2 secs for large files), compression ratio should be a little better, less overhead on rounding to cluster size and maintainance is much easier. Well, there are some problems with standalone info reader --- it duplicates start menu (there are two identical menus one below the other) after opening a few large info files. But it can be solved by restarting info reader. (And maybe this is a problem with info-reader and any compressed info). > > Doesn't emacs-1.gz, emacs-2.gz etc. work for you? > It should work with my current setup, I mean with jka-compr (judging by Info-suffix-list which I use). There were files with `.iNN' extensions which is hard to compress under DOS (hard to fit more info in extension). Also, it will require changes in `Info-suffix-list' (which is not a problem). I use W95 with LFN=y myself, but anyway, decided to make info files non-split. BTW, are compressed info files work for anyone with fresh emacs?