fritzz@lamont.ldgo.columbia.edu (fritz zaucker) (09/08/90)
Thanks everybody, who already answered. I got patch2 for ISPELL and my current version (2.0.02) still doesn't work. But I isolated the problem: Emacs hangs around in the following part of ispell-word: (while (progn ;; wait until we have a complete line (goto-char (point-max)) (/= (preceding-char) ?\n)) (accept-process-output ispell-process)) I don't speak lisp, but sounds to me, as if it doesn't find a newline? If I run ispell from outside Emacs, then there is a newline after it's output (I piped it to a file and looked at it). What's wrong???? Thanks Fritz
allbery@NCoast.ORG (Brandon S. Allbery KB8JRR/KT) (09/16/90)
As quoted from <2741@lamont.ldgo.columbia.edu> by fritzz@lamont.ldgo.columbia.edu (fritz zaucker): +--------------- | Thanks everybody, who already answered. I got patch2 for ISPELL and my | current version (2.0.02) still doesn't work. But I isolated the problem: +--------------- I tried to mail the fix to you, but ncoast's paths file had committed suicide because we had only 2MB of RAM in the system. (Why? Because ncoast lost a fight with a bolt of lightning.) +--------------- | Emacs hangs around in the following part of ispell-word: | | (while (progn ;; wait until we have a complete line | (goto-char (point-max)) | (/= (preceding-char) ?\n)) | (accept-process-output ispell-process)) | | I don't speak lisp, but sounds to me, as if it doesn't find a newline? | If I run ispell from outside Emacs, then there is a newline after it's | output (I piped it to a file and looked at it). +--------------- Actually, it's not ispell; ispell's being fed garbage. ispell.el contains a definition for a filter program to run on the text of the buffer, to split it into lines each containing a single word. The default filter uses "tr"... with BSD syntax instead of AT&T syntax. The result is that tr doesn't do what ispell expects. I don't have ispell or ispell.el on ncoast, so I can only give you general instructions: Find the definition of the variable containing the *arguments* to the filter program. (I think it's "ispell-filter-args", or something similar. There aren't that many defconst's / defvar's in ispell.el, so you can search for those.) The arguments will be strings which specify ranges. Each individual range must be enclosed in []. That is, "A-Za-z" must become "[A-Z][a-z]". In addition, one of the arguments is simply a "\n"; it must be changed to "[\n*]". (I think the value given is '("-cs" "A-Za-z" "\n"), which becomes '("-cs" "[A-Z][a-z]" "[\n*]").) This drove me nuts until I discovered that lousy unannounced Berzerkeleyism. ++Brandon -- Me: Brandon S. Allbery VHF/UHF: KB8JRR/KT on 220, 2m, 440 Internet: allbery@NCoast.ORG Packet: KB8JRR @ WA8BXN America OnLine: KB8JRR AMPR: KB8JRR.AmPR.ORG [44.70.4.88] uunet!usenet.ins.cwru.edu!ncoast!allbery Delphi: ALLBERY
guy@auspex.auspex.com (Guy Harris) (09/18/90)
>"tr"... with BSD syntax instead of AT&T syntax.
*Both* of them are AT&T syntax. It's just a question of *which* AT&T
UNIX release you're talking about....