1# Visualindex Plugin 2 3## Plugin Info 4 5- Description: displays a visual index 6- Author: Valentin LORTET, Gabriel CHOIMET 7- Email: contact@lortet.fr 8- Type: Syntax, Action 9- Last update: 2026-03-09 10- Compatible: Librarian 11 12## Installation 13 14Install the plugin from the [Extension Manager](https://www.dokuwiki.org/plugin:extension). 15 16## Description 17 18The **visualindex** plugin displays a visual index of pages (or media files) from a DokuWiki namespace. 19 20It is compatible with: 21- the classic editor, 22- [ProseMirror](https://www.dokuwiki.org/plugin:prosemirror). 23 24## Syntax 25 26Base syntax: 27 28```txt 29{{visualindex>namespace}} 30``` 31 32Examples: 33 34```txt 35{{visualindex>.}} 36{{visualindex>wiki}} 37{{visualindex>wiki;filter=start|syntax*}} 38{{visualindex>wiki;desc=1}} 39{{visualindex>wiki;medias=1}} 40{{visualindex>.;filter=guide*;desc=1;medias=1}} 41``` 42 43Supported options: 44- `filter`: simple wildcard filter with `*` (example: `guide*|doc*`), 45- `desc`: descending sort (`1` / `true`), 46- `medias`: list media from the namespace (`1` / `true`). 47 48Special namespace values: 49- `.`: current namespace, 50- `~sub:folder`: namespace relative to current namespace. 51 52## Settings 53 54- `taille_icone`: icon size (example: `100px`), 55- `taille_texte`: text size (example: `13px`), 56- `couleur_texte`: text color (hex, rgb/rgba, or CSS color name), 57- `skip_file`: regex of pages to ignore, 58- `show_in_editor_menu`: show Visualindex in editor menus (classic and ProseMirror), 59- `use_pagesicon`: use `pagesicon` helper when available, 60- `default_image`: default image (media ID, e.g. `wiki:logo.png`); if empty, plugin internal image is used. 61 62## pagesicon Integration 63 64If [pagesicon](https://www.dokuwiki.org/plugin:pagesicon) is installed and `use_pagesicon` is enabled: 65- Visualindex resolves page icons, 66- Visualindex resolves media icons, 67- fallback is applied when no icon is found. 68 69Fallback order: 701. icon from `pagesicon`, 712. Visualindex `default_image`, 723. plugin internal image (`images/default_image.png`). 73 74## ProseMirror 75 76The plugin exposes a `Visualindex` button in ProseMirror (when `show_in_editor_menu` is enabled) with a configuration popup. 77 78Popup fields: 79- namespace, 80- filter, 81- descending order, 82- media listing. 83 84## Main Files 85 86- `syntax/visualindex.php`: parsing and XHTML rendering, 87- `action/prosemirror.php`: editor integration, 88- `script/prosemirror.js`: ProseMirror node, 89- `script/toolbar.js`: button and popup, 90- `style.css`: display styles. 91