xref: /plugin/catmenu/DOKU_EN (revision 6983cdfd4483215ff5a1e573925c9c612964e790)
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