Function: mml-read-tag
mml-read-tag is a byte-compiled function defined in mml.el.gz.
Signature
(mml-read-tag)
Documentation
Read a tag and return the contents.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/mml.el.gz
(defun mml-read-tag ()
"Read a tag and return the contents."
(let ((orig-point (point))
contents name elem val)
(forward-char 2)
(setq name (buffer-substring-no-properties
(point) (progn (forward-sexp 1) (point))))
(skip-chars-forward " \t\n")
(while (not (looking-at ">[ \t]*\n?"))
(setq elem (buffer-substring-no-properties
(point) (progn (forward-sexp 1) (point))))
(skip-chars-forward "= \t\n")
(setq val (buffer-substring-no-properties
(point) (progn (forward-sexp 1) (point))))
(when (string-match "\\`\"" val)
(setq val (read val))) ;; inverse of prin1 in mml-insert-tag
(push (cons (intern elem) val) contents)
(skip-chars-forward " \t\n"))
(goto-char (match-end 0))
;; Don't skip the leading space.
;;(skip-chars-forward " \t\n")
;; Put the tag location into the returned contents
(setq contents (append (list (cons 'tag-location orig-point)) contents))
(cons (intern name) (nreverse contents))))