From: Juri Linkov Date: Mon, 29 Jul 2019 18:18:34 +0000 (+0300) Subject: * lisp/info.el (Info-toc-insert): Suppress same section names as node names. X-Git-Tag: emacs-27.0.90~1817^2~31 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=199a1b5cd4845f432ee7231e0f7cdd2b6ebddf37;p=emacs.git * lisp/info.el (Info-toc-insert): Suppress same section names as node names. Add indentation to section lines. (Bug#23142) --- diff --git a/lisp/info.el b/lisp/info.el index 3203c5f171e..cc18ea11f33 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -2452,11 +2452,12 @@ Table of contents is created from the tree structure of menus." "Insert table of contents with references to nodes." (let ((section "Top")) (while nodes - (let ((node (assoc (car nodes) node-list))) - (unless (member (nth 2 node) (list nil section)) - (insert (setq section (nth 2 node)) "\n")) - (insert (make-string level ?\t)) - (insert "*Note " (car nodes) ":: \n") + (let ((node (assoc (car nodes) node-list)) + (indentation (make-string level ?\t))) + (when (and (not (member (nth 2 node) (list nil section))) + (not (equal (nth 1 node) (nth 2 node)))) + (insert indentation (setq section (nth 2 node)) "\n")) + (insert indentation "*Note " (car nodes) ":: \n") (Info-toc-insert (nth 3 node) node-list (1+ level) curr-file) (setq nodes (cdr nodes))))))