From: Lars Ingebrigtsen Date: Thu, 3 Jun 2021 09:55:45 +0000 (+0200) Subject: Make the `i' command in Info-mode remove duplicate matches X-Git-Tag: emacs-28.0.90~2209 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=089e0c4c55dcf72f9cf2f6f04b8a52fc7355499c;p=emacs.git Make the `i' command in Info-mode remove duplicate matches * lisp/info.el (Info-index): Weed out duplicate matched (bug#3692). --- diff --git a/lisp/info.el b/lisp/info.el index cdf339ff6fb..83a9bfbc235 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -3375,7 +3375,13 @@ Give an empty topic name to go to the Index node itself." (setq exact (cons found exact) matches (delq found matches))) (setq Info-history-list ohist-list) - (setq Info-index-alternatives (nconc exact (nreverse matches))) + (setq Info-index-alternatives + ;; Weed out index entries that refer to the same line. + (seq-uniq + (nconc exact (nreverse matches)) + (lambda (m1 m2) + (and (equal (nth 1 m1) (nth 1 m2)) + (equal (nth 3 m1) (nth 3 m2)))))) (Info-index-next 0))))) (defun Info-index-next (num)