README.md
1# Visualindex
2
3** Français** | [ English](README_EN) | [ Deutsch](README_DE) | [ Español](README_ES)
4
5---
6
7Le plugin **visualindex** affiche un index visuel des pages (ou des médias) d’un namespace DokuWiki.
8
9Il est compatible avec :
10- l’éditeur classique ;
11- ProseMirror.
12
13## Fonctionnement
14
15Le plugin lit un namespace, construit une liste d’éléments accessibles en lecture, puis affiche des tuiles avec :
16- une image ;
17- un titre ;
18- un lien vers la page ou le média.
19
20Si aucun élément n’est disponible, un message traduit est affiché.
21
22## Syntaxe
23
24Syntaxe de base :
25
26```txt
27{{visualindex>namespace}}
28```
29
30Exemples utiles :
31
32```txt
33{{visualindex>.}}
34{{visualindex>wiki}}
35{{visualindex>wiki;filter=start|syntax*}}
36{{visualindex>wiki;desc=1}}
37{{visualindex>wiki;medias=1}}
38{{visualindex>.;filter=guide*;desc=1;medias=1}}
39```
40
41Options supportées :
42- `filter` : filtre simple avec `*` (ex. `guide*|doc*`) ;
43- `desc` : tri descendant (`1` / `true`) ;
44- `medias` : affiche les médias du namespace (`1` / `true`).
45
46Namespace spécial :
47- `.` : namespace courant ;
48- `~sous:dossier` : namespace relatif au namespace courant.
49
50## Paramètres de configuration
51
52Dans le gestionnaire de configuration :
53
54- `icon_size` : taille de l’icône (ex. `100px`) ;
55- `text_size` : taille du texte (ex. `13px`) ;
56- `text_color` : couleur du texte (hex, rgb/rgba, ou nom CSS) ;
57- `skip_file` : expression régulière des pages à ignorer ;
58- `show_in_editor_menu` : afficher Visualindex dans les menus d’édition (classique et ProseMirror) ;
59- `use_pagesicon` : utiliser le helper `pagesicon` si disponible ;
60- `default_image` : image par défaut (ID média, ex : `wiki:logo.png`) ; si vide, l’image interne du plugin est utilisée.
61
62## Intégration avec pagesicon
63
64Si le plugin `pagesicon` est présent et activé via `use_pagesicon` :
65- Visualindex récupère les icônes des pages via le helper ;
66- Visualindex récupère aussi les icônes des médias ;
67- si aucune icône n’est trouvée, le fallback par défaut est utilisé.
68
69Ordre de fallback :
701. icône fournie par `pagesicon` ;
712. `default_image` de Visualindex ;
723. image interne du plugin (`images/default_image.png`).
73
74## ProseMirror
75
76Le plugin expose un bouton `Visualindex` dans ProseMirror (si `show_in_editor_menu` est activé) avec une popup de configuration.
77
78La popup permet de renseigner :
79- le namespace ;
80- le filtre ;
81- l’ordre descendant ;
82- l’affichage des médias.
83
84## Fichiers principaux
85
86- `syntax/visualindex.php` : parsing et rendu XHTML ;
87- `action/prosemirror.php` : intégration éditeur ;
88- `script/prosemirror.js` : nœud ProseMirror ;
89- `script/toolbar.js` : bouton et popup ;
90- `style.css` : styles d’affichage.
91
README_DE.md
1# Visualindex
2
3 [Français](README) | [English](README_EN) | ** Deutsch** | [Español](README_ES)
4
5---
6
7Das Plugin **visualindex** zeigt einen visuellen Index der Seiten (oder Mediendateien) eines DokuWiki-Namespace.
8
9Es ist kompatibel mit:
10- dem klassischen Editor;
11- ProseMirror.
12
13## Funktionsweise
14
15Das Plugin liest einen Namespace, erstellt eine Liste lesbarer Elemente und zeigt Kacheln mit:
16- einem Bild;
17- einem Titel;
18- einem Link zur Seite oder Mediendatei.
19
20Wenn keine Elemente verfügbar sind, wird eine übersetzte Meldung angezeigt.
21
22## Syntax
23
24Grundsyntax:
25
26```txt
27{{visualindex>namespace}}
28```
29
30Nützliche Beispiele:
31
32```txt
33{{visualindex>.}}
34{{visualindex>wiki}}
35{{visualindex>wiki;filter=start|syntax*}}
36{{visualindex>wiki;desc=1}}
37{{visualindex>wiki;medias=1}}
38{{visualindex>.;filter=guide*;desc=1;medias=1}}
39```
40
41Unterstützte Optionen:
42- `filter`: einfacher Filter mit `*` (z. B. `guide*|doc*`);
43- `desc`: absteigende Reihenfolge (`1` / `true`);
44- `medias`: Medien des Namespace anzeigen (`1` / `true`).
45
46Besondere Namespace-Werte:
47- `.`: aktueller Namespace;
48- `~sub:ordner`: Namespace relativ zum aktuellen Namespace.
49
50## Konfigurationsparameter
51
52Im Konfigurationsmanager:
53
54- `icon_size`: Symbolgröße (z. B. `100px`);
55- `text_size`: Textgröße (z. B. `13px`);
56- `text_color`: Textfarbe (hex, rgb/rgba oder CSS-Farbnamen);
57- `skip_file`: regulärer Ausdruck für zu ignorierende Seiten;
58- `show_in_editor_menu`: Visualindex in den Editor-Menüs anzeigen (klassisch und ProseMirror);
59- `use_pagesicon`: den `pagesicon`-Helfer verwenden, wenn verfügbar;
60- `default_image`: Standardbild (Medien-ID, z. B. `wiki:logo.png`); wenn leer, wird das interne Plugin-Bild verwendet.
61
62## Integration mit pagesicon
63
64Wenn das Plugin `pagesicon` vorhanden und über `use_pagesicon` aktiviert ist:
65- Visualindex ruft Seitensymbole über den Helfer ab;
66- Visualindex ruft auch Mediensymbole ab;
67- wenn kein Symbol gefunden wird, wird der Standard-Fallback verwendet.
68
69Fallback-Reihenfolge:
701. Symbol von `pagesicon`;
712. Visualindex `default_image`;
723. internes Plugin-Bild (`images/default_image.png`).
73
74## ProseMirror
75
76Das Plugin stellt eine `Visualindex`-Schaltfläche in ProseMirror bereit (wenn `show_in_editor_menu` aktiviert ist) mit einem Konfigurations-Popup.
77
78Das Popup ermöglicht die Konfiguration von:
79- Namespace;
80- Filter;
81- absteigende Reihenfolge;
82- Medienanzeige.
83
README_EN.md
1# Visualindex
2
3[ Français](README) | ** English** | [ Deutsch](README_DE) | [ Español](README_ES)
4
5---
6
7The **visualindex** plugin displays a visual index of pages (or media files) from a DokuWiki namespace.
8
9It is compatible with:
10- the classic editor;
11- ProseMirror.
12
13## How It Works
14
15The plugin reads a namespace, builds a list of readable items, then displays tiles with:
16- an image;
17- a title;
18- a link to the page or media file.
19
20If no item is available, a translated message is displayed.
21
22## Syntax
23
24Basic syntax:
25
26```txt
27{{visualindex>namespace}}
28```
29
30Useful examples:
31
32```txt
33{{visualindex>.}}
34{{visualindex>wiki}}
35{{visualindex>wiki;filter=start|syntax*}}
36{{visualindex>wiki;desc=1}}
37{{visualindex>wiki;medias=1}}
38{{visualindex>.;filter=guide*;desc=1;medias=1}}
39```
40
41Supported options:
42- `filter`: simple filter with `*` (e.g. `guide*|doc*`);
43- `desc`: descending order (`1` / `true`);
44- `medias`: show namespace media (`1` / `true`).
45
46Special namespace values:
47- `.`: current namespace;
48- `~sub:folder`: namespace relative to the current namespace.
49
50## Configuration Parameters
51
52In the configuration manager:
53
54- `icon_size`: icon size (e.g. `100px`);
55- `text_size`: text size (e.g. `13px`);
56- `text_color`: text color (hex, rgb/rgba, or CSS color name);
57- `skip_file`: regular expression for pages to ignore;
58- `show_in_editor_menu`: show Visualindex in editor menus (classic and ProseMirror);
59- `use_pagesicon`: use the `pagesicon` helper when available;
60- `default_image`: default image (media ID, e.g. `wiki:logo.png`); if empty, the plugin internal image is used.
61
62## Integration with pagesicon
63
64If the `pagesicon` plugin is present and enabled through `use_pagesicon`:
65- Visualindex retrieves page icons through the helper;
66- Visualindex also retrieves media icons;
67- if no icon is found, the default fallback is used.
68
69Fallback order:
701. icon provided by `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
78The popup lets you configure:
79- namespace;
80- filter;
81- descending order;
82- media display.
83
README_ES.md
1# Visualindex
2
3 [Français](README) | [English](README_EN) | [Deutsch](README_DE) | ** Español**
4
5---
6
7El plugin **visualindex** muestra un índice visual de páginas (o archivos de medios) de un namespace de DokuWiki.
8
9Es compatible con:
10- el editor clásico;
11- ProseMirror.
12
13## Funcionamiento
14
15El plugin lee un namespace, construye una lista de elementos accesibles para lectura y muestra fichas con:
16- una imagen;
17- un título;
18- un enlace a la página o al archivo de medios.
19
20Si no hay elementos disponibles, se muestra un mensaje traducido.
21
22## Sintaxis
23
24Sintaxis básica:
25
26```txt
27{{visualindex>namespace}}
28```
29
30Ejemplos útiles:
31
32```txt
33{{visualindex>.}}
34{{visualindex>wiki}}
35{{visualindex>wiki;filter=start|syntax*}}
36{{visualindex>wiki;desc=1}}
37{{visualindex>wiki;medias=1}}
38{{visualindex>.;filter=guide*;desc=1;medias=1}}
39```
40
41Opciones admitidas:
42- `filter`: filtro simple con `*` (ej. `guide*|doc*`);
43- `desc`: orden descendente (`1` / `true`);
44- `medias`: mostrar medios del namespace (`1` / `true`).
45
46Valores de namespace especiales:
47- `.`: namespace actual;
48- `~sub:carpeta`: namespace relativo al namespace actual.
49
50## Parámetros de configuración
51
52En el gestor de configuración:
53
54- `icon_size`: tamaño del icono (ej. `100px`);
55- `text_size`: tamaño del texto (ej. `13px`);
56- `text_color`: color del texto (hex, rgb/rgba o nombre CSS);
57- `skip_file`: expresión regular para páginas a ignorar;
58- `show_in_editor_menu`: mostrar Visualindex en los menús del editor (clásico y ProseMirror);
59- `use_pagesicon`: usar el helper `pagesicon` cuando esté disponible;
60- `default_image`: imagen predeterminada (ID de medio, ej. `wiki:logo.png`); si está vacío, se usa la imagen interna del plugin.
61
62## Integración con pagesicon
63
64Si el plugin `pagesicon` está presente y activado mediante `use_pagesicon`:
65- Visualindex obtiene los iconos de páginas a través del helper;
66- Visualindex también obtiene los iconos de medios;
67- si no se encuentra ningún icono, se usa el fallback predeterminado.
68
69Orden de fallback:
701. icono proporcionado por `pagesicon`;
712. `default_image` de Visualindex;
723. imagen interna del plugin (`images/default_image.png`).
73
74## ProseMirror
75
76El plugin expone un botón `Visualindex` en ProseMirror (cuando `show_in_editor_menu` está activado) con un popup de configuración.
77
78El popup permite configurar:
79- namespace;
80- filtro;
81- orden descendente;
82- visualización de medios.
83