Barre d'outils de mise en forme

I make a highly opinionated fork here :

https://github.com/linuxuser-gr/discourse-formatting-toolbar

It look like this and needs the maths plugin

Is there a way to move some buttons to the cog menu ;

1 « J'aime »

The way to code the buttons in the cog menu is a bit different, you can take inspiration in my theme component : https://github.com/iunctis/md-composer-extras/blob/master/desktop/head_tag.html

Here is a button in the toolbar

api.onToolbarCreate(toolbar => {
    toolbar.addButton({
        id: "align_justify_button",
        group: "extras",
        icon: "align-justify",
        perform: e => e.applySurround('[wrap="justify"]\n', '\n[/wrap]', 'align_justify_text')
    });
});

Here is a button in the menu

api.addToolbarPopupMenuOptionsCallback(() => {
  return {
      action: "columns",
      icon: "columns",
      label: "columns_button"
  };
});

api.modifyClass("controller:composer", {
  actions: {
       columns() {
	  this.get("toolbarEvent").applySurround('[wrap="columns"]\n', '\n[/wrap]', "columns_text");
	}
  }
});
3 « J'aime »

Yeah, TinyMCE WYSIWYG Editor is good option to work with. There are few other good providers as well. But I myself is familar to something old style of Wordpress, that’s why I would like to choose it.

Je me demandais si ce plugin était disponible en tant que composant de thème ? Merci

Il existe un composant de thème : https://github.com/iunctis/md-composer-extras

Il existe quelques options différentes, mais c’est plus ou moins la même idée

Oui, merci Steven, mais il me manque une option de coloration pour le texte sur le composant thématique. Quelque chose de plus intuitif à utiliser que le BBCode, idéalement avec un sélecteur de couleur et du texte prédéfini.

Je ne sais pas si quelque chose comme ça est réalisable dans un composant de thème pour être honnête. Il y a une branche dans le composant de thème avec une option de couleur bbcode basique \u003chttps://github.com/iunctis/md-composer-extras/tree/color\u003e

J’ai des connaissances très basiques en codage, donc je ne suis pas celui qui pourrait faire un sélecteur de couleur. Mais j’accepterais volontiers une pull request si quelqu’un veut améliorer le plugin !

Oh, j’aime beaucoup toutes ces options de mise en forme et j’utilise presque exclusivement floatr d’ailleurs :wink:
où vois-je cette option comme cité ?
dans le thème classique, il n’y a pas d’option css pour ajouter ou désactiver des boutons
et après l’installation, j’ai eu cette erreur :
/var/discourse# a trouvé de manière inattendue « ! template-lint-disable ~ » lors du découpage de la source, mais attendait « template-lint-disable »

Cette erreur ne provient pas de ce plugin, je suppose. Parce que je l’ai eue aussi — cela n’a rien cassé, cependant. Je suppose qu’elle provient du noyau.

Merci @Jagster J’ai ajouté ce composant de thème

et j’ai ‘désinstallé’ le plugin et l’erreur a maintenant disparu donc…

Intéressant :thinking: Parce que je ne l’utilise pas. Y a-t-il un autre plugin qui utilise la même chose ?

Zut… Je dois aller vérifier si je l’ai oublié après avoir essayé →

Et retour. Je l’ai eu mais il est commenté. La deuxième reconstruction pourrait-elle être la solution ici ?

Ces options ont été supprimées il y a quelques années, cela a cassé avec une nouvelle version de Discourse. Je n’ai malheureusement ni les connaissances ni le temps de les réimplanter

Concernant votre problème, vous devez choisir entre le plugin ou le composant de thème, sinon cela cassera, ils partagent essentiellement le même code.

Désinstallez le composant de thème si vous voulez essayer le plugin

Notez que ce plugin ou composant de thème casse également avec des plugins comme le bbcode officiel de Discourse.

2 « J'aime »

Peut-être/peut-être qu’il est temps de changer le message principal qui en informe et de désactiver le lien GitHub ? Car en gros, ça ne fonctionne pas correctement.

C’était une excellente idée (merci), et j’aimerais qu’elle soit standard dans Discourse, ou prise en charge en tant que module complémentaire.

Le plugin fonctionne, la mention de ces options a été supprimée dans le OP et j’ai ajouté quelques avertissements il y a un moment. Aucune raison de modifier quoi que ce soit et de désactiver le plugin pour le moment.

1 « J'aime »

Super plugin de barre d’outils ! Je me demandais si vous pouviez ajouter le bbcode bicolore pour la couleur d’arrière-plan ?

Une autre idée intéressante est l’utilisation de listes déroulantes dans la barre d’outils. Cela pourrait être utile sur mobile, par exemple.

Je me demandais également s’il existe une liste maîtresse des bbcodes pris en charge par votre plugin.

Merci

Je suppose que je peux y ajouter la compatibilité. La base du code est disponible dans ce plugin officiel : discourse-bbcode-color/assets/javascripts/lib/discourse-markdown/bbcode-color.js at main · discourse/discourse-bbcode-color · GitHub

J’y réfléchirai. Je n’ajouterai probablement pas de bouton :thinking:

J’ai ajouté la prise en charge des bbcodes suivants :

color=
size=
small
floatl
floatr
floatc
left
center
right
justify

1 « J'aime »

Merci beaucoup. Oui, nous n’avons pas vraiment besoin de boutons pour tout.
:clinking_beer_mugs::smiling_face_with_sunglasses::+1::sparkles: :discourse:

La prise en charge du bbcode [bgcolor] a été ajoutée

1 « J'aime »

Bonjour ! Si le texte placé à l’intérieur des balises bbcode a deux sauts de ligne consécutifs, ou un saut de ligne et un retour chariot consécutifs :

[center]
text "\n\n" text
[/center]

[center]
text "\r\n" text
[/center]

alors nous avons du texte brut avec les balises [center][/center] elles-mêmes dans les publications.

Mais de cette façon :

[center]
text "\n" text
[/center]

ou de cette façon :

[center]
text text
[/center]

le bbcode est correctement encapsulé et j’ai le texte centré.

Je pensais que c’était une restriction de Discourse, mais peut-être pouvons-nous faire quelque chose à ce sujet ?

Vous avez activé l’éditeur riche (premier bouton) et le plugin n’est pas encore compatible avec celui-ci.

La dernière fois que j’ai vérifié, cela devrait fonctionner avec l’éditeur markdown.

2 « J'aime »