Article View: comp.text.tex
Article #12045new style Emacs compile
From: Daniel Pfeiffer
Date: Sat, 15 Nov 2003 20:05
Date: Sat, 15 Nov 2003 20:05
62 lines
3731 bytes
3731 bytes
This is for those who are sick of the haphazard handling of error locating in Emacs `compile'. Error locations only became mouse-sensitive rather late, and were often somehow forgotten again. Or when clicking on one, it would jump to a different file.
The prehistoric output parser at the root of this evil has now been eliminated and replaced by font-lock. The two were already running redundantly (unless you inexcusably don't use font-lock, which parses very well).
Warnings and plain messages now come in less intimidating colours, like green in grep, and orange for warnings. Only GNU style messages have been enhanced for this. There is now also a usual `compilation-mode-font-lock-keywords' and it nicely handles all the checks configure outputs and -o options so you see at a glance where you are.
For those writing the regexps, there is a debug feature to see where some highlighting came from.
To use this, install it as compile.el somewhere early in you load-path, and it'll get the stuff it needs from the original compile.el automatically.
http://dapfy.bei.t-online.de/compile.el
TODO (this is still a prototype, so bear with me):
- Error positions don't all become markers as soon as the first error in a file is visited. This can lead to slightly wrong positioning if shifts occured earlier in the file.
- File name format lists aren't allowed.
- Directory information gets highlighted, but not evaluated. Grep, byte-compile, and all builds in a single directory or which output full file-paths work fine. Else it'll ask you.
- The minor modes are not supported yet. The thing to do is probably to prepend our font-lock-keywords to theirs.
- TeX output file names are not handled. The hard part is not so much doing it with font-lock, but knowing, which `)' closes a file. The parsing which old-style `compilation-parse-errors-function' did is rather mysterious to me. Pairing is not enough, because there might be a lone `)' in some error output. I'd like you to get me some error outputs containing parens, especially all kinds of non-matching ones you can think of.
coralament / best Grötens / liebe Grüße / best regards / elkorajn salutojn
Daniel Pfeiffer
--
lerne / learn / apprends Esperanto:
http://lernu.net/
coralament / best Grötens / liebe Grüße / best regards / elkorajn salutojn
Daniel Pfeiffer
--
lerne / learn / apprends / läramå Esperanto:
http://lernu.net/
Technical Details
Message-ID:
<20031115210513.39ef5bfa.occitan@esperanto.org>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.media.kyoto-u.ac.jp!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed00.sul.t-online.de!newsmm00.sul.t-online.com!t-online.de!news.t-online.com!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII X-Google-Thread: f9e16,b12f45b3c77e13f0,start X-Google-Attributes: gidf9e16,public X-Google-Thread: 107729,b12f45b3c77e13f0,start X-Google-Attributes: gid107729,public X-Google-ArrivalTime: 2003-11-15 12:07:12 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.media.kyoto-u.ac.jp!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed00.sul.t-online.de!newsmm00.sul.t-online.com!t-online.de!news.t-online.com!not-for-mail From: Daniel Pfeiffer <occitan@esperanto.org> Newsgroups: comp.text.tex,gnu.emacs.sources Subject: new style Emacs compile Date: Sat, 15 Nov 2003 21:05:13 +0100 Organization: T-Online Lines: 62 Message-ID: <20031115210513.39ef5bfa.occitan@esperanto.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable X-Trace: news.t-online.com 1068926790 04 28268 2KCzVmErUccO6uu 031115 20:06:30 X-Complaints-To: usenet-abuse@t-online.de X-ID: TDGmM8ZAweBHATuQpcyudNS34ILG35icQxYIPZaG66bTdVia6invEn X-Newsreader: Sylpheed version 0.9.4claws (GTK+ 1.2.10; i686-suse-linux)