Bouton Changement de langue pour le Porte-Plume

Ajoute un bouton dans le porte-plume pour indiquer un changement de langue dans votre texte.

Indiquer un changement de langue dans un texte

Lorsque l’on rédige un texte, bien qu’il soit dans une langue donné, il peut comporter des éléments dans une autre langue.

Il importe dès lors de signaliser ce changement de langue pour diverses raisons :

  • les règles typographiques de cette langue ne sont pas les mêmes que celle de la langue principale de votre article ;
  • la direction (de la gauche vers la droite ou de la droite vers la gauche) peut-être différente (le navigateur doit alors en être informé pour afficher correctement le texte) ;
  • cette information est utilisée par les navigateurs vocaux pour adapter correctement la prononciation d’un mot en fonction de sa langue ;
  • cette information peut être utilisé par le navigateur pour des traitement additionnels, par exemple pour proposer une traduction au survol du mot.

Pour plus d’informations, voit notamment cette page du site OpenWeb

Ce changement de langue peut être indiqué en utilisant les raccourcis existants de SPIP et en particulier les blocs <multi>.

Pour indiquer un changement de langue, il suffit d’utiliser un bloc multilingue ne contenant qu’une seule langue, à savoir la langue du texte à afficher. Par exemple dans un article en français on pourra écrire :

Il faut se méfier des termes anglais <multi>[en]{fecondity}</multi> et <multi>[en]{fertility}</multi> qui correspondent respectivement en français à {fertilité} et {fécondité}.

ce qui produira le code HTML suivant :

<p>Il faut se méfier des termes anglais <span lang="en"><i>fecondity</i></span> et <span lang="en"><i>fertility</i></span> qui correspondent respectivement en français à <i>fertilité</i> et <i>fécondité</i>.</p>

On voit ainsi que les deux termes anglais sont dès lors entouré d’un <span lang="en"> comme il se doit.

Par ailleurs, en procédant ainsi, SPIP appliquera le traitement typographique adéquat (en français, par exemple, on doit placer un espace insécable avant un point d’interrogation ou d’exclamation alors que ce n’est pas le cas en anglais). On peut illustrer ce point avec l’exemple suivant :

Une phrase en français avec un point d'exclamation final! <multi>[en]A English sentence with an exclamation point!</multi>

donnera (constater l’espace devant le point d’exclamation seulement pour le français) :

Une phrase en français avec un point d’exclamation final ! A English sentence with an exclamation point!

Utiliser l’extension Changement de langue pour le Porte-Plume

Une fois ce plugin activé, un nouveau bouton

sera affiché dans le porte-plume.

Sélectionnez le texte qui est dans une autre langue et cliquez sur le bouton. Une fenêtre vous demandera le code de langue du texte (pour les différents code de langue, voir la norme ISO 639).

Le texte sera entouré par <multi>[code] et </multi>code sera le code de langue saisi (fr pour le français, en pour l’anglais, es pour l’espagnol, etc.).

De plus, dans l’espace d’administration, le texte en multi verra son fond coloré différemment et la langue indiquée explicitement après le texte, en exposant [1].

Indication visuelle du changement de langue dans l’espace d’admin

Notes

[1À l’exception d’Internet Explorer pour les versions avant la 8...

Discussion

2 discussions

  • Bonjour Romy,

    en premier lieu, de tout temps la balise <multi> a fonctionné de la manière suivante : affichage dans la langue en cours si disponible, premier élément sinon. Elle n’a été que peu documentée : elle n’est pas mentionnée dans la documentation sur les raccourcis typographiques et sur le site principal elle apparaît au milieu de la page Réaliser un site multilingue. En suivant cette logique, elle fonctionne aussi bien pour les deux usages, qui ne sont pas antagonistes d’un point de vue logique. Je précise la langue d’une portion de texte. Parfois je donne le texte en plusieurs langue, parfois je n’en indique qu’une seule.

    Son usage n’a jamais vraiment été codifié et l’utilisation de cette balise pour indiquer un changement de langue existait déjà de fait sur certains sites car c’était une solution native, fonctionnant sans avoir à modifier SPIP, tout en assurant un traitement typographique adéquat sur les portions de texte.

    J’ai retrouvé les échanges qui avaient eu lieu en décembre 2010 sur ce sujet (http://archives.rezo.net/archives/s...) et dès le premier message était évoqué la question de savoir si c’était un usage que l’on pouvait faire des balises multi ou si un nouveau raccourci aurait été préférable. A l’époque, personne n’avait rebondi sur la question d’un nouveau raccourci.

    D’un point de vue technique, la question d’un nouveau raccourci n’est pas si simple que cela, puisqu’un changement de langue n’implique pas seulement l’ajout d’un attribut de langue mais également l’ensemble des traitements typographiques propres à chaque langue et qui sont une des forces de Spip. Dès lors, l’introduction d’un nouveau raccourci relèverait plus du core que d’un plugin.

    Après, concernant le débat sur une syntaxe SPIP-only, le débat n’était pas aussi avancé en 2010 qu’il ne l’est aujourd’hui. Mais c’est à mon sens une question beaucoup plus générale concernant l’évolution de SPIP et le fait de passer éventuellement à d’autres languages comme markdown.

    Ceci étant dit, beaucoup des languages de type wiki n’ont pas forcément pris en compte la question du multilinguisme et des changements de langues.

    Concernant Wikipedia, il faut a priori passer par un modèle spécfique (cf. https://fr.wikipedia.org/wiki/Mod%C...)

    Concernant Markdown, ce n’est pas prévu dans l’implémentation de base. Markdown-Extra permet d’indiquer des attributs html (dont celui de langue) sur des titres, mais pas sur des éléments inline. Même si il reste possible d’indiquer directement du code HTML.

    Il y a un plugin expérimental pour utiliser Markdown dans Spip. Je n’ai pas testé s’il y a une syntaxe pertinente dans ce contexte pour indiquer un changement de langue tout en maintenant les traitements typographiques.

    Cdlt

    Répondre à ce message

  • Je découvre ce plugin, suite à la lecture de ce tuto qui induit en erreur sur l’usage du raccourci SPIP <multi> et pour lequel je rapportais l’erreur.

    L’usage introduit par ce plugin induit une mauvaise compréhension du raccourci SPIP <multi>, lequel sert, non pas à signaler un changement de langue, mais à traduire une portion de texte, ce qui est bien différent. D’après la doc, elle s’utilise comme ceci : <multi>[fr]en français[en]in english</multi>

    Puisqu’il s’agit d’un nouvel usage, différent, pourquoi avoir détourné un raccourci existant plutôt que d’en introduire un dédié ? Par exemple <lang>, qui tombe sous le sens ?

    C’est la meilleure façon d’emmêler les utilisateurs-rédacteurs… comme le montre ce guide de rédaction suscité. Bravo !

    Enfin, côté efficacité sur l’aide apportée, je reste plus que septique : quel est l’apport, pour les utilisateurs-rédacteurs ? à part le bouton à presser… Puisque la saisie est complexifiée par rapport à ce qui est requis en HTML : <multi>[en]toto</multi> au lieu de <i lang="en">toto</i>, c’est-à-dire toujours du code (HTML like not wiki like), plus long (23 caractères au lieu de 20), qui plus est ultra spécifique (SPIP compliant only)… Mais pourquoi compliquer ainsi ? Pourquoi ?

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom