mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-25 19:11:56 +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>
|
||||
|
||||
* 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.
|
||||
(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)
|
||||
"Expand FORM into a new one suitable to the bovine parser.
|
||||
FORM is a list in which we are substituting.
|
||||
@ -142,6 +150,17 @@ expanded from elsewhere."
|
||||
(while form
|
||||
(setq first (car 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
|
||||
((eq first nil)
|
||||
(when (and (not inlist) (not inplace))
|
||||
|
Loading…
Reference in New Issue
Block a user