From c9b3104a4cca2e921fd6340a991c5601c1ae6a33 Mon Sep 17 00:00:00 2001 From: Randy Taylor Date: Tue, 7 Mar 2023 20:38:18 -0500 Subject: [PATCH] Fix enums and unions appearing as structs in c-ts-base-mode's imenu * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): Separate enums and unions out from structs. --- lisp/progmodes/c-ts-mode.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/progmodes/c-ts-mode.el b/lisp/progmodes/c-ts-mode.el index fdd962ff020..ff86b9e0544 100644 --- a/lisp/progmodes/c-ts-mode.el +++ b/lisp/progmodes/c-ts-mode.el @@ -930,9 +930,9 @@ c-ts-base-mode ;; Imenu. (setq-local treesit-simple-imenu-settings (let ((pred #'c-ts-mode--defun-valid-p)) - `(("Struct" ,(rx bos (or "struct" "enum" "union") - "_specifier" eos) - ,pred nil) + `(("Enum" "\\`enum_specifier\\'" ,pred nil) + ("Struct" "\\`struct_specifier\\'" ,pred nil) + ("Union" "\\`union_specifier\\'" ,pred nil) ("Variable" ,(rx bos "declaration" eos) ,pred nil) ("Function" "\\`function_definition\\'" ,pred nil) ("Class" ,(rx bos (or "class_specifier" -- 2.39.2