No entanto, ao criar um novo tópico e incluir alguma dessas palavras no título ou no corpo da postagem, nenhuma marcação automática parece ser aplicada. Acredito que esteja cometendo algum erro, mas não tenho ideia do que seja.
O mesmo, não está funcionando para mim também (o ‘teste’ funciona, mas não na criação real do tópico).
Eu queria verificar se funciona para o título, bem como para a postagem, e se ele adiciona as tags ao campo de tags enquanto o usuário digita, ou seja, antes de clicar em enviar. Isso permitiria que eles removam uma tag se acharem que não é adequada.
Acabei de fazer um teste rápido disso no meu site de desenvolvimento local. Quando adiciono uma palavra monitorada para auto-tag, o teste funciona para mim, mas até agora não consegui fazer com que ele auto-tagge um tópico quando uma postagem contém uma das palavras monitoradas. Vou investigar mais isso.
Edição: Fiz um teste rápido disso em um site Discourse hospedado e estou enfrentando problemas semelhantes aos que vejo no meu site de desenvolvimento. Testando no meu site de dev, o que estou percebendo é que o método auto_tag não está sendo chamado quando crio um novo tópico que contém uma palavra de auto-tag. Se eu editar um tópico existente para adicionar uma palavra de auto-tag, o método auto_tag é chamado e o tópico é taggeado.
Notei apenas que, em uma importação de tópico incorporado de um site remoto, a marcação automática funcionou. Achei que talvez tivesse sido corrigido, mas tentei em uma criação normal de novo tópico e não funcionou. Então, de qualquer forma, está funcionando parcialmente.
Cheguei aqui com o mesmo problema (a marcação automática não é acionada ao criar um novo tópico com palavras monitoradas). Mas também não consigo que as tags sejam adicionadas ao editar uma postagem existente.
Fiz algumas alterações nessa funcionalidade algumas semanas atrás e espero que esses problemas tenham sido resolvidos. Você ainda está tendo problemas com isso?
Acontece que eu já estava nos testes aprovados, mas, por algum motivo, demorou para ficar visível na atualização. De qualquer forma, não estou na versão 2.8.0.beta1 db7038e6c2 e já testei novamente. Ainda tenho problemas com o JS. Estes são os tags que estou usando:
Agh — desculpe. Obrigado por notar isso. Agora funciona perfeitamente.
Fico me perguntando se seria útil capturar erros e alertar o usuário — especialmente porque pessoas não técnicas podem acidentalmente escrever strings que são expressões regulares inválidas. Também seria ótimo se um erro em uma regex não afetasse as outras. Neste caso, havia correspondências válidas em algumas das regexes posteriores que não foram encontradas devido ao erro na primeira.
Há algo que possamos fazer aqui para avisar os usuários quando eles estão se prejudicando com expressões regulares, @sam? Podemos colocar as regex em um modo avançado? Podemos definir como padrão os limites de palavra, que é o que a maioria das pessoas deseja ao inserir uma palavra, de qualquer forma?
Minha opinião é simplesmente não precisar de expressões regulares completas e oferecer suporte a recursos suficientes nativamente, para que apenas 1 em cada 10.000 comunidades precise se envolver e usar expressões regulares.
Neste exemplo específico do @ben, se suportássemos ?, teríamos:
Vou fechar isso porque parece que o recurso está funcionando. (sim, regex é mais rico, mas isso parece suficiente para capturar o que Ben está tentando fazer)