Auto-Linkify Mots

sur le plugin linkify ou abbr ?

Linkify devrait constituer un meilleur point de départ.

Vous devrez modifier cette fonction :

4 « J'aime »

Je viens de réaliser une intégration avec l’API Google Sheets pour @jrgong afin que les données de linkify puissent être récupérées depuis un Google Sheet. Il faut encore quelques ajustements avant que je ne le lance sur Meta.

J’ai fait un fork du TC dans le processus. Je me demandais si un hook de données pouvait être fourni dans le TC pour basculer ou ajouter des sources de données depuis un autre plugin ou TC ? Je pourrais faire une PR, mais je n’ai pas encore vu ce type de motif auparavant. Peut-être quelque chose du genre des méthodes replaceDataSource ou addDataSource dans l’API du plugin.

3 « J'aime »

Ne serait-il pas plus simple d’ajouter simplement un paramètre de thème supplémentaire ?

Nouveau paramètre pour quoi ?

Pour l’intégration avec Google Sheets ? Je ne suis pas sûr d’avoir bien compris votre question, mais il me semble que ce serait plus simple si vous pouviez soumettre une PR et fusionner vos modifications en amont.

1 « J'aime »

L’intégration se fait sous forme de plugin, car nous devons nous authentifier pour récupérer les données depuis la feuille. De plus, les données doivent être mises en cache dans la base de données afin d’éviter des appels API pour chaque publication.

Si j’écris « safe-mode » ici dans le méta, il est automatiquement lié au sujet correspondant (notez que je n’ai hyperlié aucun mot, comme on peut le voir sur l’image, j’ai simplement écrit safe-mode).

Est-ce le résultat de ce thème (ajout de certains sujets et du mot correspondant) ou s’agit-il d’une nouvelle fonctionnalité magique qui n’a pas encore été annoncée ? :smiley:

3 « J'aime »

Oui, c’est le composant et une utilisation très pratique de celui-ci.

@codinghorror c’est une raison tout à fait légitime pour souhaiter que cela soit intégré au cœur du système. Si nous avions cette fonctionnalité dans le cœur, nous pourrions implémenter des liens retour pour des cas comme celui-ci. Le composant ne peut pas le faire, seuls les plugins le permettent.

9 « J'aime »

C’est très bien tant que cela se trouve dans la zone des mots surveillés, où cela devrait être.

1 « J'aime »

J’utilise linkify pour transformer les URL en liens d’affiliation, et je viens de remarquer qu’il transforme aussi les adresses e-mail des utilisateurs.

Exemple : Si quelqu’un a une adresse e-mail comme helen@amazon.com et que j’ai un lien d’affiliation linkify avec Amazon (par exemple : amazon.com/affiliate35)

Il transforme l’e-mail de la manière suivante : helen@amazon.com/affiliate35, et les e-mails ne sont pas reçus.

Si quelqu’un a une idée pour exclure les adresses e-mail des utilisateurs grâce aux options “excluded tags” et “excluded classes”.

Merci

2 « J'aime »

Voici une idée qui pourrait être très utile et facile à mettre en œuvre :

Et si on ajoutait un troisième paramètre à chaque ligne pour une classe CSS personnalisée ?
De cette façon, on pourrait modifier l’apparence de chaque lien individuellement.

Dans notre cas particulier, nous souhaitons avoir des styles différents pour :

  • les liens vers des produits et même les catégories de produits → liens d’affiliation vers des boutiques partenaires
  • les termes techniques → entrée de glossaire
  • les pages internes → table des matières, FAQ, guide pour débutants, etc.

Auparavant, nous installions simplement une deuxième instance du composant linkify et ajustions la classe CSS dans le composant. Cette méthode n’est pas sécurisée lors des mises à jour et doit être modifiée manuellement à chaque mise à jour.

De plus, nous utilisons un fork personnalisé avec un Google Sheet pour gérer les entrées (félicitations à @fzngagan et l’équipe thepavillion ;))

2 « J'aime »

Salut @jrgong, nous sommes en discussion et prévoyons de lancer le plugin au public avec des instructions.

2 « J'aime »

Salut les gars,

comment le composant de thème gère-t-il les correspondances regex quelque peu similaires ou qui se chevauchent ?

Dans mon cas spécifique, j’ai les entrées suivantes :

/super.?skunk/gi,https://link1.com
/skunk(?:(?: #?|#)?1)?/gi,https://link2.com

Pour le terme super skunk, le résultat actuel est : Super Skunk
Le résultat souhaité est : Super Skunk

Comment puis-je y parvenir ?

Vous pouvez essayer de modifier l’ordre des expressions rationnelles dans les paramètres du thème.

le 23 août 2020 à 19 h 06, l’expéditeur jrgong via Discourse Meta <meta@discoursemail.com> a écrit :

1 « J'aime »

Ce composant de thème ne fonctionne que pour une liste d’associations statiques entre des mots et une URL, telles que définies dans un tableur Google ou via le panneau d’administration. Et s’il existait un modèle de mots permettant de se connecter à une URL à l’aide de JavaScript ? Par exemple, « Name1 » serait connecté à « url/1.jpg », où l’association entre « Name1 » et « 1 » serait toujours la même, mais définie via une API ?

Je ne suis pas sûr de ce que vous voulez dire, mais le composant de thème est entièrement écrit en JS, vous êtes donc libre de le modifier selon vos besoins.

2 « J'aime »

Peux-tu partager ce plugin ?

1 « J'aime »
1 « J'aime »

Notre site dispose d’une fonctionnalité similaire créée par un autre administrateur.

Le site est dédié au langage de programmation SWI-Prolog et, dans nos publications, nous faisons régulièrement référence aux prédicats (équivalents aux méthodes dans les langages impératifs). Les prédicats sont distingués par leur nombre de paramètres, qui est un chiffre. Ainsi, nous saisissons régulièrement append/2, append/3, append/2,3, etc. Avant l’ajout de ce plugin personnalisé, nous passions un temps mesurable à insérer manuellement les liens vers la documentation, par exemple append/2 append/3.
Lorsqu’un nom de prédicat et son arité sont combinés, on parle d’indicateur de prédicat.

Avec ce plugin, il nous suffit désormais de saisir l’indicateur de prédicat et le lien est ajouté automatiquement.

Notre site est ouvert et dispose d’une page de test qui démontre cette fonctionnalité.

Voir : Publication pour tester les thèmes et plugins de composants installés
( Auto linkify Prolog predicates)

Le plugin est disponible sur GitHub, mais il a nécessité quelques modifications sur le serveur de documentation pour fonctionner.

Voir : jamesnvc/ discourse-linkify-prolog-predicates :slightly_smiling_face:

Je vous prie de ne pas me poser de questions à ce sujet, car je sais seulement que cela fonctionne. Oui, je pourrais comprendre comment cela marche si nécessaire, mais cela me prendrait quelques heures que je n’ai pas. :frowning_face:

2 « J'aime »