# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: nbtrap@nbtrap.com-20140111124832-14454dcnawyzjkny # target_branch: file:///home/nathan/opt/etc/bzr-repos/emacs/trunk/ # testament_sha1: 6cb8b589f64f1b09f140c539ef23d4305646a92e # timestamp: 2014-01-11 07:48:46 -0500 # base_revision_id: rgm@gnu.org-20140110201931-3ybs57oe9egahtb4 # # Begin patch === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-01-10 20:19:31 +0000 +++ lisp/ChangeLog 2014-01-11 03:16:17 +0000 @@ -1,3 +1,8 @@ +2014-01-11 Nathan Trapuzzano + + * lisp/net/shr.el (shr-next-link, shr-previous-link): Don't skip + over contiguous links. + 2014-01-10 Glenn Morris * emacs-lisp/authors.el (authors-fixed-entries): === modified file 'lisp/net/shr.el' --- lisp/net/shr.el 2014-01-05 10:23:35 +0000 +++ lisp/net/shr.el 2014-01-11 12:48:32 +0000 @@ -242,8 +242,10 @@ (defun shr-next-link () "Skip to the next link." (interactive) - (let ((skip (text-property-any (point) (point-max) 'help-echo nil))) - (if (not (setq skip (text-property-not-all skip (point-max) + (let ((skip (and (get-text-property (point) 'help-echo) + (or (next-single-property-change (point) 'help-echo) + (point-max))))) + (if (not (setq skip (text-property-not-all (or skip (point)) (point-max) 'help-echo nil))) (message "No next link") (goto-char skip) @@ -254,11 +256,17 @@ (interactive) (let ((start (point)) (found nil)) - ;; Skip past the current link. - (while (and (not (bobp)) - (get-text-property (point) 'help-echo)) + ;; Skip backwards past the current link. Be carefule when the + ;; current link extends past the end of the narrowed region and + ;; point is at (point-max). In such a case, we proceed as though + ;; point is _not_ looking at a link. Cf. Emacs bug#16413. + (when (and (get-text-property (point) 'help-echo) + (not (and (eobp) (buffer-narrowed-p)))) + (goto-char (or (previous-single-property-change + (min (1+ (point)) (point-max)) 'help-echo) + (point-min)))) + (unless (bobp) (forward-char -1)) - ;; Find the previous link. (while (and (not (bobp)) (not (setq found (get-text-property (point) 'help-echo)))) (forward-char -1)) @@ -267,10 +275,9 @@ (message "No previous link") (goto-char start)) ;; Put point at the start of the link. - (while (and (not (bobp)) - (get-text-property (point) 'help-echo)) - (forward-char -1)) - (forward-char 1) + (goto-char (or (previous-single-property-change + (min (1+ (point)) (point-max)) 'help-echo) + (point-min))) (message "%s" (get-text-property (point) 'help-echo))))) (defun shr-show-alt-text () # Begin bundle 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 0G1CLtBfYFV0UdwMG8Vh6L/4u5IpwoSCe2CtGA==