Sin embargo, al crear un nuevo tema y que cualquiera de estas palabras aparezca en el título o el cuerpo del mensaje, no parece asignarse ninguna etiqueta automática. Supongo que debo estar haciendo algo mal, pero no tengo la menor idea de qué.
Lo mismo, a mí tampoco me funciona (el “test” funciona, pero no al crear un tema real).
Quería verificar si también funciona para el título y para el contenido del post, y si los etiquetas se añaden al campo de etiquetas mientras se escribe, es decir, antes de que el usuario haga clic en enviar. Esto permitiría eliminar una etiqueta si consideran que no es adecuada.
Acabo de realizar una prueba rápida de esto en mi sitio de desarrollo local. Al agregar una palabra vigilada con etiquetado automático, la prueba funciona para mí, pero hasta ahora no he logrado que se etiquete automáticamente un tema cuando una publicación contiene una de las palabras vigiladas. Investigaré esto un poco más.
Edición: Realicé una prueba rápida de esto en un sitio de Discourse alojado y estoy encontrando problemas similares a los que veo en mi sitio de desarrollo. Al probarlo en mi sitio de desarrollo, descubro que el método auto_tag no se llama cuando creo un nuevo tema que contiene una palabra con etiquetado automático. Si edito un tema existente para agregar una palabra con etiquetado automático, el método auto_tag se llama y el tema se etiqueta.
Solo acabo de notar que, en una importación de tema incrustado desde un sitio remoto, el etiquetado automático sí funcionó. Pensé que quizás ya se había corregido, pero lo probé en la creación normal de un nuevo tema y no hubo suerte. De todos modos, funciona parcialmente.
Llegué aquí con el mismo problema (el etiquetado automático no se activa al crear un nuevo tema con palabras vigiladas). Pero tampoco logro que se añadan las etiquetas al editar una publicación existente.
Resulta que ya había aprobado las pruebas, pero por alguna razón tardó un tiempo en hacerse visible en la actualización. De todos modos, ya no estoy en la versión 2.8.0.beta1 db7038e6c2 y he vuelto a probar. Todavía tengo problemas con el JavaScript. Estos son los tags que estoy usando:
¡Ay, lo siento! Gracias por detectarlo. Ahora funciona correctamente.
Me pregunto si sería útil detectar errores y advertir al usuario, especialmente porque las personas no técnicas podrían escribir inadvertidamente cadenas que sean expresiones regulares inválidas. También sería genial que un error en una expresión regular no se propagara a las demás. En este caso, había coincidencias válidas con algunas de las expresiones regulares posteriores que no se encontraron debido al error en la primera.
¿Hay algo que podamos hacer aquí para avisar a los usuarios cuando se están disparando en el pie con expresiones regulares, @sam? ¿Podemos ocultar las expresiones regulares detrás de un modo avanzado? ¿Podríamos usar de forma predeterminada los límites de palabra, que es lo que la mayoría de la gente quiere cuando introduce una palabra, de todos modos?
Mi propuesta sería simplemente no necesitar expresiones regulares completas y ofrecer soporte suficiente de forma predeterminada, de modo que solo 1 de cada 10.000 comunidades necesite ensuciarse las manos y usar expresiones regulares.
En este ejemplo específico de @ben, si soportáramos ?, entonces:
Voy a cerrar esto porque parece que la función está funcionando. (Sí, las expresiones regulares son más ricas, pero esto parece suficiente para capturar lo que Ben está intentando hacer).