Résumé de section

  • Moodle peut en principe prendre en charge plusieurs langues. Pour cela, on utilise ce qu'on appelle des « packs linguistiques ».

    Ces packs linguistiques concernent toutefois exclusivement les textes qui font partie intégrante de la plateforme d'apprentissage, par exemple les libellés des menus ou les textes automatiques. Leur affichage dépend de plusieurs paramètres. Je vais essayer d'expliquer tout cela dans ce cours afin que tous les utilisateurs soient en mesure de créer des contributions, des contenus ou même des cours entiers en plusieurs langues : 

    • 1.1 Packs linguistiques disponibles

      Un pack linguistique contient tous les textes utilisés par défaut dans un Moodle « vide » : Cela comprend par exemple les entrées de menu « Accueil » et « Mes cours », ou le nom automatique des boutons, par exemple « Ajouter une section », etc.

       Actuellement, trois langues sont disponibles : allemand, anglais et français.

       Dans le pack linguistique anglais, les exemples ci-dessus s'appellent "Home", "My Courses" et "Add section", en français « Accueil », « Mes cours » et « Ajouter une section » :

      Primäre Navigation der Moodle-Oberfläche in drei Sprachen
      Navigation principale de l'interface en trois langues

      Sekundäre Navigation der Moodle-Oberfläche in drei Sprachen
      Navigation secondaire de l'interface en trois langues

      Beispielhafter Hinweis zur Kurssichtbarkeit in drei Sprachen
      Exemple d'indication de la visibilité des cours en trois langues
      Ces packs linguistiques ne peuvent bien sûr couvrir que les textes standard.
      Les textes générés par les utilisateurs ne sont (malheureusement) pas traduits automatiquement. Les sections 2 à 7 décrivent les possibilités correspondantes.
    • 1.2 Sélection de la langue de l’interface 

      Tous les utilisateurs peuvent changer la langue de l’interface Moodle. Selon que tu sois connecté(e) ou non, ça fonctionne un peu différemment.

      Non connecté(e) :
      Pour les visiteurs qui ne sont pas connectés, il y a en haut à droite dans l’en-tête un bouton qui permet de changer de langue. Sur mobile (à droite), il peut être affiché un peu différemment :

      Sprachumschalter im ausgeloggten Zustand
       sélecteur de langue dans l’en-tête 

      Connecté(e) :
      Après une connexion réussie, le choix de la langue se trouve dans le menu utilisateur :

      Sprache umschalten über das Benutzendenmenü
      Changer de langue via le menu utilisateur 

       Tu peux tester le résultat avec ce cours, car il est disponible en trois langues.

      Ce choix de langue s’applique à tous les textes pour lesquels plusieurs versions linguistiques ont été créées. S’il n’existe pas de texte traduit dans la langue cible souhaitée, la langue par défaut (ici : allemand) est affichée.
    • 1.3 Paramètres de langue du profil utilisateur

      En plus du réglage de l’interface, il existe une préférence propre à l’utilisateur que tu peux définir dans tes paramètres : Sur https://moodle.thga.de/user/language.php ou via Menu utilisateur > Préférences > Langue préférée, tu peux définir une langue préférée.

      Profileinstellung zur bevorzugten Sprache
      Réglage du profil pour la langue préférée

      Si aucune langue n’est imposée (voir section 1.4), Moodle s’affiche dans la langue préférée. En bref : ta préférence personnelle remplace le réglage de l’interface de la section 1.2.

    • 1.4 Détection automatique de la langue

      Moodle essaie aussi de déduire la langue par défaut à partir des paramètres du navigateur. Tu connais peut-être cela sur des sites qui proposent une traduction automatique quand la langue d’affichage et les paramètres du navigateur ne correspondent pas.

      Cette fonction est un paramètre global de Moodle qui ne peut être géré que par les administrateurs. Mais comme elle joue un rôle dans la hiérarchie des réglages de langue, elle est mentionnée ici par souci d’exhaustivité.

    • 1.5 Paramètres de langue du cours

      Bien sûr, les enseignants doivent pouvoir définir eux-mêmes la langue de leurs cours. Pour cela, il existe un paramètre de cours que les personnes ayant des droits de modification trouvent sous Paramètres > Apparence > Imposer la langue.

      Einstellung zur Kurssprache
      Réglage de la langue du cours

      Une langue imposée via le paramètre du cours remplace la préférence utilisateur (section 1.3) et le réglage de l’interface (section 1.2).

    • 1.6 Relation entre les différents réglages de langue

      1. Par défaut, Moodle s’affiche en allemand.
      2. Le réglage de la langue de l’interface (section 1.2) est disponible pour chaque visiteur—avec ou sans compte, connecté(e) ou non—ce qui permet en général d’afficher le site dans une langue différente de la langue par défaut.
        S’il n’y a pas de réglage au niveau du cours, les cours s’affichent aussi dans la langue choisie, à condition que les textes existent dans cette langue.
      3. La préférence utilisateur (section 1.3) est en quelque sorte une version durable du réglage de l’interface et remplace la langue par défaut (ici : DE). Ainsi, l’interface Moodle s’affiche toujours dans la langue préférée de l’utilisateur. Comme ce réglage est propre à l’utilisateur, il ne s’applique qu’aux utilisateurs connectés.
        Ce réglage s’applique aussi en général à tous les cours consultés, tant que des textes existent dans la langue cible et qu’aucune langue de cours n’est imposée.
      4. À ce stade—si aucune langue d’interface n’a été choisie manuellement et qu’aucune préférence n’a été définie—Moodle essaie de déterminer une langue « adaptée » à partir des paramètres du navigateur.
      5. Une langue de cours définie par l’enseignant, par exemple, n’est pas affectée par les autres possibilités. Ce serait un peu absurde qu’un cours d’anglais, qui doit être mené exclusivement en anglais pour des raisons didactiques, soit ensuite affiché en allemand ou en français à cause d’une préférence utilisateur ou d’un réglage d’interface.

      L’illustration suivante essaie de rendre cette relation plus claire:

      Schéma montrant quand quel réglage de langue s’applique
      Schéma montrant quand quel réglage de langue s’applique (illustration basée sur ce modèle)
  • Pour proposer le contenu de son cours en plusieurs langues, il faut faire plusieurs choses en plus de la traduction elle-même :

    1. un filtre de cours spécifique doit être activé (en général, il l’est par défaut), et
    2. les différentes versions linguistiques du texte doivent être enregistrées en conséquence.

    • 2.1 Activer le filtre

       Le filtre est indispensable pour le multilinguisme dans les cours Moodle. Il en existe deux :
      un ancien appelé « Contenu multilingue », nécessaire pour la variante HTML (voir section 2.3), et un autre appelé « Contenu multilingue v2 », requis pour les plugins d’éditeur (voir section 2.2). Les deux sont activés par défaut.

      Si vous avez les droits de modification, vous trouverez ces filtres sous Plus > Filtres > Contenu multilingue ou Contenu multilingue (v2) :

      Filter im "Mehr"-Menü
      Les filtres dans le menu « Plus »
      Der Filter muss aktiviert sein
      Le filtre doit être activé
       

    • 2.2 Plugins d’éditeur

      Une fois les filtres activés, les éditeurs disponibles proposent une fonction pour saisir du contenu multilingue. Les éditeurs Atto ...

      Multilang-Button (2.) in der zweiten Editorzeile des Editors "Atto". Ggf. muss diese erst eingeblendet werden (1.)
      Bouton multilangue (2) dans la deuxième ligne d’outils de l’éditeur « Atto ». Il faut éventuellement d’abord afficher cette ligne (1).

      ... et TinyMCE affichent alors un bouton correspondant :

      Multilang-Button im Editor "TinyMCE"
      Bouton multilangue dans l’éditeur « TinyMCE »

      À l’aide de ces boutons, on peut marquer des zones de texte pour les différentes langues :

      Sprachkennzeichnung im WYSIWYG-Editor
      Marquage des langues dans l’éditeur WYSIWYG

      Ces zones linguistiques peuvent être créées vides, en cliquant simplement sur le bouton puis en choisissant la langue souhaitée, ou bien être appliquées à un texte déjà existant. Dans ce cas, il faut sélectionner le texte au préalable ; après un clic sur une langue, le texte sélectionné est alors encadré par les marqueurs jaunes.

      Le filtre « comprend » le shortcode et l’indication de langue {m lang de | en | fr}, de sorte que

      • lors de l’utilisation du sélecteur de langue,
      • lorsqu’une préférence utilisateur est définie, ou
      • lorsqu’une langue de navigateur différente est détectée,

      la langue choisie / souhaitée est affichée et toutes les autres sont masquées.

    • 2.3 Mode HTML

      Une variante plus ancienne et un peu plus compliquée consiste à saisir directement les différents textes dans le code de la page.
      Cela nécessite toutefois des connaissances de base en HTML.

    • Au fond, Moodle n’est rien d’autre qu’un site web écrit en HTML (HyperText Markup Language, info). Il s’agit d’un langage de balisage, c’est-à-dire d’une façon de structurer des documents dans laquelle le contenu lui-même, mais aussi les propriétés, relations et formats, sont décrits dans un seul et même document.

      Exemple :

      <h3>&Uuml;berschrift</h3>
      <p>Dies ist der Text, mache Worte sind <strong>speziell formatiert</strong>.</p>

      Dans l’extrait HTML ci-dessus, on crée un élément de type titre (headline) de niveau hiérarchique 3 (= h3). Son début est marqué par une balise ouvrante (<h3>) et sa fin par la balise fermante correspondante (</h3>). Le contenu de l’élément est « Überschrift », les umlauts allemands pouvant, selon l’encodage du document, être écrits ici sous forme d’entité (ancienne notation) (Ü = &Uuml;). 

      Vient ensuite un paragraphe (<p>...</p>), dans lequel une autre chaîne de caractères est mise en gras (<strong>).

      Tous les sites web que vous voyez dans votre navigateur fonctionnent exactement comme cela. Votre navigateur a simplement la gentillesse de rendre le code HTML, c’est-à-dire de ne pas afficher le HTML brut, mais d’afficher les titres, paragraphes et textes en gras comme tels.

      Les éditeurs de Moodle fonctionnent toutefois en mode WYSIWYG, c’est-à-dire qu’ils essaient de générer en arrière-plan un HTML conforme à partir du texte saisi. Donc, si vous mettez un texte en forme comme liste à l’aide des boutons de l’éditeur, par exemple :

      • Élément de liste 1
      • Élément de liste 2
      • Élément de liste 3

      la liste s’affiche telle quelle dans la zone de saisie de l’éditeur. En arrière-plan, cependant, elle est enregistrée comme liste non ordonnée (<ul>...</ul>) avec plusieurs éléments de liste (<li>...</li>) :

      <ul>
         <li>Élément de liste 1</li>
         <li>Élément de liste 2</li>
         <li>Élément de liste 3</li>
      </ul>
    • Tous les éditeurs de texte disponibles peuvent être basculés en mode HTML : dans l’éditeur Atto, utilisez le bouton </> dans la ligne inférieure de la barre d’outils ; dans l’éditeur TinyMCE, passez par > Afficher > Code source.

      HTML-Button (2.) in der zweiten Editorzeile des Editors "Atto". Ggf. muss diese erst eingeblendet werden (1.)
      Bouton HTML (2) dans la deuxième ligne d’outils de l’éditeur « Atto ». Il faut éventuellement d’abord afficher cette ligne (1).

      HTML-Ansicht im TinyMCE-Editor
      Vue HTML dans l’éditeur « TinyMCE »

      Dans le mode HTML ainsi affiché, les différentes langues se notent comme suit : chaque langue doit être placée dans un élément <span> dans lequel on indique

      • que le filtre "multilang" doit être appliqué, et
      • dans quelle langue est rédigé le texte contenu dans l’élément.

      Un texte en anglais devra donc être écrit comme suit :

      <span class="multilang" lang="en">
      ... texte anglais ici
      </span>

      un texte en allemand comme suit :

      <span class="multilang" lang="de">
      ... texte allemand ici
      </span>

      et un texte en français, de manière correspondante :

      <span class="multilang" lang="fr">
      ... texte français ici
      </span>

      Le filtre « comprend » l’attribut class="multilang" et l’indication de langue (lang="de | en | fr"), de sorte que

      • lors de l’utilisation du sélecteur de langue,
      • lorsqu’une préférence utilisateur est définie, ou
      • lorsqu’une langue de navigateur différente est détectée,

      la langue choisie / souhaitée est affichée et toutes les autres sont masquées.

      Une méthode de travail pratique semble être la suivante :
      1. commencer par rédiger tout le texte (en mode source ou WYSIWYG),
      2. puis le copier et le recoller avec suffisamment d’espace (lignes vides) entre les versions,
      3. et n’insérer les balises <span> qu’à la fin, dans le code source.

      Ce n’est pas vraiment très convivial, mais ça fonctionne 😏

  • En plus des champs de texte modifiables avec l’éditeur, il existe bien sûr beaucoup d’autres textes. Par exemple, les titres de cours, les noms de sections et les noms d’activités sont saisis dans des champs de saisie sans éditeur. Là aussi, les deux méthodes de gestion du multilingue fonctionnent.

    Par exemple, ce cours s’appelle :

    17. {m lang de}Mehrsprachige Inhalte{m lang}{m lang en}Multilingual content{m lang}{m lang fr}Contenus multilingues{m lang}

    En alternative, on pourrait aussi utiliser l’« ancienne » technique et écrire :

    17. <span class="multilang" lang="de">Mehrsprachige Inhalte</span><span class="multilang" lang="en">Multilingual content</span><span class="multilang" lang="fr">Contenus multilingues</span>

    Mais cette variante est un peu moins pratique, et on risque davantage d’atteindre la limite de caractères des champs de saisie, tout simplement parce qu’elle est plus longue. La numérotation (ici : "17." + [espace]) peut d’ailleurs rester en dehors, puisqu’elle vaut pour toutes les langues.

    Le même principe fonctionne pour les sections ainsi que pour les noms des ressources ou des activités :

    Kursname mit Mehrsprachigkeits-Auszeichnung
    Le balisage multilingue fonctionne aussi pour les noms de cours ...
    Abschnittsbenennung mit Mehrsprachigkeits-Auszeichnung
    ... ainsi que pour les noms de sections ...
    Aktivitätsbenennung mit Mehrsprachigkeits-Auszeichnung
    ... et pour les noms des activités ou des ressources.

  • Si des illustrations contiennent du texte (par exemple des légendes ou des libellés), il faut enregistrer cette image en plusieurs versions si elle doit s’afficher différemment selon la langue. Là encore, le marquage via {m lang} ou <span class="multilang"> fonctionne :

    Abbildungen im Editor mit entspr. Sprachauszeichnungen
    Illustrations dans l’éditeur avec balisage linguistique correspondant
    Vous pouvez tester le résultat ici, par exemple avec le sélecteur de langue dans l’en-tête ou dans le menu utilisateur :

    Campusplan mit frz. Beschriftung

  • Pour contrôler l’affichage, par exemple, de documents disponibles en plusieurs langues, on peut utiliser les restrictions d’accès. Pour la plupart des éléments du cours, elles peuvent être configurées dans les paramètres correspondants :

    Konfiguration von Voraussetzungen
    Configuration des restrictions d’accès

    Dans le cours (quand le mode édition est activé), cela ressemble ensuite à ceci :

    Ansicht für Bearbeitungsberechtigte bei eingeschaltetem Bearbeitungsmodus
    Vue pour les personnes ayant des droits de modification lorsque le mode édition est activé

    Le réglage « sinon caché » (icône en forme d’œil barré) fait que les activités et ressources dont les restrictions ne sont pas remplies deviennent complètement invisibles. Vous pouvez le tester ici :

  • Les vidéos sont bien entendu prises en charge par Moodle, et lors de l’intégration de vidéos, il est aussi possible d’ajouter plusieurs pistes de sous-titres dans différentes langues. Les visiteuses et visiteurs peuvent alors choisir une langue de sous-titres à l’aide du bouton prévu à cet effet :

    Sprachauswahl für Video-Untertitel
    Choix de la langue des sous-titres vidéo

    Ici, vous pouvez tester le passage d’une piste de sous-titres à une autre.

      
      

    Pour cela, les sous-titres doivent être disponibles au format Web Video Text Tracks (WebVTT, extension de fichier *.vtt). Ils peuvent par exemple être créés automatiquement à l’aide d’outils de transcription, puis traduits si besoin. Le format ressemble à ceci :

    WEBVTT

    00:00:21.000 --> 00:00:24.000
    Hallo und herzlich willkommen zur Video-Anleitung

    00:00:24.000 --> 00:00:26.000
    Erste Schritte auf der Lernplattform,

    00:00:26.000 --> 00:00:28.000
    in der ich gerne ein Überblick über die Lernplattform

    00:00:28.000 --> 00:00:31.000
    der Technischen Hochschule Georg Agricola geben möchte.

    Tant que les timecodes, c’est-à-dire les repères temporels qui définissent à quel moment chaque sous-titre doit s’afficher, ne sont pas modifiés, il est assez simple de créer une autre version linguistique. La version anglaise correspondant à l’extrait allemand ci-dessus ressemblerait alors à ceci :

    WEBVTT

    00:00:21.000 --> 00:00:24.000
    Hello and welcome to the video tutorial

    00:00:24.000 --> 00:00:26.000
    "First Steps on the Learning Platform,"

    00:00:26.000 --> 00:00:28.000
    where I'd like to provide an overview of the

    00:00:28.000 --> 00:00:31.000
    learning platform of the Technical University Georg Agricola.

    Les fichiers *.vtt peuvent être créés très simplement dans un éditeur de texte. Si vous avez un fichier *.txt, il suffit de changer l’extension de *.txt en *.vtt.

    Les outils d’IA et les modèles de langage peuvent rendre de très bons services, aussi bien pour la transcription que pour la traduction sans modification des timecodes.
    1. Saisir directement les balises de langue :
      Si vous utilisez la variante WYSIWYG directement dans l’éditeur, les balises {m lang} ne doivent pas forcément être insérées avec le bouton ; vous pouvez aussi simplement les taper directement dans le champ de texte.
    2. Supprimer les espaces inutiles :
      Quand les balises {m lang} sont insérées avec le bouton correspondant, il peut y avoir des espaces avant et après, ce qui peut éventuellement influencer l’affichage. Ces espaces peuvent être supprimés sans affecter le fonctionnement du multilingue.

    Cette liste sera complétée au fur et à mesure que des questions pertinentes de la part des utilisateurs et utilisatrices apparaîtront. N’hésitez pas à me les envoyer (par e-mail, par exemple).
  • La plupart des textes utilisés ici ont été traduits automatiquement. Des erreurs ne peuvent donc être totalement exclues.