Mercurial > hg > xemacs-beta
comparison lisp/psgml/psgml-api.el @ 2:ac2d302a0011 r19-15b2
Import from CVS: tag r19-15b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:46:35 +0200 |
parents | 376386a54a3c |
children | 131b0175ea99 |
comparison
equal
deleted
inserted
replaced
1:c0c6a60d29db | 2:ac2d302a0011 |
---|---|
1 ;;; psgml-api.el --- Extra API functions for PSGML | 1 ;;; psgml-api.el --- Extra API functions for PSGML |
2 ;; $Id: psgml-api.el,v 1.1.1.1 1996/12/18 03:35:18 steve Exp $ | 2 ;; $Id: psgml-api.el,v 1.1.1.2 1996/12/18 03:47:13 steve Exp $ |
3 | 3 |
4 ;; Copyright (C) 1994 Lennart Staflin | 4 ;; Copyright (C) 1994 Lennart Staflin |
5 | 5 |
6 ;; Author: Lennart Staflin <lenst@lysator.liu.se> | 6 ;; Author: Lennart Staflin <lenst@lysator.liu.se> |
7 | 7 |
68 "Map content of ELEMENT, calling ELEMENT-FUN for every element. | 68 "Map content of ELEMENT, calling ELEMENT-FUN for every element. |
69 Also calling DATA-FUN, if non-nil, with data in content." | 69 Also calling DATA-FUN, if non-nil, with data in content." |
70 (sgml-pop-all-entities) | 70 (sgml-pop-all-entities) |
71 (sgml-need-dtd) | 71 (sgml-need-dtd) |
72 (sgml-element-end element) ; Make sure all content is parsed | 72 (sgml-element-end element) ; Make sure all content is parsed |
73 (save-excursion | 73 (let ((main-buffer-max (point-max))) |
74 (sgml-set-parse-state element 'start) | 74 (save-excursion |
75 (when (eobp) (sgml-pop-entity)) | 75 (sgml-set-parse-state element 'start) |
76 (when (eolp) (forward-char 1)) | 76 (when (eobp) (sgml-pop-entity)) |
77 (sgml-parse-data (point-max) data-fun pi-fun entity-fun) | 77 (when (eolp) (forward-char 1)) |
78 (let ((c (sgml-tree-content element))) | 78 (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun) |
79 (while c | 79 (let ((c (sgml-tree-content element))) |
80 (sgml-pop-all-entities) | 80 (while c |
81 (funcall element-fun c) | 81 (sgml-pop-all-entities) |
82 (sgml-set-parse-state c 'after) | 82 (funcall element-fun c) |
83 (sgml-parse-data (point-max) data-fun pi-fun entity-fun) | 83 (sgml-set-parse-state c 'after) |
84 (setq c (sgml-tree-next c))))) | 84 (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun) |
85 (setq c (sgml-tree-next c))))) | |
86 ) | |
85 (sgml-pop-all-entities)) | 87 (sgml-pop-all-entities)) |
86 | 88 |
87 (defun sgml-parse-data (sgml-goal sgml-data-function sgml-pi-function | 89 (defun sgml-parse-data (sgml-goal sgml-data-function sgml-pi-function |
88 sgml-entity-function) | 90 sgml-entity-function) |
89 (let ((sgml-throw-on-element-change 'el-done)) | 91 (let ((sgml-throw-on-element-change 'el-done)) |