GNU bug report logs - #15699
24.3.50; lisp-cl-font-lock-keywords-2

Previous Next

Package: emacs;

Reported by: Helmut Eller <eller.helmut <at> gmail.com>

Date: Thu, 24 Oct 2013 15:03:01 UTC

Severity: normal

Tags: patch

Found in version 24.3.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#15699: closed (24.3.50; lisp-cl-font-lock-keywords-2)
Date: Thu, 24 Oct 2013 17:50:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Thu, 24 Oct 2013 13:49:46 -0400
with message-id <jwv38nqwoqz.fsf-monnier+emacsbugs <at> gnu.org>
and subject line Re: bug#15699: 24.3.50; lisp-cl-font-lock-keywords-2
has caused the debbugs.gnu.org bug report #15699,
regarding 24.3.50; lisp-cl-font-lock-keywords-2
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
15699: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15699
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Helmut Eller <eller.helmut <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3.50; lisp-cl-font-lock-keywords-2
Date: Thu, 24 Oct 2013 17:02:22 +0200
[Message part 3 (text/plain, inline)]
In lisp-mode, "labels" and "flet" are not highlighted while stuff like
"letrec" and "save-excursion" are (wrongly) highlighted.  To see that,
open a file with name "foo.lisp" and insert something like:

 (labels ((foo ())) (letrec ((bar bar))))

I think that the patch below would fix this problem. The patch also
removes "featurep" because that's not a defined operator in Common Lisp.
I can also write a ERT test if needed.

In GNU Emacs 24.3.50.4 (i686-pc-linux-gnu, GTK+ Version 2.24.10)
 of 2013-10-19 on ix
Bzr revision: 114715 rgm <at> gnu.org-20131019023520-s8mwtib7xcx9e05w

[lisp-mode.patch (text/x-diff, inline)]
=== modified file 'lisp/emacs-lisp/lisp-mode.el'
--- lisp/emacs-lisp/lisp-mode.el	2013-10-08 14:57:18 +0000
+++ lisp/emacs-lisp/lisp-mode.el	2013-10-24 14:57:07 +0000
@@ -251,9 +251,7 @@
                              (cons "go" (mapcar (lambda (s) (concat "cl-" s))
                                                 (remove "go" cl-lib-kw))))
                             t)
-                (regexp-opt (append lisp-kw el-kw eieio-kw
-                                    (cons "go" (mapcar (lambda (s) (concat "cl-" s))
-                                                       (remove "go" cl-kw))))
+                (regexp-opt (append lisp-kw cl-kw eieio-kw cl-lib-kw)
                             t)
 
                 ;; Elisp and Common Lisp "errors".
@@ -360,7 +358,7 @@
        ;; Control structures.  Common Lisp forms.
        (,(concat "(" cl-kws-re "\\_>") . 1)
        ;; Exit/Feature symbols as constants.
-       (,(concat "(\\(catch\\|throw\\|featurep\\|provide\\|require\\)\\_>"
+       (,(concat "(\\(catch\\|throw\\|provide\\|require\\)\\_>"
                  "[ \t']*\\(\\(?:\\sw\\|\\s_\\)+\\)?")
         (1 font-lock-keyword-face)
         (2 font-lock-constant-face nil t))

[Message part 5 (message/rfc822, inline)]
From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Helmut Eller <eller.helmut <at> gmail.com>
Cc: 15699-done <at> debbugs.gnu.org
Subject: Re: bug#15699: 24.3.50; lisp-cl-font-lock-keywords-2
Date: Thu, 24 Oct 2013 13:49:46 -0400
> In lisp-mode, "labels" and "flet" are not highlighted while stuff like
> "letrec" and "save-excursion" are (wrongly) highlighted.  To see that,
> open a file with name "foo.lisp" and insert something like:

Hmm... duh... sorry for the previous message, I misread and fired too quickly.
I installed your patch into trunk, thank you,


        Stefan


This bug report was last modified 11 years and 208 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.