Idea: Paste links in the editor

Hey guys. If any of you uses WordPress, will know what I’m talking about. For others… I’ll explain.

So, in the WordPress editor, if you select a text and you press CTRL+V, it will do one of the following:

  • if the clipboard content is a valid url, it will insert the link with the selected text as anchor;
  • if the clipboard content is not a valid url, it will just overwrite the selected text.

I think it would be nice to just skip few steps (CTRL+K + CTRL+V + enter).

Any chance that this would be implemented on Discourse? :slight_smile:

(also, what’s up with the undo? it’s simply broken if you use any toolbar/shortcut)

4 « J'aime »

Er… what? That sounds confusing. I’m confused! What would that do?

Alright, so I’ve made a short video:

Obviously enough, this should insert markdown instead.

5 « J'aime »

C’est quelque chose que j’apprécie vraiment dans WordPress, et que je regrette quotidiennement dans Discourse. Cela vous permet d’écrire une grande quantité de texte, puis d’ajouter des hyperliens très rapidement et naturellement.

2 « J'aime »

Je ne suis pas sûr, qu’en penses-tu @eviltrout — cela pourrait être inattendu. Et nous avons déjà un bouton d’insertion de lien hypertexte dans la barre d’outils.

1 « J'aime »

Le processus avec le bouton de lien est le suivant :

  1. Sélectionnez le texte
  2. Cliquez sur le bouton (ou appuyez sur ctrl+k)
  3. Collez le lien
  4. Cliquez sur OK (ou appuyez sur enter)

Avec la fonctionnalité que j’ai proposée, vous réduisez de moitié l’ensemble du processus, car vous sélectionnez simplement puis collez. Si aucun texte n’est sélectionné, le collage fonctionnera comme d’habitude (c’est-à-dire qu’il insérera simplement le texte du presse-papiers).

3 « J'aime »

Dans tous les éditeurs que je connais, si vous sélectionnez du texte et collez depuis le presse-papiers, ce texte est écrasé par ce qui se trouve dans le presse-papiers. Ce que vous proposez supprimerait la fonction existante de remplacement du texte par ce qui est dans le presse-papiers.

  • Ne sélectionner aucun texte et coller depuis le presse-papiers est une simple action de COLLAGE.
  • Sélectionner du texte et coller depuis le presse-papiers est une action de REMPLACEMENT DU TEXTE par ce qui se trouve dans le presse-papiers.

Insérer un lien hypertexte – en utilisant le bouton déjà fourni – est le moyen le plus simple d’insérer un lien dans n’importe quel texte sélectionné en choisissant d’abord le texte.
Insérer un lien hypertexte sans texte consiste à cliquer sur le bouton, coller le lien, cliquer sur OK ou appuyer sur Entrée, ou simplement taper ou coller un lien dans un espace vide.

Je ne vois pas pourquoi vous voudriez transformer la fonction universelle de Sélection et remplacement du texte en ce que fait déjà le bouton existant, sans perdre cette fonction commune à tous les éditeurs de texte. Que se passerait-il si vous vouliez remplacer du texte par un autre texte si vous perdez la fonction de Sélection et remplacement ?

Dans WordPress, qu’est-ce qui détermine si le texte est remplacé par ce qui se trouve dans le presse-papiers ou si un lien hypertexte est inséré sans écraser le texte existant, en utilisant un simple sélection et collage comme vous le suggérez ? Certainement, un simple surlignage de texte et un clic sur coller ne peuvent pas accomplir les deux fonctions ni en réaliser une sans perdre l’autre.

Ou aurais-je manqué quelque chose ?

Comme c’est déjà le cas dans Discourse, taper ou coller une URL la transforme automatiquement en un lien cliquable, sans avoir à utiliser la fonction Insérer un lien. Ensuite, vous avez la fonction Onebox. Et vous avez déjà le bouton Insérer un lien.

Coller insère du texte.
Sélectionner et coller remplace le texte.
Sélectionner et supprimer/backspace supprime le texte.

Ce sont des fonctions communes à tous les éditeurs de texte.

2 « J'aime »

Une combinaison du contenu du presse-papiers et de l’état de l’éditeur :

  • Si le contenu du presse-papiers n’est pas une URL valide : le collage agira exactement comme vous l’avez dit (remplacer tout texte sélectionné ou l’ajouter à la fin du curseur sinon).
  • Si le presse-papiers est une URL et :
    • aucun texte sélectionné : l’URL sera insérée à la position du curseur.
    • texte sélectionné : utiliser ce texte comme texte d’ancrage.

Étant donné qu’il y a quelques autres éléments qui ne fonctionnent pas tout à fait comme dans d’autres éditeurs (toux, toux), je suis assez sûr que ce ne serait pas un problème majeur pour les utilisateurs :slight_smile:

1 « J'aime »

Je ne suis pas contre, mais je n’ai pas entendu parler d’autres personnes qui en feraient la demande. Cela semble assez de niche.

4 « J'aime »

Je pense que c’est l’un de ces trucs dont on ne sait pas qu’on en a besoin tant qu’on ne l’a pas.

(J’essaierais de le faire moi-même sous forme de plugin ou quelque chose comme ça, mais pour certaines raisons, je n’arrive pas à lancer l’environnement de développement Docker de Discourse sur Windows)

4 « J'aime »

Je recommande vivement WSL-2 ici, ainsi que notre configuration Docker officielle, la méthode la plus simple pour commencer sur Windows.

En outre… vous n’avez même pas besoin d’un environnement de développement complet ; vous pouvez expérimenter avec le créateur de thèmes, qui peut être construit en tant que composant de thème.

2 « J'aime »

En attendant, j’ai compris ce que je faisais de mal (et j’ai mis à jour le message pour éviter que d’autres ne persistent dans mon erreur). Je peux maintenant l’exécuter, mais je n’ai pas de temps libre. Peut-être dans un avenir proche :slight_smile:

1 « J'aime »

Je ne savais même pas que WordPress ou autre chose faisait cela, donc je n’aurais pas pensé à le demander, mais ce serait pratique et cela ne causerait probablement pas de grandes surprises (je n’ai jamais essayé de remplacer du texte par une URL, et si je le faisais, je comprendrais ce qui se passe).

3 « J'aime »

Honnêtement, c’est tout simplement une fonctionnalité charmante dans WordPress. L’hypertexte est une excellente chose, un concept fondamental du web, bien sûr… mais revenir en arrière pour ajouter 10 liens à un article est vraiment irritant, à moins de pouvoir simplement les copier et les coller. Donc, je ne prends même pas la peine, sauf si j’utilise WordPress. Il ne devrait vraiment y avoir aucune surprise à ce que coller un lien crée un lien.

1 « J'aime »

Je viens d’essayer cela dans l’éditeur Zettlr : il n’a pas la fonctionnalité de création de lien par collage comme WordPress, mais il propose un comportement similaire avec Ctrl+K. Avec une URL dans le presse-papiers, vous :

  • sélectionnez du texte
  • appuyez sur Ctrl+K

Et c’est tout, le texte devient un lien. Vous pouvez également cliquer avec le bouton droit pour ajouter un lien. Dans Discourse, vous devez :

  • sélectionner du texte
  • appuyer sur Ctrl+K
  • appuyer sur Ctrl+V
  • appuyer sur Entrée

Cela rompt vraiment le flux de mise en forme du texte.

Je ne sais pas si la sécurité du navigateur permettrait de coller avec Ctrl+K, mais je pense vraiment que le comportement de WordPress est parfait.

edit J’ai remarqué que Slack a le même comportement de création de lien au collage que WordPress, ce qui est une autre interface très utilisée qui adopte cette fonctionnalité.

3 « J'aime »

J’ai ajouté une PR pour cela dans UX: pasting links on a selection will apply a link format by gwwar · Pull Request #15010 · discourse/discourse · GitHub

23 « J'aime »

Oh wow ! Bienvenue et merci ! Ça fait un bail !

6 « J'aime »

J’utilise cela dans WordPress tout le temps. J’écris d’abord la phrase entière, ou même un paragraphe, puis je fais une autre passe et je convertis des mots/phrases en liens.

2 « J'aime »

Pareil ici. Beaucoup plus facile de créer du contenu.

Je sais que les CMS, comme WordPress, sont un peu différents des forums, mais ces frontières disparaissent, comme les ordinateurs par rapport aux tablettes par rapport aux téléphones.

Pour moi, la question est assez simple : c’est une question d’UX et de facilité, mais si les développeurs voient les choses différemment, c’est possible.

Je n’essaie pas de lancer de flame, mais de temps en temps, les développeurs oublient les utilisateurs finaux et font les choses comme ils en ont l’habitude :wink:

1 « J'aime »

Ceci est maintenant fusionné !

  • Couper une URL
  • Sélectionner un mot dans le compositeur Discourse
  • Coller l’URL
  • Le mot devient un lien… Magie :woman_mage: :mage:

Un grand merci à gwwar ← Cela a été facilement créé en utilisant l’astuce de collage @gwwar !

Je trouve cela assez cool, très difficile d’apprendre son existence, mais maintenant que je sais qu’elle existe, j’utiliserai certainement l’astuce à l’occasion.

21 « J'aime »