Límite de menciones: ¿aclarar el mensaje de error?

Hola,

Hay una característica en Discourse que limita el número de menciones de usuario en los mensajes, y lo limita aún más para los usuarios “nuevos” (nivel de confianza 0).

Si no sabes a qué me refiero, aquí está la implementación en el código fuente de Discourse:

Es una buena característica, pero resulta que hemos tenido algunos usuarios que alcanzaron ese límite por error y se confundieron. La cuestión es que no querían mencionar a un usuario. Simplemente “olvidaron” (o no sabían cómo) formatear un fragmento de código incluido en su mensaje, y como ese fragmento era código Java, incluía anotaciones, que comienzan con @ y se interpretan como menciones de usuario.

Un ejemplo de dicho código:

public class MyCode {

@NotNull
private String foo;

@NotNull
private String bar;

@NotNull
private String foobar;

}

El mensaje de error es simplemente este:

Lo sentimos, los usuarios nuevos solo pueden mencionar a 2 usuarios en una publicación.

Puedes imaginar que un usuario que no está familiarizado con cómo formatear código en markdown puede tampoco estar familiarizado con lo que es una mención de usuario, e incluso si lo está, puede que no entienda que lo que pretendía ser una anotación de Java fue interpretado como una mención de usuario.

Entonces… ¿quizás se puede mejorar la experiencia del usuario de esa característica?

Podríamos hablar de que Discourse detecte automáticamente el código fuente y sugiera formatearlo, o resalte las partes del mensaje cuya validación falló, pero cualquiera de estas soluciones probablemente requeriría mucho esfuerzo.

Estaba pensando en simplemente expandir el mensaje de error para explicar qué es una mención de usuario, ¿y quizás dar algún consejo?

Así que al menos esto:

Lo sentimos, los usuarios nuevos solo pueden mencionar a 2 usuarios en una publicación.
Las menciones de usuario son palabras prefijadas con `@`, por ejemplo `@juanperez`.

Y quizás incluso esto:

Lo sentimos, los usuarios nuevos solo pueden mencionar a 2 usuarios en una publicación.
Las menciones de usuario son palabras prefijadas con `@`, por ejemplo `@juanperez`.
Si tu publicación incluye código fuente, asegúrate de rodearlo con comillas invertidas para evitar que partes de tu código se interpreten como menciones de usuario; consulta <insertar algunos enlaces a la documentación sobre cómo formatear código en discourse>.

¿Pensamientos, opiniones? ¿Debería enviar una solicitud de extracción (pull request)? Me temo que solo puedo actualizar los locales en inglés y francés, sin embargo.

Como referencia, algunos ejemplos de usuarios confundidos:

Hay un Theme component que hace eso

2 Me gusta

¡Gracias! Eso es genial, no sabía que existía. Espero que evite que los usuarios se encuentren en esta situación en primer lugar :slight_smile:

1 me gusta

Si el problema persiste incluso con el componente temático Detector de código sin formato, también puedes cambiar el texto de este mensaje para tu sitio desde la página /admin/customize/site_texts, así como ajustar la configuración de administrador newuser max mentions per post si está causando más problemas de los que resuelve. :slight_smile:

3 Me gusta

Genial, no sabía que podía personalizar cualquier texto que apareciera en Discourse. ¡Hecho!

Entonces supongo que realmente no hay necesidad de una pull request :slight_smile:

1 me gusta