« Aide:Gadget-CreerNouveauMot-ancien/Comment ajouter une langue » : différence entre les versions

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.
Contenu supprimé Contenu ajouté
Ligne 52 : Ligne 52 :
===Tester la sous-page de langue avant de faire des bêtises===
===Tester la sous-page de langue avant de faire des bêtises===
Si vous êtes admin, vous pouvez créer la page directement à sa place définitive dans l'espace <tt>Mediawiki:</tt>, mais en fait vous devriez faire comme ceux qui ne le sont pas, et qui peuvent néanmoins créer, tester, et utiliser de nouvelles sous-pages :
Si vous êtes admin, vous pouvez créer la page directement à sa place définitive dans l'espace <tt>Mediawiki:</tt>, mais en fait vous devriez faire comme ceux qui ne le sont pas, et qui peuvent néanmoins créer, tester, et utiliser de nouvelles sous-pages :
*cochez le gadget dans vos préférences, bien sûr {{small|avez-vous branché la prise ?}},
*cochez le gadget dans vos préférences, bien sûr {{small|avez-vous branché la prise ?{{clin}}}},
*créez la page dans votre espace perso, par exemple <code>Utilisateur:Exemple/Gadget-CreerNouveauMot.js/''code-langue''.js</code>,
*créez la page dans votre espace perso, par exemple <code>Utilisateur:Exemple/Gadget-CreerNouveauMot.js/''code-langue''.js</code>,
*ajoutez à votre <tt>common.js</tt> le code <code>importScript("Utilisateur:Exemple/Gadget-CreerNouveauMot.js/''code-langue''.js");</code>
*ajoutez à votre <tt>common.js</tt> le code <code>importScript("Utilisateur:Exemple/Gadget-CreerNouveauMot.js/''code-langue''.js");</code>

Version du 13 mai 2013 à 17:02

Le gadget Gadget-CreerNouveauMot est un code javascript, activable par tout utilisateur (enregistré) dans ses préférences, qui permet, lors de l’édition d’une page, d’ajouter en quelques clics un patron d’article dans la page en cours d’édition.

Mais au fait, comment y ajouter une langue ?

Cahier des charges

Gadget-CreerNouveauMot fonctionne pour toutes les langues. Mais un petit nombre d'entre elles bénéficient du support complet par le gadget, c'est-à-dire :

  • une barre des caractères API adaptée à la langue,
  • une interface proposant seulement et exactement les types de mots qui existent dans la langue,
    • une adaptation dynamique des menus pour ne proposer que ce qui existe,
    • une adaptation dynamique des menus pour essayer de proposer les options les plus probables,
  • une génération de wikicode adaptée à la langue,
    • création de la structure des articles avec le code de langue partout où il faut,
    • modèles d'ébauche insérés partout où l'utilisateur n'a pas rempli la case,
    • ajout automatique des modèles de flexion quand c'est possible,

Comment ajouter une langue

Le code principal du gadget est dans MediaWiki:Gadget-CreerNouveauMot.js. Le code spécifique à une langue est dans la sous-page MediaWiki:Gadget-CreerNouveauMot.js/code-langue.js.

Pour créer une nouvelle langue, il faut donc créer une nouvelle sous-page, puis la lier au code principal.

Contenu de la sous-page de langue

Elle contient les fonctions "publiques" (càd utilisées par le module principal) suivantes, qui par définition doivent être personnalisées :

  • CrNoMo_TitreHtml_code-langue() (titre de la boite de dialogue)
  • CrNoMo_BarreAPI_code-langue() (barre API de la boite de dialogue)
  • CrNoMo_DialogHtml_code-langue() (partie spécifique de la boite de dialogue)
  • CrNoMo_Type_code-langue() (gestion dynamique de la boite de dialogue)
  • CrNoMo_Patron_code-langue() (génération de la partie spécifique du patron)

Et qu'est-ce qu'il faut faire ?

Le plus simple est de copier-coller la page d'une des langues existantes, et de personnaliser les cinq fonctions qu'elle contient.

La première chose à faire après le copier-coller est bien évidemment de remplacer code-langue partout où il apparait :

  • dans les déclarations des fonctions,
  • dans les évènements html (onchange, onclick, etc.).

TitreHtml()

Retourne le code html pour le texte de la barre de titre de la boite de dialogue.

Remplacez juste le nom de la langue impossible de faire ça automatiquement sans ajouter de pénibles requêtes aux serveurs.

BarreAPI()

Retourne le code html pour le texte de la barre de caractères API de la boite de dialogue.

Remplacez par la liste des caractères API pertinents pour la langue (pensez que c'est aussi un guide pour l'utilisateur, alors n'y mettez que le nécessaire pour la phonologie standard).

Utilisez la fonction CrNoMo_BarCharAPI(lc), qui est dans le module principal, et qui crée les liens adéquats.

DialogHtm()

Type()

Patron()

Tester la sous-page de langue avant de faire des bêtises

Si vous êtes admin, vous pouvez créer la page directement à sa place définitive dans l'espace Mediawiki:, mais en fait vous devriez faire comme ceux qui ne le sont pas, et qui peuvent néanmoins créer, tester, et utiliser de nouvelles sous-pages :

  • cochez le gadget dans vos préférences, bien sûr avez-vous branché la prise ?Clin d’œil,
  • créez la page dans votre espace perso, par exemple Utilisateur:Exemple/Gadget-CreerNouveauMot.js/code-langue.js,
  • ajoutez à votre common.js le code importScript("Utilisateur:Exemple/Gadget-CreerNouveauMot.js/code-langue.js");

Désormais, vous disposez de la nouvelle langue, et vous pouvez faire toutes les modifications que vous voulez au code javascript sans gêner les autres utilisateurs. ceci est applicable à toutes les sous-pages existantes, puisque votre version est prioritaire, juste pour vous

Intégrer la sous-page de langue au gadget

Une fois que vous êtes content du code que vous avez écrit dans votre sous-page, demandez à un admin de faire les deux choses suivantes (afin que tout le monde puisse profiter de vos améliorations) :

  • déplacer votre sous-page Utilisateur:Exemple/Gadget-CreerNouveauMot.js/code-langue.js vers la même dans l'espace Mediawiki: ou remplacer l'ancienne version, si elle existait déjà,
  • modifier MediaWiki:Gadget-CreerNouveauMot.js en y ajoutant importScript("MediaWiki:Gadget-CreerNouveauMot.js/code-langue.js"); si ce n'était déjà fait

Voilou, c'est fit ! Tout le monde peut en profiter !Sourire