mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-26 19:18:50 +00:00
* admin/grammars/bovine-grammar.el: Avoid using old-style backquotes.
This commit is contained in:
parent
84bd6e9e02
commit
72b8747b4f
@ -1,3 +1,7 @@
|
|||||||
|
2011-10-31 David Engster <deng@randomsample.de>
|
||||||
|
|
||||||
|
* grammars/bovine-grammar.el: Avoid using old-style backquotes.
|
||||||
|
|
||||||
2011-10-28 Eli Zaretskii <eliz@gnu.org>
|
2011-10-28 Eli Zaretskii <eliz@gnu.org>
|
||||||
|
|
||||||
* nt/README-ftp-server: Mention UNICOWS.DLL as prerequisite for
|
* nt/README-ftp-server: Mention UNICOWS.DLL as prerequisite for
|
||||||
|
@ -109,6 +109,14 @@ NAME, ALIASCLASS, DEFINITION and ATTRIBUTES."
|
|||||||
;; Cache of macro definitions currently in use.
|
;; Cache of macro definitions currently in use.
|
||||||
(defvar bovine--grammar-macros nil)
|
(defvar bovine--grammar-macros nil)
|
||||||
|
|
||||||
|
;; Detect if we have an Emacs with newstyle unquotes allowed outside
|
||||||
|
;; of backquote.
|
||||||
|
;; This should probably be changed to a test to (= emacs-major-version 24)
|
||||||
|
;; when it is released, but at the moment it might be possible that people
|
||||||
|
;; are using an older snapshot.
|
||||||
|
(defvar bovine--grammar-newstyle-unquote
|
||||||
|
(equal '(, test) (read ",test")))
|
||||||
|
|
||||||
(defun bovine-grammar-expand-form (form quotemode &optional inplace)
|
(defun bovine-grammar-expand-form (form quotemode &optional inplace)
|
||||||
"Expand FORM into a new one suitable to the bovine parser.
|
"Expand FORM into a new one suitable to the bovine parser.
|
||||||
FORM is a list in which we are substituting.
|
FORM is a list in which we are substituting.
|
||||||
@ -142,6 +150,17 @@ expanded from elsewhere."
|
|||||||
(while form
|
(while form
|
||||||
(setq first (car form)
|
(setq first (car form)
|
||||||
form (cdr form))
|
form (cdr form))
|
||||||
|
;; Hack for dealing with new reading of unquotes outside of
|
||||||
|
;; backquote (introduced in rev. 102591 in emacs-bzr).
|
||||||
|
(when (and bovine--grammar-newstyle-unquote
|
||||||
|
(listp first)
|
||||||
|
(or (equal (car first) '\,)
|
||||||
|
(equal (car first) '\,@)))
|
||||||
|
(if (listp (cadr first))
|
||||||
|
(setq form (append (cdr first) form)
|
||||||
|
first (car first))
|
||||||
|
(setq first (intern (concat (symbol-name (car first))
|
||||||
|
(symbol-name (cadr first)))))))
|
||||||
(cond
|
(cond
|
||||||
((eq first nil)
|
((eq first nil)
|
||||||
(when (and (not inlist) (not inplace))
|
(when (and (not inlist) (not inplace))
|
||||||
|
Loading…
Reference in New Issue
Block a user