;;; ebnf2ps.el --- translate an EBNF to a syntactic chart on PostScript
-;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-;; Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+;; 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
horizontal (memq (ebnf-node-action prod)
ebnf-action-list))
;; generate production in EPS buffer
- (save-excursion
- (set-buffer eps-buffer)
+ (with-current-buffer eps-buffer
(setq ebnf-eps-upper-x 0.0
ebnf-eps-upper-y 0.0
ebnf-eps-max-width prod-width
(ebnf-eps-finish-and-write eps-buffer
(ebnf-eps-filename prod-name)))
;; prepare for next loop
- (save-excursion
- (set-buffer eps-buffer)
+ (with-current-buffer eps-buffer
(erase-buffer))
(setq ebnf-tree (cdr ebnf-tree)))
;; write and kill temporary buffers
prod-width prod-height eps-buffer)
(while prod-list
(add-to-list file-list-sym (car prod-list))
- (save-excursion
- (set-buffer (get-buffer-create (concat " *" (car prod-list) "*")))
+ (with-current-buffer (get-buffer-create (concat " *" (car prod-list) "*"))
(goto-char (point-max))
(cond
;; first production
(defun ebnf-begin-file ()
(ps-flush-output)
- (save-excursion
- (set-buffer ps-spool-buffer)
+ (with-current-buffer ps-spool-buffer
(goto-char (point-min))
(and (search-forward "%%Creator: " nil t)
(not (search-forward "& ebnf2ps v"
- (save-excursion (end-of-line) (point))
+ (line-end-position)
t))
(progn
;; adjust creator comment
(defun ebnf-eps-finish-and-write (buffer filename)
(when (buffer-modified-p buffer)
- (save-excursion
- (set-buffer buffer)
+ (with-current-buffer buffer
(ebnf-eps-header-footer-set filename)
(setq ebnf-eps-upper-x (max ebnf-eps-upper-x ebnf-eps-max-width)
ebnf-eps-upper-y (if (zerop ebnf-eps-upper-y)
(defun ebnf-log (format-str &rest args)
(when ebnf-log
- (save-excursion
- (set-buffer (get-buffer-create "*Ebnf2ps Log*"))
+ (with-current-buffer (get-buffer-create "*Ebnf2ps Log*")
(goto-char (point-max))
(insert (apply 'format format-str args) "\n"))))
(provide 'ebnf2ps)
-;; arch-tag: 148bc8af-5398-468b-b922-eeb7afef3e4f
;;; ebnf2ps.el ends here