* lisp/org/org-compat.el: Add definition of 'org-imenu-flatten'. (org-imenu-get-tree): Use 'org-imenu-flatten'. ---
Hello! I've been using this patch for a bit and I quite like it. One would think there would be an option in imenu itself to flatten trees but that does not seem to be the case. I copied the defcustom from 'doc-view-imenu-flatten'. Thanks, Morgan lisp/org-compat.el | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lisp/org-compat.el b/lisp/org-compat.el index 2697342d6..f2112e4e9 100644 --- a/lisp/org-compat.el +++ b/lisp/org-compat.el @@ -1333,6 +1333,10 @@ Pass COLUMN and FORCE to `move-to-column'." This also applied for speedbar access." :type 'integer) +(defcustom org-imenu-flatten nil + "Whether to flatten the list of sections in an imenu or show it nested." + :type 'boolean) + ;;;; Imenu (defvar-local org-imenu-markers nil @@ -1353,7 +1357,8 @@ This also applied for speedbar access." (org-link-display-format (org-get-heading t t t t))))) (when (and (<= level org-imenu-depth) (org-string-nw-p headline)) (let* ((m (point-marker)) - (item (propertize headline 'org-imenu-marker m 'org-imenu t))) + (item (propertize headline 'org-imenu-marker m 'org-imenu t)) + (level (if org-imenu-flatten 1 level))) (push m org-imenu-markers) (if (>= level last-level) (push (cons item m) (aref subs level)) -- 2.41.0