Como substituir texto no composer?

Olá a todos,

Tenho uma pergunta muito simples, mas não consigo encontrar a resposta em lugar nenhum.
Quero criar BBCode personalizado sem uma tag de fechamento; como faço isso?

Graças a este tópico, já descobri como substituir [algo]outro texto[/algo] por código HTML.

Mas agora gostaria de descobrir como substituir apenas [algo]. Por exemplo, gostaria de saber como substituir [br] por <br>. Ou qualquer substring (que não contenha uma tag de fechamento) por outra coisa. Já examinei o código-fonte do plugin discourse-bbcode, mas todo BBCode nesse plugin possui uma tag de fechamento.

Basicamente, estou procurando algo como este exemplo:

Mas algo que ainda funcione.
Alguém pode me ajudar ou me indicar o caminho certo?

3 curtidas

Uma solicitação de recurso que tem surgido repetidamente é uma seção de “substituir / substituir” em Admin → Logs → Palavras Monitoradas.

Ainda acho que devemos fazer isso @sam e @eviltrout, embora possa ser algo para a versão 2.7 ou superior.

3 curtidas

Isso seria realmente ótimo, desde que a substituição permita HTML :smiley:

2 curtidas

Para a versão 2.7, implementei palavras vinculadas por slot; podemos certamente adicionar isso também enquanto estamos nisso… vou incluir no lançamento.

4 curtidas

Vejo que isso ainda não foi feito. Embora a opção de substituir palavras tenha sido adicionada em palavras monitoradas, ela não permite substituir uma palavra por código HTML. Preciso da capacidade de ter certas palavras substituídas por HTML.

Além disso, se alguém puder me indicar um recurso para incorporar um trecho de HTML em uma única postagem, por favor, me avise.

1 curtida

Você pode substituir palavras por outras palavras, ou substituir palavra(s) por um link. Faça isso em Admin → Personalizar → Palavras Monitoradas. Isso é válido a partir do Discourse 2.7 e versões posteriores.

No entanto, você não pode substituir palavras por marcação devido a limitações em nosso pipeline de renderização.