Composant de thème Quick Quote

:information_source: Résumé En bref : cela modifie le comportement des boutons « Répondre au message » (et non « Répondre au sujet ») pour citer automatiquement un message en un seul clic.
:hammer_and_wrench: Lien du dépôt GitHub - merefield/discourse-quick-quote: A Theme component to change the behaviour of the Post Reply buttons to quote a Post automatically in a single click. · GitHub
:open_book: Guide d’installation Installing a theme or theme component
:heart: Sponsoring Veuillez envisager de devenir un sponsor régulier de mon travail open source à un niveau adapté aux ressources et aux besoins de votre organisation, afin de garantir que ce composant bénéficie de la maintenance qu’il mérite et continue de fonctionner sur votre site à l’avenir.

Vous aimez ce composant de thème ? Veuillez lui mettre une :star: sur GitHub

Ce qu’il fait

En bref : cela modifie le comportement des boutons « Répondre au message » (et non « Répondre au sujet ») pour citer automatiquement un message en un seul clic.

Plusieurs paramètres permettent d’affiner ce qui est cité et quand. Vous pouvez même spécifier l’imbrication des citations pour retrouver cette ambiance « ancienne école ».

Comme la citation automatique est insérée dans le composeur, vous pouvez la modifier manuellement par la suite si vous le souhaitez (mais cela va à l’encontre du côté « rapide » :snail:).

Cela ne modifie pas le comportement du bouton « Répondre au sujet » en bas de page, ni celui de l’outil de citation.

Pourquoi

  • Certains ont estimé que l’action de citer prenait trop de clics dans l’installation de base. C’est un problème encore plus présent sur les appareils tactiles.

  • La « citation automatique » est particulièrement utile lorsque la réponse concerne un message situé bien plus haut dans le fil. Ce plugin compte la distance par rapport au message cité et insère automatiquement une citation si cette distance est suffisante. Cela aide les utilisateurs à comprendre le contexte plus rapidement.

  • Il fait revenir les « citations imbriquées » ! (désactivé par défaut) Ce composant peut particulièrement séduire ceux qui sont habitués à certaines plateformes de forums « anciennes école » :space_invader: C’est une question de goût : si vous aimez voir des citations imbriquées, vous pouvez désormais le faire, mais soyez conscient des conséquences en termes d’espace !

Vous n’en avez pas besoin si

Vous êtes à 100 % satisfait du comportement par défaut des réponses aux messages d’un sujet. C’est mon cas, mais il est toujours bon d’avoir des options, non ?

Paramètres

quick_quote_post_location_threshold: « Nombre de messages en arrière avant d’activer la citation rapide. »

Contrôle la distance en arrière d’un message avant que la citation automatique ne soit appliquée. Évite de citer inutilement les messages récents.

quick_quote_remove_links: « Supprimer tous les liens (y compris les images) des citations »

Nettoie le contenu et améliore l’utilisation de l’espace.

quick_quote_remove_prior_quotes: « Supprimer toutes les citations précédentes (imbriquées) »

Activé par défaut. Désactivez ce paramètre pour une expérience imbriquée « ancienne école » ultime. (Désolé Jeff ! :wink: )

quick_quote_remove_contiguous_new_lines: « Supprimer les sauts de ligne inutiles »

Les sauts de ligne sont surévalués.

quick_quote_character_limit: « Limite de caractères pour la citation (utilise les x derniers caractères si la longueur totale est supérieure) »

Les extraits sont assez basiques :slight_smile: Revenez à l’outil de citation si vous avez besoin d’une citation plus ciblée (qui n’est pas écrasée par le plugin).

Limitations connues

Le composant de thème est assez simple dans la manière dont il prépare une citation. Certains paramètres fonctionnent mieux ensemble que d’autres, et c’est à l’administrateur de déterminer ce qui lui convient. Une certaine complexité est évitée, par exemple il y a une limite de caractères pour les extraits qui peut couper les mots en deux. La mise en forme est simplifiée car les balises sont supprimées pour éviter le risque de tronquer une balise et de corrompre le contenu — là encore, pour préserver la simplicité. Le traitement des citations repose largement sur des expressions régulières, qui ne sont pas toutes infaillibles, mais fonctionnent « suffisamment bien ». Celles-ci peuvent être affinées au fil de la vie du composant de thème.

Cela a récemment été移植é depuis mon plugin identique, mais des bugs ont pu apparaître lors de ce processus. Faites-le moi savoir si vous en rencontrez.

Mon sponsor et l’inspiration pour ce composant

Merci à @Merlls_Rizzini d’avoir sponsorisé ce travail. Les fonctionnalités sont le fruit de nos deux cerveaux et sont partiellement inspirées de ce message de @eesty.

NB : Cela était basé sur mon plugin Fast Quote, mais a été converti en composant de thème pour donner accès à plus de gestionnaires de site hébergés par des tiers. @sam a suggéré cette conversion car il n’y avait pas de composant back-end, et @sully m’a donné le coup de pouce final pour effectuer ce transfert après avoir créé sa propre version en thème.

Tous les retours sont les bienvenus.

38 « J'aime »

Si je n’avais pas lu cela trop vite, j’aurais perdu moins de temps à essayer de comprendre l’intérêt,

J’aime bien :+1:

3 « J'aime »

Ce serait cool si on pouvait l’utiliser par catégorie. J’aimerais beaucoup l’avoir dans notre catégorie AMA, mais sinon, ce serait un peu brouillon.

3 « J'aime »

Un commit Git récent sur topic.js semble avoir cassé ce composant de thème :

Quote.build() n’existe plus ; il semble qu’ils importent et utilisent à la place la fonction buildQuote(). Un simple remplacement n’a pas fonctionné ; je vais devoir y réfléchir un peu plus.

2 « J'aime »

Mon erreur ! Le plugin Quick Quote ne figurait pas sur la liste all-the-plugins, c’est pourquoi je l’ai manqué en cherchant des régressions. Je vais l’ajouter et j’ai ouvert une PR avec une correction pour le plugin :

(ainsi qu’une petite correction pour les paramètres : FIX: Setting descriptions were swapped by cvx · Pull Request #2 · merefield/discourse-quick-quote · GitHub)

5 « J'aime »

Super, merci Jarek (et merci d’avoir signalé le problème @sully !) ! C’est fusionné ! (et merci pour la correction du bug !)

1 « J'aime »

J’utilise ce thème, j’ai effectué la mise à jour hier et je reçois déjà des plaintes aujourd’hui.

En créant un message pour répondre et expliquer, j’ai constaté que si je réponds à un message puis que je monte à un autre et que je souhaite y répondre entièrement, je ne peux pas : la réponse reste attachée au message avec lequel j’ai commencé.

Auparavant, cela basculait correctement. Le citation rapide fonctionne toujours, cependant.

Pour bien comprendre, pourriez-vous détailler un peu plus… pouvez-vous l’expliquer étape par étape et indiquer où, selon vous, le problème se situe ?

1 « J'aime »

Oui, c’est en cours de discussion, et l’impossibilité de répondre plus de trois messages en amont risque de devenir l’un de ces problèmes récurrents qu’il faudra expliquer encore et encore.

La citation rapide est excellente, mais peut-on rétablir la fonction de réponse ?

Je ne vous suis toujours pas. Pourriez-vous s’il vous plaît entrer dans plus de détails et fournir plus d’étapes ?

J’ai retesté le composant localement et il semble se comporter correctement ?

1 « J'aime »

Pas de problème, et peut-être que je mal interprète la fonction ou qu’il y a un autre oubli.

Mais pour l’instant, si je remonte dans un fil de discussion de quatre messages, le bouton de réponse est désactivé.

Cela n’a été mentionné qu’aujourd’hui, alors que j’ai effectué la mise à jour hier.

Je pense donc que cela y est lié ; peut-être qu’un paramètre est en cause ?

Pouvez-vous me montrer vos paramètres de thème ?

Pouvez-vous également confirmer que vous utilisez la dernière version de Discourse et la dernière version du composant de thème ?

De plus, pourriez-vous s’il vous plaît me dire si vous voyez des erreurs JavaScript dans la console ?

1 « J'aime »

Dans un sujet au hasard

image

Ce site n’affiche pas la version comme mon installation auto-hébergée.

1 « J'aime »

Merci.

OK, j’ai configuré mes paramètres de la même manière et je ne parviens pas à reproduire le problème. Le bouton Répondre, situé quatre publications en arrière, fonctionne correctement.

Cependant, c’est très suspect compte tenu de vos paramètres. (Le « 3 » attire particulièrement l’attention !)

Je suis sur la dernière version de Discourse et de TC. Assurez-vous que les deux sont entièrement mis à jour.

1 « J'aime »

La vue source indique Discourse 2.5.0.beta2

et TC signifie composant de thème ?

Le fait de changer 3 en 5 me permet de répondre jusqu’au 5ᵉ message.

Donc, dois-je mettre 9999 et est-ce que cela affecte d’autres fonctions ?

OK, j’ai donc reproduit votre problème sur un site de production…

v2.5.0.beta2 +459

Les modifications soumises par Jarek visaient spécifiquement la dernière version de Discourse.

Est-il possible que vous soyez sur une version de Discourse antérieure à ses modifications ? Si c’est le cas, cela ne fonctionnera pas avec la dernière version de TC. Vous devez mettre à jour les deux ou aucun des deux.

De plus, je viens de mettre à jour ce site (vers la dernière version +495) et tout fonctionne à nouveau.

Donc oui, vous devez mettre à jour votre Discourse au-delà de son commit.

1 « J'aime »

Pouvez-vous me fournir du CSS que je pourrais utiliser pour revenir en arrière ?

Ensuite, je le supprimerai une fois mon site mis à jour ?

Merci :slightly_smiling_face:

ou

@team, mon site est-il prêt pour une mise à jour bientôt ?

Ah, bonne idée, sauf que je ne pense pas qu’on puisse accéder au contenu du dossier JavaScript depuis l’interface (quelqu’un peut-il me corriger si je me trompe !).

Malheureusement, je ne pense pas non plus qu’on puisse installer un commit spécifique d’un composant de thème (idem !).

Donc, ma suggestion est : oui, remplacez ce 3 par 9999 et attendez que votre Discourse soit plus à jour.

1 « J'aime »

Pas de problème, c’est noté. Merci pour votre coopération, c’est très apprécié :+1:

1 « J'aime »

Salut à tous vous, Discoureurs à l’aise avec le Quick Quoting ! J’ai publié un correctif pour que Quick Quote fonctionne à nouveau avec la dernière version de Discourse.

Je suis la branche tests-passed, donc ne mettez pas à jour si vous n’êtes pas sur cette branche.

3 « J'aime »