Aller au contenu

« Modèle:CopierSyntaxe » : différence entre les versions

De Wikiquestia
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 4 : Ligne 4 :
   <pre class="syntax-to-copy">{{{1}}}</pre>
   <pre class="syntax-to-copy">{{{1}}}</pre>
</div>
</div>
<script>
(function () {
  if (window.__copySyntaxInit) return;
  window.__copySyntaxInit = true;
  document.addEventListener('click', function (e) {
    if (!e.target.classList.contains('copy-syntax-btn')) return;
    var wrapper = e.target.closest('.syntax-copy-wrapper');
    if (!wrapper) return;
    var pre = wrapper.querySelector('.syntax-to-copy');
    if (!pre) return;
    var text = pre.innerText;
    if (navigator.clipboard && navigator.clipboard.writeText) {
      navigator.clipboard.writeText(text).then(function () {
        var original = e.target.textContent;
        e.target.textContent = '✔ Copié';
        setTimeout(function () {
          e.target.textContent = original;
        }, 1500);
      });
    }
  });
})();
</script>
</includeonly>
</includeonly>


<noinclude>
<noinclude>
<div class="documentation">
<div class="documentation">
{{Sous-page de documentation}}


== Utilisation ==
== Utilisation ==
Ce modèle ajoute un bouton permettant de copier **exactement** une syntaxe
Ce modèle affiche un bouton permettant de copier **exactement** une syntaxe
(retours à la ligne, indentation, balises `<sup>`, etc.).
(retours à la ligne, indentation, balises `<sup>`, etc.).
---


== Syntaxe ==
== Syntaxe ==
Ligne 51 : Ligne 21 :
</pre>
</pre>


---
== Exemple fonctionnel ==
 
== Exemple fonctionnel (test réel) ==
⚠️ Ceci est **un appel réel du modèle**, pas du code affiché.
 
{{CopierSyntaxe|
{{CopierSyntaxe|
{{Infobox V3/Organisation
{{Infobox V3/Organisation
| Charte = organisation
| Theme  = clair
| Titre  = Ordre des Veilleurs
  | Fondation = 18/13/480<sup>XII</sup>
  | Fondation = 18/13/480<sup>XII</sup>
  | Type = Ordre militaro-religieux
  | Type = Ordre militaro-religieux
| Effectif = ~3 500 membres
}}
}}
}}
}}
👉 Clique sur le bouton puis colle ailleurs : 
la mise en page est **strictement conservée**.
---
== Notes techniques ==
* JS injecté localement (pas de `Common.js`)
* Protection anti double chargement
* Fonctionne avec plusieurs boutons par page
</div>
</div>
</noinclude>
</noinclude>

Version du 16 janvier 2026 à 12:59


Note : Ceci est une page de documentation pour un modèle.

Utilisation

Ce modèle affiche un bouton permettant de copier **exactement** une syntaxe (retours à la ligne, indentation, balises ``, etc.).

Syntaxe

{{CopierSyntaxe|
contenu à copier
}}

Exemple fonctionnel

 <button type="button" class="copy-syntax-btn">📋 Copier la syntaxe</button>
{{{1}}}