Error "El cuerpo parece poco claro" cuando los usuarios escriben en chino

¡Genial ver que esto se ha abordado! :+1: Dirigimos un foro internacional y, si bien el inglés es el idioma principal, tenemos categorías dedicadas a otros idiomas y esto ha sido una molestia a largo plazo.

Ahora que skipped_locale solo se usa para seems_unpretentious, me pregunto si podríamos omitir ‘ko’ ya que el coreano moderno usa espacios. Ten en cuenta que no hablo coreano, así que quizás quieras verificar esto.

Mientras te tengo tu atención, hay una cosa más que creo que podría ser una mejora fácil en TextSentinel, pero no me atreví a tocarla (de nuevo, no soy un desarrollador de Ruby). Si tienes un momento, creo que es bastante simple y podría obtener una ganancia de rendimiento gratuita.

Según entiendo, esto verifica si una palabra es más larga que el límite dividiendo el texto en palabras, calculando la longitud de cada una, escaneando todas las longitudes para encontrar la más alta y solo entonces comparándola con el límite.

¿Podríamos quizás omitir todo eso simplemente intentando hacer coincidir el texto con algo como /\\p{Alnum}{#{max_word_length + 1},}/ (la sintaxis probablemente sea incorrecta, pero espero que entiendas la idea)?

Sin conocer el funcionamiento interno de Ruby, es más probable que esto detenga la verificación tan pronto como haya una coincidencia y, si no hay una palabra demasiado larga (el caso más común), el texto solo se escanea una vez, omitiendo la división, la verificación de la longitud de cada palabra individual, etc.

Disculpa si estoy secuestrando el tema aquí, pero como el nuevo PR ya se ha fusionado, no estoy seguro de cuál es el mejor lugar para publicar esto, ya que quizás sea demasiado pequeño para merecer un nuevo tema, pero parece una victoria fácil. Siéntete libre de seguir adelante.

1 me gusta