;;; wisent-grammar.el --- Wisent's input grammar mode
-;; Copyright (C) 2002-2011, 2012 Free Software Foundation, Inc.
+;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
;;
;; Author: David Ponce <david@dponce.com>
;; Maintainer: David Ponce <david@dponce.com>
(grammar-setupcode-builder . wisent-grammar-setupcode-builder)
)))
-(add-to-list 'auto-mode-alist '("\\.wy$" . wisent-grammar-mode))
+(add-to-list 'auto-mode-alist '("\\.wy\\'" . wisent-grammar-mode))
(defvar-mode-local wisent-grammar-mode semantic-grammar-macros
'(
)
"Semantic grammar macros used in wisent grammars.")
-
(defvar wisent-make-parsers--emacs-license
";; This file is part of GNU Emacs.
(semantic-mode 1)
;; Loop through each .wy file in current directory, and run
;; `semantic-grammar-batch-build-one-package' to build the grammar.
- (dolist (f (directory-files default-directory nil ".wy$"))
+ (dolist (f (directory-files default-directory nil "\\.wy\\'"))
(let ((packagename
(condition-case err
(with-current-buffer (find-file-noselect f)
;; Touch up the generated parsers for Emacs integration.
(with-temp-buffer
(insert-file-contents packagename)
- (setq buffer-file-name (expand-file-name packagename))
;; Fix copyright header:
(goto-char (point-min))
(when additional-copyright
(insert wisent-make-parsers--emacs-license)
(insert "\n\n;;; Commentary:
;;
-;; This file was generated from etc/grammars/"
+;; This file was generated from admin/grammars/"
f ".")
(when additional-license
(insert "\n" additional-license))
(insert ";;; " require-name
".el --- Generated parser support file")
(delete-trailing-whitespace)
- (re-search-forward ";;\n(require 'semantic-lex)\n")
+ (re-search-forward ";;\n(require 'semantic/lex)\n")
(delete-region (match-beginning 0) (match-end 0))
;; Fix footer:
(goto-char (point-max))
(goto-char (point-max))
(insert "(provide '" require-name ")\n\n")
(insert ";;; " require-name ".el ends here\n")
- (let ((make-backup-files nil))
- (save-buffer))))))))
-
-
+ (write-region nil nil (expand-file-name packagename))))))))
;;; wisent-grammar.el ends here