Festival de Botões do Compositor

:warning: Este componente só funciona com o editor de markdown. Não é compatível com o editor de rich text.

:information_source: Resumo Composer Button Bonanza permite que um administrador do site defina e adicione novos botões de marcação à barra de ferramentas do Composer, e fornece uma abundância de novos botões em sua configuração padrão.
:hammer_and_wrench: Repositório centertap/DiscourseComposerButtonBonanza - Codeberg.org
:eyes: Readme Making sure you're not a bot!
:spiral_notepad: Notas de Lançamento Making sure you're not a bot!
:question: Guia de Instalação Como instalar um tema ou componente de tema
:heart: Patrocínio Trazido a você por… CTAP
Este componente de tema é desenvolvido pelo Center for Transparent Analysis and Policy, uma organização sem fins lucrativos 501(c)(3). Se este componente for útil para o seu site, considere fazer uma doação para apoiar o CTAP.

Instalar Composer Button Bonanza

“Acessos do Composer que Você Pode Pagar!”

Composer Button Bonanza é um componente de tema que fornece mais botões de marcação para o Composer.

Pronto para usar, ele fornece uma série de novos botões, uma bagunça de botões, uma bonanza de botões. A configuração padrão adiciona três novos botões à barra de ferramentas (Você consegue encontrá-los? :smile:), e esconde o restante atrás de um botão de alternância no menu pop-up :gear::

Após clicar no botão de alternância, o restante dos botões se torna visível:

Através das configurações do componente de tema, você pode:

  • adicionar novas definições de botão (e/ou remover as fornecidas);
  • selecionar quais botões mostrar e quando mostrá-los;
  • alterar a ordem dos botões e colocá-los na barra de ferramentas ou no menu pop-up :gear: da barra de ferramentas;
  • fornecer traduções/localizações para os botões.

Este componente não define nenhuma marcação ou estilo — ele meramente adiciona botões convenientes (acessos!) para digitar a marcação existente que invocará os estilos existentes. Seu propósito principal é ajudar seus usuários a descobrir e usar a funcionalidade do Composer. Por exemplo, usuários que usam muitas notas de rodapé provavelmente digitarão ^[ e ] diretamente no teclado; mas o resto de nós ficará feliz em ter um botão :asterisk: para nos lembrar o que fazer.

Um benefício dessa abordagem é que, se você decidir remover este componente de tema, não perturbará o estilo de nenhuma postagem existente. Este componente não é responsável por fazer qualquer estilização; ele apenas fornece atalhos para a funcionalidade já presente no Composer e/ou fornecida por outros plugins ou componentes de tema.

Configuração Padrão

A configuração padrão fornece definições para a maioria (todos?) da marcação extra que está disponível em uma instalação padrão do Discourse (com todos os plugins embutidos ativados e nenhum plugin extra instalado):

  • Estilos de texto:
    • sublinhado, tachado
    • superescrito e subscrito
    • texto grande, texto pequeno
    • estilo de teclado
  • Formatação
    • Título 1, Título 2, Título 3
    • Nota de rodapé[1]
    • Texto Ruby( ルビー テキスト)
    • Imagem via URL externa (<img >)
    • Lista de verificação
    • Texto destacado, Texto inserido, Texto excluído
  • Símbolos
    • Copyright ©, Registrado ®, Marca Registrada™
    • Euro €, Iene ¥
    • o kaomoji “dar de ombros” (porque, por que não? ¯\(ツ)/¯ )
  • e, um botão de alternância para mostrar/ocultar a maioria dos botões acima

Como mencionado acima, estes são meramente os padrões. Todos esses botões podem ser reorganizados ou removidos, e novos podem ser adicionados.


  1. …como esta nota de rodapé, por exemplo. ↩︎

19 curtidas

Isso é legal, obrigado!

Existe uma maneira de adicionar a tag ‘spoiler’ diretamente na barra de ferramentas superior? É algo que usamos muito.

Editar: Eu descobri :smiley:

3 curtidas

Como funcionam os atalhos?

Gostaria de criar um atalho de teclado para o meu botão “spoiler”, mas a maioria dos atalhos já não está sendo usada para outras coisas?

O exemplo diz Shift-4, mas para mim isso é um $…

2 curtidas

Sim, componente muito bom. Estava procurando pelo botão que exibe os botões extras na barra do compositor

Acho que uma funcionalidade legal seria adicionar um botão na barra do compositor. Talvez com 2 opções: exibir/ocultar e0a42() ou menus da barra do compositor. Assim, você pode agrupar funções em uma barra selecionável.

Por exemplo:

  • Barra de estilo: teria coisas como negrito, itálico, riscar, etc.
  • Barra de layout: tabela, alinhamento à direita, centralizar, etc.
  • Com opção de personalizar a barra principal com comandos usados com frequência.

(Tenha em mente que este componente apenas expõe os parâmetros/opções que já estão no código JS do Discourse…)

Para atalhos, você especifica a tecla de atalho, juntamente com quaisquer modificadores… e então o Discourse sempre adiciona um ctrl+ (ou cmd+ em hardware Apple?). Por exemplo, a string literal “shift+4” (como parâmetro do botão) se traduz em ctrl+shift+4 (como teclas de atalho).

:grimacing: Eu não tentei descobrir uma maneira de remover atalhos — novamente, este componente é aditivo em cima da base de botões já embutidos no Composer. (Eu gostaria de poder fazer ctrl+e não ser um atalho para texto pré-formatado, e apenas ser “ir para o final da linha” em vez disso!)

2 curtidas

h01y cr@p isso é awwwwwwesommmmme

2 curtidas

Tenho um problema com isso, estou usando e adorando, mas adicionei um botão “spoiler” e ele cria tags de spoiler usando DIV em vez de SPAN, então elas sempre vão para uma nova linha ao usar o editor WYSIWYG.

Existe uma maneira de mudar isso, por favor?

Isso ainda é compatível?

Ainda estou tendo o problema com spoilers em uma DIV, não em uma SPAN.

Acho que isso não é mais suportado?

Alguém pode sugerir como posso consertar isso, o botão “spoiler” não está funcionando corretamente (veja minha postagem anterior)

Vou investigar isso, mas preciso que você mostre especificamente como adicionou este botão de “spoiler”.

Obrigado!

Aqui está minha configuração:

Screenshot 2025-11-30 at 19.58.22

Existem mais lá embaixo. Mas o spoiler é adicionado com:

spoiler,shift+x

No modo Markdown funciona perfeitamente.
No modo WYSIWYG, quando você seleciona algo e clica no botão de spoiler, em vez de ficar em uma SPAN, ele vai para uma DIV, tornando-o um elemento de bloco em sua própria linha.

Obrigado!

Literalmente há uma hora, percebi que o ComposerButtonBonanza (CBB) está quebrado no WYSIWYG-Composer. (Ou, talvez, seja o contrário.) Não usamos WYSIWYG no site que mantenho, então eu nunca percebi! Então… ugh.

(Não sou fã de WYSIWYG. O MediaWiki (ex: Wikipédia) investiu muito em um editor WYSIWYG há mais de uma década, pensando que isso encorajaria mais pessoas a se tornarem editores. Não fez diferença, e eles não conseguiram se livrar do editor original de qualquer maneira porque há tantas coisas que você realmente não consegue realizar com a versão WYSIWYG, e ela acaba sendo geralmente meio desajeitada em comparação com o editor original de código wiki + visualização.)

Hmm… independentemente do CBB… se eu inserir um spoiler no WYSIWYG-Composer e depois clicar fora da caixa do spoiler para editar em outro lugar, ele se desfoca permanentemente e eu não consigo mais editar o texto do spoiler… a menos que eu mude para o modo Markdown. Estou perdendo alguma coisa, ou isso é apenas um bug no modo WYSIWYG?

…Ah, esquece! Se eu clicar três vezes (por frustração e/ou tédio), então eu consigo editar o texto do spoiler novamente! (Não sou fã do modo WYSIWYG; eu já mencionei isso?)

1 curtida

Se você puder consertar os spoilers para que não se tornem de bloco, ficarei muito grato :folded_hands:

Adicionei um aviso na primeira postagem de que não é compatível com o editor de texto rico.

Eu não testei isso, mas parece-me que isso não tem nada a ver com este componente em particular. Eu começaria um novo relatório de bug de suporte com passos para reproduzir.

Não consigo reproduzir, qual navegador você está usando?

Este problema é específico do componente, a ação original “Blur spoiler” do core usa uma implementação diferente que não é apenas adicionar o bbcode [spoiler].

2 curtidas

Ah, excelente e obrigado por verificar. :+1:

Estou usando Firefox 140.5.0esr .

1 curtida

Obrigado pelo relatório, já deve estar corrigido. (E desculpe pelo off-topic)