xref: /plugin/visualindex/DOKU.md (revision 3c9c7f3beeea1dce712c368cb507b309c63f5d06)
1*3c9c7f3bSLORTET====== Visualindex Plugin ======
2*3c9c7f3bSLORTET
3*3c9c7f3bSLORTET---- plugin ----
4*3c9c7f3bSLORTETdescription: Affiche un sommaire visuel
5*3c9c7f3bSLORTETauthor     : Valentin LORTET, Gabriel CHOIMET
6*3c9c7f3bSLORTETemail      : contact@lortet.fr
7*3c9c7f3bSLORTETtype       : Syntax, Action
8*3c9c7f3bSLORTETlastupdate : 2026-03-09
9*3c9c7f3bSLORTETcompatible : Librarian
10*3c9c7f3bSLORTETdepends    :
11*3c9c7f3bSLORTETconflicts  :
12*3c9c7f3bSLORTETsimilar    :
13*3c9c7f3bSLORTETtags       : Navigation, Index, Media, ProseMirror, pagesicon
14*3c9c7f3bSLORTET
15*3c9c7f3bSLORTETdownloadurl:
16*3c9c7f3bSLORTETbugtracker :
17*3c9c7f3bSLORTETsourcerepo :
18*3c9c7f3bSLORTETdonationurl:
19*3c9c7f3bSLORTETscreenshot_img :
20*3c9c7f3bSLORTET----
21*3c9c7f3bSLORTET
22*3c9c7f3bSLORTET===== Installation =====
23*3c9c7f3bSLORTET
24*3c9c7f3bSLORTETInstaller le plugin depuis le [[fr:plugin:extension|Gestionnaire d'extensions]].
25*3c9c7f3bSLORTET
26*3c9c7f3bSLORTET===== Description =====
27*3c9c7f3bSLORTET
28*3c9c7f3bSLORTETLe plugin **visualindex** affiche un index visuel des pages (ou des médias) d'un namespace DokuWiki.
29*3c9c7f3bSLORTET
30*3c9c7f3bSLORTETIl est compatible avec :
31*3c9c7f3bSLORTET  * l'éditeur classique ;
32*3c9c7f3bSLORTET  * [[https://www.dokuwiki.org/plugin:prosemirror|ProseMirror]].
33*3c9c7f3bSLORTET
34*3c9c7f3bSLORTET===== Syntaxe =====
35*3c9c7f3bSLORTET
36*3c9c7f3bSLORTETSyntaxe de base :
37*3c9c7f3bSLORTET  * ''{{visualindex>namespace}}''
38*3c9c7f3bSLORTET
39*3c9c7f3bSLORTETExemples :
40*3c9c7f3bSLORTET  * ''{{visualindex>.}}''
41*3c9c7f3bSLORTET  * ''{{visualindex>wiki}}''
42*3c9c7f3bSLORTET  * ''{{visualindex>wiki;filter=start|syntax*}}''
43*3c9c7f3bSLORTET  * ''{{visualindex>wiki;desc=1}}''
44*3c9c7f3bSLORTET  * ''{{visualindex>wiki;medias=1}}''
45*3c9c7f3bSLORTET  * ''{{visualindex>.;filter=guide*;desc=1;medias=1}}''
46*3c9c7f3bSLORTET
47*3c9c7f3bSLORTETOptions :
48*3c9c7f3bSLORTET  * ''filter'' : filtre simple avec ''*'' (ex. ''guide*|doc*'') ;
49*3c9c7f3bSLORTET  * ''desc'' : tri descendant (''1'' / ''true'') ;
50*3c9c7f3bSLORTET  * ''medias'' : affiche les médias du namespace (''1'' / ''true'').
51*3c9c7f3bSLORTET
52*3c9c7f3bSLORTETNamespace spécial :
53*3c9c7f3bSLORTET  * ''.'' : namespace courant ;
54*3c9c7f3bSLORTET  * ''~sous:dossier'' : namespace relatif au namespace courant.
55*3c9c7f3bSLORTET
56*3c9c7f3bSLORTET===== Paramètres =====
57*3c9c7f3bSLORTET
58*3c9c7f3bSLORTET^ Nom ^ Description ^ Valeur par défaut ^
59*3c9c7f3bSLORTET| taille_icone | Taille de l'icône (ex. ''100px''). | ''100px'' |
60*3c9c7f3bSLORTET| taille_texte | Taille du texte (ex. ''13px''). | ''13px'' |
61*3c9c7f3bSLORTET| couleur_texte | Couleur du texte (hex, rgb/rgba, ou nom CSS). | ''black'' |
62*3c9c7f3bSLORTET| skip_file | Regex des pages à ignorer. | '''' |
63*3c9c7f3bSLORTET| show_in_editor_menu | Afficher Visualindex dans les menus d'édition (classique et ProseMirror). | ''true'' |
64*3c9c7f3bSLORTET| use_pagesicon | Utiliser le helper ''pagesicon'' si disponible. | ''true'' |
65*3c9c7f3bSLORTET| default_image | Image par défaut (ID média), ex. ''wiki:logo.png''. | '''' |
66*3c9c7f3bSLORTET
67*3c9c7f3bSLORTET===== Intégration pagesicon =====
68*3c9c7f3bSLORTET
69*3c9c7f3bSLORTETSi [[https://www.dokuwiki.org/plugin:pagesicon|pagesicon]] est installé et ''use_pagesicon'' activé :
70*3c9c7f3bSLORTET  * Visualindex récupère les icônes de pages ;
71*3c9c7f3bSLORTET  * Visualindex récupère les icônes de médias ;
72*3c9c7f3bSLORTET  * fallback par défaut si aucune icône n'est trouvée.
73*3c9c7f3bSLORTET
74*3c9c7f3bSLORTETOrdre de fallback :
75*3c9c7f3bSLORTET  * icône fournie par ''pagesicon'' ;
76*3c9c7f3bSLORTET  * ''default_image'' de Visualindex ;
77*3c9c7f3bSLORTET  * image interne du plugin (''images/default_image.png'').
78*3c9c7f3bSLORTET
79*3c9c7f3bSLORTET===== ProseMirror =====
80*3c9c7f3bSLORTET
81*3c9c7f3bSLORTETLe plugin expose un bouton ''Visualindex'' dans ProseMirror (si ''show_in_editor_menu'' est activé), avec une popup de configuration :
82*3c9c7f3bSLORTET  * namespace ;
83*3c9c7f3bSLORTET  * filtre ;
84*3c9c7f3bSLORTET  * ordre descendant ;
85*3c9c7f3bSLORTET  * affichage des médias.
86*3c9c7f3bSLORTET
87*3c9c7f3bSLORTET===== Fichiers principaux =====
88*3c9c7f3bSLORTET
89*3c9c7f3bSLORTET  * ''syntax/visualindex.php'' : parsing et rendu XHTML ;
90*3c9c7f3bSLORTET  * ''action/prosemirror.php'' : intégration éditeur ;
91*3c9c7f3bSLORTET  * ''script/prosemirror.js'' : nœud ProseMirror ;
92*3c9c7f3bSLORTET  * ''script/toolbar.js'' : bouton et popup ;
93*3c9c7f3bSLORTET  * ''style.css'' : styles d'affichage.
94