From: Vinicius Jose Latorre Date: Mon, 12 Nov 2007 18:29:05 +0000 (+0000) Subject: Insert patterns from compilation-perl.el and compilation-weblint.el files. X-Git-Tag: emacs-pretest-23.0.90~9770 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=ddab77059066c34a3b86280c3876e95eb86dd2b2;p=emacs.git Insert patterns from compilation-perl.el and compilation-weblint.el files. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b2456c1a30a..7e5adc3fdd3 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2007-11-12 Vinicius Jose Latorre + + * progmodes/compile.el (compilation-error-regexp-alist-alist): Insert + patterns from compilation-perl.el and compilation-weblint.el files. + 2007-11-12 Dan Nicolaescu * progmodes/compilation-perl.el: diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 3de5b7eeb7e..b4148c59b49 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -339,6 +339,57 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?" nil 2 nil 2 nil (0 'default t) (1 compilation-error-face prepend) (2 compilation-line-face prepend)) + + (compilation-perl--Pod::Checker + ;; podchecker error messages, per Pod::Checker. + ;; The style is from the Pod::Checker::poderror() function, eg. + ;; *** ERROR: Spurious text after =cut at line 193 in file foo.pm + ;; + ;; Plus end_pod() can give "at line EOF" instead of a + ;; number, so for that match "on line N" which is the + ;; originating spot, eg. + ;; *** ERROR: =over on line 37 without closing =back at line EOF in file bar.pm + ;; + ;; Plus command() can give both "on line N" and "at line N"; + ;; the latter is desired and is matched because the .* is + ;; greedy. + ;; *** ERROR: =over on line 1 without closing =back (at head1) at line 3 in file x.pod + ;; + "^\\*\\*\\* \\(?:ERROR\\|\\(WARNING\\)\\).* \\(?:at\\|on\\) line \ +\\([0-9]+\\) \\(?:.* \\)?in file \\([^ \t\n]+\\)" + 3 2 nil (1)) + (compilation-perl--Test + ;; perl Test module error messages. + ;; Style per the ok() function "$context", eg. + ;; # Failed test 1 in foo.t at line 6 + ;; + "^# Failed test [0-9]+ in \\([^ \t\r\n]+\\) at line \\([0-9]+\\)" + 1 2) + (compilation-perl--Test::Harness + ;; perl Test::Harness output, eg. + ;; NOK 1# Test 1 got: "1234" (t/foo.t at line 46) + ;; + ;; Test::Harness is slightly designed for tty output, since + ;; it prints CRs to overwrite progress messages, but if you + ;; run it in with M-x compile this pattern can at least step + ;; through the failures. + ;; + "^.*NOK.* \\([^ \t\r\n]+\\) at line \\([0-9]+\\)" + 1 2) + (compilation-weblint + ;; The style comes from HTML::Lint::Error::as_string(), eg. + ;; index.html (13:1) Unknown element + ;; + ;; The pattern only matches filenames without spaces, since that + ;; should be usual and should help reduce the chance of a false + ;; match of a message from some unrelated program. + ;; + ;; This message style is quite close to the "ibm" entry which is + ;; for IBM C, though that ibm bit doesn't put a space after the + ;; filename. + ;; + "^\\([^ \t\r\n(]+\\) (\\([0-9]+\\):\\([0-9]+\\)) " + 1 2 3) ) "Alist of values for `compilation-error-regexp-alist'.")