====== Dokuwiki ====== Le wiki que vous êtes en train de lire fonctionne sous DokuWiki. C'est un wiki sans base de données, très rapide et facile à mettre en place. Voici quelques informations concernant Dokuwiki que je me garde sous le coude. ===== Astuces en vrac ===== * Le gestionnaire de fichiers n'autorise l'upload que des fichiers d'un certain type (png, jpg...). Pour autoriser l'upload d'autres types, il faut créer le fichier ''/conf/mime.local.conf'' et y ajouter les types voulus. Exemple:\\ exe application/octet-stream * Pour **classer les fichiers uploadés**, dans le "wikiname", mettez le nom de la catégorie suivi de deux points avant le nom du fichier:\\ {{ :dokuwiki:classification_upload.png }}\\ Cela va automatiquement créer des dossiers. * **Supprimer une page:** Comme vous l'aurez remarqué, pas de bouton "supprimer cette page". En fait il faut faire "editer la page", sélectionner tout le texte, supprimer et faire "Enregistrer". Enregistrer un texte vide a pour effet de supprimer la page. * **Déplacer une page:** Il n'est pas actuellement possible de déplacer un document d'un namespace à un autre, encore moins en corrigeant automatiquement tous les liens qui pointent dessus. Il faut re-créer la page. C'est un des aspects un peu lourds de DokuWiki (même si c'est pas bien grave). * **DokuWiki chez free.fr**: DokuWiki ne fonctionne tel quel pas chez Free (*.free.fr). Il est nécessaire de le patcher. Les infos devraient se retrouver en googlant. ===== Personnalisation ===== * **Largeur à l'écran**: * Solution 1 : Aller dans l'administration > //Paramètres de style du thème (template)// > //Largeur du site complet// ou //%%__site_width__%%// > mettre //100%//. * Solution 2 : Patcher DokuWiki * Dans ''/dokuwiki/lib/tpl/dokuwiki/style.ini'', changer:__site_width__ = "75em" ; @ini_site_width en __site_width__ = "100%" ; @ini_site_widthpuis allez dans l'écran de configuration et re-validez le (Cela va purger le cache). Et voilà ! * **Changer les CSS de votre DokuWiki**. * Pour cela, pas besoin de toucher au thème: Contentez-vous de créer un fichier ''/conf/userstyle.css'' et mettez-y ce que vous voulez, par exemple:body { font-family: "Droid Sans","Noto Sans","Ascender Uni","Linotype Aroma","FF Kievit","Source Sans","Open Sans","Museo Sans","Myriad","Camphor","Corbel","Frutiger","Vectora","Calibri","Ubuntu","Roboto",sans-serif; } * Cette feuille de style survivra aux mises à jour DokuWiki. * (Je ne suis pas fan d'//Arial//) * **Retirer les marges gauche/droite sur les petits écrans:** * Dans mon ''userstyle.css'', j'ajoute:@media screen and (max-width: 700px) { #dokuwiki__site > .site { padding-right: 0px; padding-left: 0px; } } * Pour voir le résultat, diminuez la largeur de la fenêtre du navigateur: En dessous d'une certaine largeur, ça retirer les marges gauche et droite. C'est plus sympa pour les petits écrans. ==== Personnaliser une page ==== Il m'arrive d'avoir besoin/envie de personnaliser une page unique. C'est assez facile: Vous pouvez inclure du code HTML directement dans votre page wiki (pensez à activer l'option dans l'administration du wiki) avec les balises ''%%%%''/''%%%%''. Exemple: * Un dégradé de couleurs en fond (page [[jeux|Jeux]]) avec: * Un motif répétitif en fond, et ajustement de la transparence du bandeau ([[rimworld|RimWorld]]) avec: * Personnaliser les sections (h1,h2...) ([[mint_customization|Linux Mint]]) avec: ===== Plugins intéressants ===== * **[[http://www.dokuwiki.org/plugin:discussion|Discussion]]**: Permet d'ajouter un fil de discussion dans un article de Dokuwiki. Ajoutez juste ''%%~~DISCUSSION~~%%'' dans le corps de l'article. * **[[http://www.dokuwiki.org/plugin:note|Note]]**: Pour mettre en valeur des notes, warning, etc. Simple et pratique. * Exemple: Ceci est une note. * **[[https://www.dokuwiki.org/plugin:wrap|Wrap]]**, pratique pour encadrer des informations (et plus souple que //Note//). * **[[http://www.dokuwiki.org/plugin:hidden|Hidden]]**: collapse une zone qu'on peut agrandir en cliquant dessus (genre "spoiler"). Pratique pour publier de longs texte ou sources dans une page sans avoir à faire une page à côté). * Exemple: Coucou ! Je suis une note cachée. \\ * **[[https://www.dokuwiki.org/plugin:drawio|Draw.io]]**: Permet de dessiner des schémas directement dans vos pages ! Fantastique. * Démonstration:{{ :dokuwiki:dokuwiki-drawio.mp4?800 |}} * Après édition, ça génère directement un png. * Astuce: Le PNG contient aussi le document Draw.io XML source: Vous pouvez donc re-cliquer sur votre schéma et le modifier. * Le site draw.io ne sert qu'à servir une application statique: Elle s'exécute dans votre navigateur, et vos données ne vont que entre votre navigateur et DokuWiki (elles ne passent pas par le site draw.io). * (Draw.io est un [[https://github.com/jgraph/drawio|logiciel libre]] que vous pouvez même héberger sur votre serveur.) * **[[http://www.dokuwiki.org/plugin:keyboard|Keyboard]]**: permet d'afficher les touches de clavier. Pratique pour les tutoriels. * Exemple: C-c * Customiser l'apparence des touches comme ceci K, dans ''/conf/userstyle.css'', ajouter à la fin:kbd { background-color: #F2F2F2 !important; border-style: outset; border-width: 3px; border-radius: 0.3em; padding : 0px 2px 0px 2px !important; } * Notez que par défaut ce plugin fait des substitutions et met en majuscules. Entourez votre texte de simple quotes pour qu'il ne soit pas modifié. Exemples: **C-c-Right** donne C-c-Right, **t** donne t, mais **'t'** donne 't'. * **[[https://www.dokuwiki.org/plugin:loglog|LogLog]]**: Journal des connexions et tentatives de connexion. * **[[https://www.dokuwiki.org/plugin:tokenbucketauth|tokenbucketauth]]**: Banni une adresse IP si elle fait trop de tentatives de connexion sur le formulaire de login. * Astuce: Si vous vous êtes vous-même bloqué(e), voici comment réinitialiser le blocage (je me note ça, car j'oublie tout le temps), supprimez les 3 fichiers suivants: * /dokuwiki/data/cache/block.pbf * /dokuwiki/data/cache/lock.pbf * /dokuwiki/data/cache/users.pbf * **[[https://www.dokuwiki.org/plugin:unusedmedias|UnusedMedia]]**: Affiche la liste des pages orphelines et des médias non utilisés. * **[[https://www.dokuwiki.org/plugin:langdelete|langdelete]]**: Permet de supprimer les fichiers de langue inutile de votre wiki (pour l'alléger). * **[[https://www.dokuwiki.org/plugin:pageredirect|Page Redirect]]**, pratique pour rediriger vos anciennes pages vers les nouvelles. * **[[https://www.dokuwiki.org/plugin:anchor|Anchor]]**, permet de poser des ancres html (#ancre) où on veut dans une page (et pas seulement là où DokuWiki a automatiquement mis les ancres liés aux titres de section). Syntaxe: ''%%{{anchor:NomDeLAncre}}%%'' ===== Bidouilles ===== * Masquer les liens "//Gestionnaire Multimédia / Plan du site//" pour les utilisateurs qui ne sont pas admin: Dans ''wiki/lib/tpl/dokuwiki/tpl_header.php'', modifier:

+
getDropdown($lang['tools']); ?>
+
* Par défaut, toutes les miniature et images réduite créées par DokuWiki ne sont pas en jpeg progressif. Pour forcer en progressif, il faut: * Modifier le fichier ''inc/media.php'' en ajoutant la ligne suivant:--- media.php.original 2020-12-03 10:07:52.685477718 +0100 +++ media.php 2020-12-03 10:25:34.384486237 +0100 @@ -2423,6 +2423,7 @@ if(!function_exists('imagejpeg')){ $okay = false; }else{ + imageinterlace($newimg,true); $okay = imagejpeg($newimg, $to, $conf['jpg_quality']); } }elseif($ext == 'png') { * Puis en vidant le cache (supprimez tout le contenu du répertoire ''data/cache'' (mais sans supprimer le répertoire lui-même). * Couper l'accès au gestionnaire de médias pour les utilisateurs non-admin: FIXME //à faire// * Couper l'accès à l'historique sauf pour l'utilisateur admin: FIXME //à faire//