O Discourse tem suportado o link para categorias (#announcements) e tags (#release-notes) há muito tempo usando hashtags (#). Com a introdução do Discourse Chat, queríamos ser capazes de vincular a canais de chat com hashtags, o que exigiu uma reformulação de como o sistema funciona para permitir que os canais sejam sugeridos com autocompletar e também para cozinhar em posts e mensagens de chat. Também decidimos aproveitar o tempo para reformular o design do menu de autocompletar e das hashtags cozidas.
Um resumo das alterações incluídas nesta reformulação:
A capacidade de pesquisar canais de chat se você tiver o chat habilitado
Os resultados da pesquisa de hashtags priorizam correspondências exatas com base no slug e, dependendo se você os está usando em um post ou em uma mensagem de chat, priorizamos diferentes tipos de resultados (por exemplo, categorias estão no topo em um post, mas canais estão no topo no chat)
Um ícone distinto é mostrado para cada resultado
Um novo estilo para hashtags cozidas que incluem o ícone distinto
Você pode optar por usar esta nova versão de autocompletar e cozimento de hashtags habilitando a configuração do site enable_experimental_hashtag_autocomplete em seu site Discourse:
Esperamos torná-lo o padrão no próximo ano, enquanto isso, isso ainda é considerado um recurso experimental, então ainda há algumas coisas para corrigir e refinar.
Este recurso agora está habilitado no Discourse Meta também
Uma atualização aqui – agora tornamos isso o padrão para todos os sites, após fazermos algumas alterações em como as hashtags são processadas. Agora também mostramos cores para os ícones, incluindo a estilização original da subcategoria :\n\n#support Feature#general::channelAnnouncements > Blog \n\nhttps://github.com/discourse/discourse/pull/21788\n\nEm breve, o código antigo que referencia o sistema de hashtags anterior também será excluído.
Obrigado por notar isso, este é um ótimo ponto. No mínimo, alguns aria-labels em cada hashtag são necessários. Tentarei fazer um commit para isso esta semana.
Tópicos antigos não usarão o novo formato para tags e categorias até que o HTML seja reconstruído. Existe uma maneira segura de reconstruir todos os tópicos para tornar a interface do usuário consistente? Talvez com rake?
Sem bundle exec, parece funcionar em um site de produção
root@Canapin-app:/var/www/discourse# rake hashtags:mark_old_format_for_rebake
Finding posts matching old format, this could take some time...
[!] You are about to mark 0 posts containing hashtags in the old format to rebake. [CTRL+c] to cancel, [ENTER] to continue
Done, rebakes will happen when periodical updates job runs.