Function: nxml-scan-backward-within
nxml-scan-backward-within is a byte-compiled function defined in
nxml-mode.el.gz.
Signature
(nxml-scan-backward-within END)
Source Code
;; Defined in /usr/src/emacs/lisp/nxml/nxml-mode.el.gz
(defun nxml-scan-backward-within (_end)
(setq xmltok-start
(+ xmltok-start
(nxml-start-delimiter-length xmltok-type)))
(when (<= (point) xmltok-start)
(error "Already at start of %s"
(nxml-token-type-friendly-name xmltok-type)))
(cond ((memq xmltok-type '(start-tag
empty-element
partial-start-tag
partial-empty-element))
(let ((att (nxml-find-preceding-attribute)))
(cond ((not att) xmltok-start)
((and (xmltok-attribute-value-start att)
(<= (xmltok-attribute-value-start att)
(point))
(<= (point)
(xmltok-attribute-value-end att)))
(nxml-scan-backward-in-attribute-value att))
(t (xmltok-attribute-name-start att)))))
((and (eq xmltok-type 'processing-instruction)
(let ((content-start (save-excursion
(goto-char xmltok-name-end)
(skip-chars-forward " \r\t\n")
(point))))
(and (< content-start (point))
content-start))))
(t xmltok-start)))