1*6983cdfdSLORTET====== CatMenu Plugin ====== 2*6983cdfdSLORTET 3*6983cdfdSLORTET---- plugin ---- 4*6983cdfdSLORTETdescription: Displays a namespace tree menu 5*6983cdfdSLORTETauthor : Valentin LORTET 6*6983cdfdSLORTETemail : contact@lortet.fr 7*6983cdfdSLORTETtype : Syntax, Action 8*6983cdfdSLORTETlastupdate : 2026-03-09 9*6983cdfdSLORTETcompatible : Librarian 10*6983cdfdSLORTETdepends : 11*6983cdfdSLORTETconflicts : 12*6983cdfdSLORTETsimilar : 13*6983cdfdSLORTETtags : Navigation, Menu, Namespace, ProseMirror 14*6983cdfdSLORTET 15*6983cdfdSLORTETdownloadurl: 16*6983cdfdSLORTETbugtracker : 17*6983cdfdSLORTETsourcerepo : 18*6983cdfdSLORTETdonationurl: 19*6983cdfdSLORTETscreenshot_img : 20*6983cdfdSLORTET---- 21*6983cdfdSLORTET 22*6983cdfdSLORTET===== Installation ===== 23*6983cdfdSLORTET 24*6983cdfdSLORTETInstall the plugin from the [[plugin:extension|Extension Manager]]. 25*6983cdfdSLORTET 26*6983cdfdSLORTET===== Description ===== 27*6983cdfdSLORTET 28*6983cdfdSLORTETThe **catmenu** plugin allows you to: 29*6983cdfdSLORTET * display a tree menu (pages + subfolders) for a namespace; 30*6983cdfdSLORTET * automatically open the branch matching the current page; 31*6983cdfdSLORTET * handle namespace start pages (''$conf['start']''); 32*6983cdfdSLORTET * provide a context menu with actions (depending on permissions). 33*6983cdfdSLORTET 34*6983cdfdSLORTET===== Syntax ===== 35*6983cdfdSLORTET 36*6983cdfdSLORTETUsage: 37*6983cdfdSLORTET * ''{{catmenu>namespace}}'' 38*6983cdfdSLORTET 39*6983cdfdSLORTETExamples: 40*6983cdfdSLORTET * ''{{catmenu>.}}'' (current namespace) 41*6983cdfdSLORTET * ''{{catmenu>wiki}}'' 42*6983cdfdSLORTET * ''{{catmenu>docs:project}}'' 43*6983cdfdSLORTET 44*6983cdfdSLORTET===== Settings ===== 45*6983cdfdSLORTET 46*6983cdfdSLORTET^ Name ^ Description ^ Default value ^ 47*6983cdfdSLORTET| skip_file | Regex used to ignore page IDs. | '''' | 48*6983cdfdSLORTET| skip_page_without_title | Ignore pages without an H1 title. | ''true'' | 49*6983cdfdSLORTET| show_in_editor_menu | Show the insert button in the editor. | ''true'' | 50*6983cdfdSLORTET 51*6983cdfdSLORTET===== Compatibility ===== 52*6983cdfdSLORTET 53*6983cdfdSLORTET * Compatible with [[https://www.dokuwiki.org/plugin:prosemirror|ProseMirror]] 54*6983cdfdSLORTET * Uses [[https://www.dokuwiki.org/plugin:pagesicon|pagesicon]] to display icons when available. 55*6983cdfdSLORTET 56*6983cdfdSLORTET===== Icons (pagesicon) ===== 57*6983cdfdSLORTET 58*6983cdfdSLORTETIf the ''pagesicon'' helper is installed: 59*6983cdfdSLORTET * icons are retrieved through the helper API; 60*6983cdfdSLORTET * default ''pagesicon'' image fallback is available on recent versions; 61*6983cdfdSLORTET * legacy fallback is kept for older helper signatures. 62*6983cdfdSLORTET 63*6983cdfdSLORTETIf no icon is found, the item is rendered without an image. 64*6983cdfdSLORTET 65*6983cdfdSLORTET===== Context menu ===== 66*6983cdfdSLORTET 67*6983cdfdSLORTETRight-click on a menu item: 68*6983cdfdSLORTET * create a new page (if allowed); 69*6983cdfdSLORTET * reload cache (''purge=true''); 70*6983cdfdSLORTET * open media manager; 71*6983cdfdSLORTET * open icon management (''pagesicon'') when available; 72*6983cdfdSLORTET * copy URL. 73*6983cdfdSLORTET 74*6983cdfdSLORTET===== Permissions ===== 75*6983cdfdSLORTET 76*6983cdfdSLORTETRendering follows DokuWiki ACL rules: 77*6983cdfdSLORTET * read permission is required to show an item; 78*6983cdfdSLORTET * context actions are limited by permissions (create/edit/upload). 79