Appels de citation

Il pourrait y avoir une erreur ici, l’activation de ceci (avec l’original désactivé) a créé des problèmes pour les comptes sans accès administrateur. Je ne sais pas ce qui a exactement posé problème, mais certains sujets étaient masqués et la navigation Catégories/Tags était totalement inutilisable pour les comptes non autorisés (TL1).

J’attendrai la mise à jour d’Arkshine.

2 « J'aime »

Je vois ce qui suit lorsque j’ai mis à jour aujourd’hui

\[Avis Admin\] Le thème ‘Quote Callouts’ contient du code qui doit être mis à jour. (id:discourse.widgets-decommissioned) (en savoir plus)

1 « J'aime »

J’ai poussé un correctif, pouvez-vous mettre à jour le composant et essayer ? :folded_hands:

7 « J'aime »

Fonctionne bien jusqu’à présent !

2 « J'aime »

Je rencontre actuellement un problème, les blocs de citation ne peuvent plus être réduits/développés

Pourriez-vous coller ici un exemple reproductible ou un lien vers votre publication sur votre forum (n’hésitez pas à m’envoyer un message privé si vous préférez) ?

1 « J'aime »

Bien sûr, en bas de ce fil de discussion

Voici une mise à jour qui modernise le composant et apporte la prise en charge de l’éditeur de texte enrichi ! :rocket:
Elle nécessitera peut-être quelques ajustements ou pourrait présenter des cas limites imprévus, mais je pense que c’est un très bon début. :folded_hands:

En bref

Éditeur de texte enrichi

Parlons de l’éditeur de texte enrichi et de ce à quoi s’attendre !

Création de callouts :

Vous disposez de quatre façons d’insérer des callouts :

  • Raccourci clavier
  • Barre d’outils
  • Règles de saisie
    • /callout<type>
    • !!<type>
  • Prise en charge du collage
    Vidéo

Modification des callouts

Les commandes pour modifier un callout n’apparaissent que lorsque vous le sélectionnez au préalable.

  • Sélecteur de type
    En cliquant sur l’icône, un menu flottant apparaîtra.
  • Titre personnalisé
    Prend en charge le formatage en ligne et les emojis
  • Pliage
    Définissez les callouts comme étant réductibles. On y accède via le menu des options.
    Vidéo

Organisation des callouts

  • Commandes de déplacement

    • Ordinateur de bureau
      Il y a une poignée que vous saisissez pour faire glisser et déposer le callout.
    • Appareil tactile
      Vous déplacez les callouts vers le haut/bas ou les imbriquez dans des callouts adjacents. C’est désactivé par défaut pour éviter d’alourdir la vue, car ce n’est pas quelque chose que vous ferez souvent. Vous pouvez basculer cette option dans les paramètres.
    Vidéo

  • Navigation au clavier
    Cela facilite la navigation à l’intérieur et à l’extérieur des callouts imbriqués. Il pourrait nécessiter quelques ajustements futurs pour rendre le comportement cohérent dans cette version.

    • Au début du titre, le sélecteur de callout s’ouvrira automatiquement.
    • À l’intérieur du corps d’un callout sans paragraphe où se poser, il en créera un ; si vous quittez avec un contenu vide, le paragraphe est supprimé.
    • Entrée à l’intérieur du titre déplace le curseur dans le corps (et en crée un si nécessaire).
    Vidéo

  • Clic pour insérer

    • Dans les zones où il n’y a pas de paragraphe, vous pouvez cliquer à l’intérieur pour ouvrir un paragraphe.
    • Si vous préférez, vous pouvez également utiliser des boutons pour ouvrir un paragraphe à l’intérieur ou à l’extérieur d’un callout.
      Vidéo

Peut-être que plus tard, je vais chercher :

  • l’autocomplétion des règles de saisie
  • améliorer la couleur en utilisant du CSS moderne, pour assurer la cohérence et la visibilité, en particulier en mode sombre.
  • J’aimerais supprimer tous les paramètres et me concentrer sur la simplicité d’abord, avec une personnalisation avancée uniquement par CSS, mais il est trop tard pour cela :rofl:

Remerciements spéciaux à Moin pour ses retours.

Voilà. Faites-moi savoir ce que vous en pensez. Vos retours sont très appréciés !

7 « J'aime »

J’ai remarqué que vous avez conçu un effet tel que : si un certain type possède plusieurs alias, lors de la sélection du type dans l’éditeur de texte enrichi, chaque alias apparaît comme une option, et ils sont positionnés consécutivement.
C’est une belle conception, mais il semble qu’elle nécessite d’être étendue davantage : si aucun titre n’est défini, ils afficheront le type de panneau d’information (callout), de sorte que ces options consécutives partageant le même schéma de couleur final afficheront des noms et des titres différents ; cependant, si un titre est défini, ils afficheront et utiliseront le même titre dans la liste que lors de la création réelle d’une citation (Quote), ce qui est quelque peu déroutant.
Si cette extension est difficile à mettre en œuvre, je pense qu’une case à cocher pourrait être fournie pour empêcher l’ajout d’entrées supplémentaires dans la liste de sélection de type qui correspondent un-à-un aux alias lorsqu’un titre est défini. :slightly_smiling_face:

3 « J'aime »

Vous avez raison ! Merci pour le retour, c’est agréable de voir des gens utiliser le TC.
En fait, j’y ai pensé à un moment donné, mais j’ai complètement oublié de le corriger. :grinning_face_with_smiling_eyes:
Je vais travailler sur une correction pour filtrer correctement la liste lorsque le titre est défini.

2 « J'aime »

J’ai poussé une correction. Dites-moi ce que ça donne ! :+1:

3 « J'aime »

Je viens de tester la dernière version, et maintenant celles qui ont un titre n’en afficheront qu’une seule dans la liste de sélection de catégorie, quel que soit le nombre d’alias. :smiley:

3 « J'aime »

Je rencontre l’erreur suivante, uniquement lorsque j’utilise la traduction de * :

Capture d'écran d'une bannière rouge indiquant une erreur dans les encadrés de citation

Console JS :

client-error-handler.js:109 [THEME 6 'Quote Callouts'] TypeError: Cannot set properties of undefined (setting 'callout_sample')
    at new po (callouts.gjs:30:19)
    at callouts.gjs:265:23
    at eK (plugin-api.gjs:3582:10)
    at Object.initialize (callouts.gjs:264:5)
    at i.initialize (app.js:304:28)
    at index.js:375:19
    at e.each (index.js:183:7)
    at e.walk (index.js:112:10)
    at e.each (index.js:59:20)
    at e.topsort (index.js:65:10)
    at ij._runInitializer (index.js:388:11)
    at ij.runInstanceInitializers (index.js:373:10)
    at l._bootSync (instance.js:111:22)
    at ij.didBecomeReady (index.js:780:18)
    at invoke (index.js:262:14)
    at m.flush (index.js:180:11)
    at g.flush (index.js:334:19)
    at Y._end (index.js:762:32)
    at Y._boundAutorunEnd (index.js:499:12)
h	@	client-error-handler.js:109

Elle se produit à la dernière ligne de ce bloc de citation :

class QuoteCallouts {
  constructor(owner, api) {
    [...]
    window.I18n.translations[
      window.I18n.fallbackLocale || "en"
    ].js.composer.callout_sample = ``;
  • Définissez /u//preferences/interface « Langue de l’interface » sur « Allemand (Deutsch) »

L’erreur semble avoir été introduite lors de l’une des dernières mises à jour de Discourse entre 2026.3.0-latest et 2026.4.0-latest, mais je ne parviens pas à l’identifier plus précisément. Je suis actuellement sur la version 2026.4.0-latest 4b2c45376d et Quote Callout v0.0.1 9aa6548.

2 « J'aime »

Je pensais vraiment que ce genre de problème avait été résolu.
Le paramètre de langue du site est-il défini sur l’anglais par défaut (États-Unis), tandis que la langue de l’utilisateur est définie sur l’allemand, est-ce correct ?

1 « J'aime »

Oui, cela a résolu le problème. Merci ! <3

1 « J'aime »

Bonjour @Arkshine, merci pour ce super plugin !

Est-il possible d’utiliser l’appel d’attention sans titre du tout ou juste avec une icône ?

2 « J'aime »

Je ne pense pas que vous puissiez le faire pour le moment, mais je vais trouver un moyen de le faire dans la prochaine mise à jour !

En attendant, il y a une astuce : insérez un espace à largeur nulle et cela devrait fonctionner :blush:. Vous pouvez le copier depuis cette page, par exemple : ​ U+200B ZERO WIDTH SPACE - Unicode Explorer


Faites-moi savoir si cela fonctionne pour vous.

4 « J'aime »

Je pense que ça a fonctionné ! Merci ! :heart_eyes:

2 « J'aime »

Salut, @Arkshine :waving_hand:

Est-il possible de conserver la couleur d’appel d’origine lors de l’utilisation de la fonctionnalité Masquer les détails ?

En mode éditeur de message, les couleurs d’origine sont enregistrées, mais l’arrière-plan devient gris après avoir enregistré les modifications :

2 « J'aime »

Merci pour le rapport !
J’ai appliqué une correction. Peux-tu mettre à jour le composant et vérifier si le problème se reproduit ?

2 « J'aime »