Editeur wysiwyg pour faciliter l'édition des articles

Un article de FormaVia.

Il peut être pratique, dans une perspective d'appropriation des usages, et pour éviter les "barrières" liées à la syntaxe wiki, de rajouter un éditeur wysiwyg ("what you see is what you get" = ce qui est affiché lors de l'édition est identique au rendu), comme celui que vous pouvez trouver sur FormaVia :

Sommaire

Liens utiles


Mode d'emploi abrégé

  1. copier le contenu du fichier compressé (le dossier FCKEditor) dans le dossier /extensions/ du wiki
  2. ajouter les lignes suivantes dans LocalSettings.php (seule require... est nécessaire, mais pour des raisons de maintenance, il est utile d'indiquer les autres modifications effectuées)
# Extension FCKEditor pour mediawiki
require_once('extensions/FCKeditor/FCKeditor.php');
// Voir aussi http://mediawiki.fckeditor.net/index.php/FCKeditor_integration_guide pour les modifs
// dans ./includes/EditPage.php et ./includes/Sanitizer.php

→ Lire les informations sur http://www.mediawiki.org/wiki/Extension:FCKeditor_(Official)

→ Voir le guide d'intégration de FCKeditor http://mediawiki.fckeditor.net/index.php/FCKeditor_integration_guide (EN)



Pour les anciennes versions de Mediawiki (avant 1.13 exclue), il peut être nécessaire d'appliquer les 2 patchs suivants :

  1. il y a 2 modifications à faire dans /includes/EditPage.php et /includes/Sanitizer.php
    1. dans /includes/EditPage.php il faut remplacer
$wgOut->addHtml( wfHidden( 'wpAutoSummary', $autosumm ) );
if ( $this->isConflict ) {

par

$wgOut->addHtml( wfHidden( 'wpAutoSummary', $autosumm ) );
if ( $this->isConflict && wfRunHooks( 'EditPageBeforeConflictDiff', array( &$this, &$wgOut ) )) {
    1. et dans /includes/Sanitizer.php
return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : ;

par

if ( !wfRunHooks( 'SanitizerAfterFixTagAttributes', array( $text, $element, &$attribs ) ) ) { return ;}
return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : ;

je ne dirais pas que c'est simplissime, mais ce n'est pas insurmontable !~)


Travailler avec et sans l'éditeur

Il est parfois utile de se débarrasser de l'éditeur avancé : pour cela vous pouvez choisir sur quelles pages l'afficher, ou pas :

  • dans les préférences de chaque utilisateur
  • avec des variables de configuration (je ne détaille pas ici)
  • en ajoutant __NORICHEDITOR__ dans le corps de la page (n'importe où..)
  • en cliquant sur Wikitext dans l'éditeur ;) (fonction très utile pour faire des aller-retours entre syntaxe wiki et rendu)


Autres remarques

  • cet éditeur n'est pas compatible avec GoogleMapsExtension (voir l'article à ce sujet) : utiliser __NORICHEDITOR__ lorsque l'on se sert de l'extension. Pour être précis, c'est l'éditeur de carte qui ne s'affiche pas car il est remplacé par l'éditeur avancé.
  • la traduction des textes utilisés par cette extension est incomplète :
    • récupérez sur ce wiki la version francisée du fichier /extensions/FCKeditor/plugins/mediawiki/fckplugin.js , qui permet de traduire les infobulles sur les boutons de l'éditeur en français
    • modifier également "en" en "fr" dans /extensions/FCKeditor/fckeditor_config.js ligne 33 (environ)
FCKConfig.DefaultLanguage = 'en' ;
    • il reste encore quelques messages non traduits...
  • cette extension gère les modèles, extensions et autres syntaxes wiki avancées, et les affiche sous une forme de "tag spécial" : il faut toutefois prévisualiser la page pour voir le rendu réel ;
  • certaines extensions ne "passent pas" lors de la prévisualisation (c'est le cas par exemple des flux RSS intégrés) : il convient de ne pas en tenir compte, et de vérifier le rendu final en sauvegardant la page ;
  • cet éditeur gère les raccourcis clavier ;
  • il y a certainement d'autres réglages à faire pour améliorer encore cette extension : à tester  !)


 Signaler cette page

 » Créer mon compte