emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r111608: Fixes: debbugs:13556


From: Andreas Schwab
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111608: Fixes: debbugs:13556
Date: Sat, 26 Jan 2013 16:13:09 +0100
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111608
committer: Andreas Schwab <address@hidden>
branch nick: emacs
timestamp: Sat 2013-01-26 16:13:09 +0100
message:
  Fixes: debbugs:13556
  
  * emacs-lisp/lisp-mode.el (lisp-mode-variables): Add optional
  parameter BAR-NOT-SYMBOL to control syntax of | for font-lock.
  (lisp-mode): Pass t for it.
modified:
  lisp/ChangeLog
  lisp/emacs-lisp/lisp-mode.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-01-25 18:18:14 +0000
+++ b/lisp/ChangeLog    2013-01-26 15:13:09 +0000
@@ -1,3 +1,9 @@
+2013-01-26  Andreas Schwab  <address@hidden>
+
+       * emacs-lisp/lisp-mode.el (lisp-mode-variables): Add optional
+       parameter BAR-NOT-SYMBOL to control syntax of | for font-lock.
+       (lisp-mode): Pass t for it.  (Bug#13556)
+
 2013-01-25  Alan Mackenzie  <address@hidden>
 
        AWK Mode: Fix indentation bug at top level.  Bug #12274.

=== modified file 'lisp/emacs-lisp/lisp-mode.el'
--- a/lisp/emacs-lisp/lisp-mode.el      2013-01-20 02:40:49 +0000
+++ b/lisp/emacs-lisp/lisp-mode.el      2013-01-26 15:13:09 +0000
@@ -187,12 +187,14 @@
               font-lock-string-face))))
     font-lock-comment-face))
 
-(defun lisp-mode-variables (&optional lisp-syntax keywords-case-insensitive)
+(defun lisp-mode-variables (&optional lisp-syntax keywords-case-insensitive
+                                     bar-not-symbol)
   "Common initialization routine for lisp modes.
 The LISP-SYNTAX argument is used by code in inf-lisp.el and is
 \(uselessly) passed from pp.el, chistory.el, gnus-kill.el and
 score-mode.el.  KEYWORDS-CASE-INSENSITIVE non-nil means that for
-font-lock keywords will not be case sensitive."
+font-lock keywords will not be case sensitive.  BAR-NOT-SYMBOL
+non-nil means that | is not a symbol character."
   (when lisp-syntax
     (set-syntax-table lisp-mode-syntax-table))
   (setq-local paragraph-ignore-fill-prefix t)
@@ -226,7 +228,9 @@
   (setq font-lock-defaults
        `((lisp-font-lock-keywords
           lisp-font-lock-keywords-1 lisp-font-lock-keywords-2)
-         nil ,keywords-case-insensitive (("+-*/.<>=!?$%_&~^:@" . "w")) nil
+         nil ,keywords-case-insensitive
+         ((,(concat "+-*/.<>=!?$%_&~^:@" (if bar-not-symbol "" "|")) . "w"))
+         nil
          (font-lock-mark-block-function . mark-defun)
          (font-lock-syntactic-face-function
           . lisp-font-lock-syntactic-face-function))))
@@ -549,7 +553,7 @@
 
 Entry to this mode calls the value of `lisp-mode-hook'
 if that value is non-nil."
-  (lisp-mode-variables nil t)
+  (lisp-mode-variables nil t t)
   (setq-local find-tag-default-function 'lisp-find-tag-default)
   (setq-local comment-start-skip
              "\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *")


reply via email to

[Prev in Thread] Current Thread [Next in Thread]