Substituindo texto especial para linká-los em posts

Olá, isso é mais uma pergunta sobre como fazer algo…

Então, além do nosso fórum, temos uma wiki (MediaWiki) e, em vários tópicos, postamos links para essa wiki.

Agora, acabamos de migrar do SMF, onde os links eram gerados como BBCode, assim:
[wiki]Idrissa Doumbia[/wiki]
convertido automaticamente para
https://www.forumscp.com/wiki/index.php?title=Idrissa Doumbia

Minha pergunta é: com o Discourse, esses links se perdem, ou seja, o que vemos nos tópicos são as tags BBCode sem linkagem. Então, fiquei me perguntando qual seria a melhor estratégia para fazê-los funcionar novamente. O componente Linkify (ainda não verifiquei se esse é o objetivo desse componente)? Substituir o texto via Rails (é possível com esses caracteres especiais e mantendo a string entre as tags da wiki para criar o link)? Alguma outra ideia?

Você pode usar o componente de tema Auto-Linkify Words com a seguinte configuração (não testada):

/\[wiki\]([^[]+)\[\/wiki\]/,https://www.forumscp.com/wiki/index.php?title=$1

Obrigado. Funciona muito bem, o link está sendo gerado como deveria. O único problema é que o título do link é [wiki]algo-aqui[/wiki] em vez de converter para o texto algo-aqui.

Isso é corrigível, tenho uma versão do linkify que também converte texto. Você poderia me chamar na próxima semana? Vou ver o que posso fazer.

Se este for o único propósito do tema linkify, você pode modificar o código diretamente. Especificamente, na linha 63 de /head_tag.html:

link.innerHTML = text;

escreva isso no lugar:

link.innerHTML = captured.length == 1 ? captured[0] : text;

Não testei isso, você pode tentar? Me avise se precisar de mais orientações.