Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mejorar script para encontrar diferencias de formato #1783

Open
wants to merge 4 commits into
base: 3.12
Choose a base branch
from

Conversation

cmaureir
Copy link
Collaborator

Este script puede ser utilizaro en archivos, directorios,
o en todo el proyecto (sin argumentos)

La idea es encontrar inconsistencias en los archivos traducidos
relacionados al formato de rst y sphinx.

Este script puede ser utilizaro en archivos, directorios,
o en todo el proyecto (sin argumentos)

La idea es encontrar inconsistencias en los archivos traducidos
relacionados al formato de rst y sphinx.
Copy link
Collaborator

@rtobar rtobar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Un par de detalles, el resto se ve bien.

Al leer el código para tratar de entender la funcionalidad de cumple, me recordó a los checks que hace sphinx mismo de asegurarse que los roles que aparecen en el original también aparecen en la traducción (y que hacen fallar el build cuando no se cumple).

¿Es la intención de este script hacer ese mismo chequeo, pero de forma más light de tal forma que se pueda agregar al pre-commit? Si la respuesta es "sí", entonces creo que sacaría los patrones de bold e italics porque esos dan varios falsos positivos, y además ajustaría la lógica para que el texto dentro de los roles no tenga que ser exactamente igual, sino que la referencia tenga que ser la misma (i.e., parsear lo que hay dentro de <> si es que están presentes los caracteres).

Por otro lado, si la intención inicial no era esa, sino más bien dar un feedback más manual, qué tal si ajustamos el script para que tenga las dos funcionalidades? O creamos uno aparte? Voy a experimentar un poco y poner acá mis resultados.

scripts/format_differences.py Outdated Show resolved Hide resolved
scripts/format_differences.py Outdated Show resolved Hide resolved
@cmaureir
Copy link
Collaborator Author

Un par de detalles, el resto se ve bien.

Gracias por los comentarios, había olvidado este parche :P

Al leer el código para tratar de entender la funcionalidad de cumple, me recordó a los checks que hace sphinx mismo de asegurarse que los roles que aparecen en el original también aparecen en la traducción (y que hacen fallar el build cuando no se cumple).

¿Es la intención de este script hacer ese mismo chequeo, pero de forma más light de tal forma que se pueda agregar al pre-commit? Si la respuesta es "sí", entonces creo que sacaría los patrones de bold e italics porque esos dan varios falsos positivos, y además ajustaría la lógica para que el texto dentro de los roles no tenga que ser exactamente igual, sino que la referencia tenga que ser la misma (i.e., parsear lo que hay dentro de <> si es que están presentes los caracteres).

Complementario diría yo,
sphinx no detecta inconsistencias entre los bold e italic por ejemplo, que por lo general terminan en errores de formato.
Agregué los patrones de otras sentencias de sphinx "ya que estamos buscando inconsistencias". Pensé que si alguien lo usa, querrá notar las otras diferencias también.

Por otro lado, si la intención inicial no era esa, sino más bien dar un feedback más manual, qué tal si ajustamos el script para que tenga las dos funcionalidades? O creamos uno aparte? Voy a experimentar un poco y poner acá mis resultados.

No pensé realmente un uso de todas las personas, solamente que estaba haciendo el paso a mano de buscar inconsistencias entre frases donde quien haya traducido olvidara texto en bold, o alguna otra cosa de sphinx que se nos hubiera pasado por alto.

Si tienes alguna idea de como mejorarla para dar esa dualidad me dices!

@cmaureir cmaureir changed the base branch from 3.10 to 3.11 October 26, 2022 11:47
Comment on lines +11 to +19
":c:func:`[^`]+`",
":c:type:`[^`]+`",
":c:macro:`[^`]+`",
":c:member:`[^`]+`",
":c:data:`[^`]+`",
":py:data:`[^`]+`",
":py:mod:`[^`]+`",
":func:`[^`]+`",
":mod:`[^`]+`",
Copy link
Collaborator

@humitos humitos Oct 28, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yo creo que esto se podría escribir de una forma más genérica usando más regex:

: +[a-z]+:`[a-z]+`

Esa por ejemplo, encuentra "uno o más espacios luego del primer :"

:[a-z]+: +`[a-z]+`

Encuentra un "un espacio luego del segundo :"

De esta forma, solo tenemos que escribir "un par de regex" para encontrar los espacios en todas las posibles variaciones de todos los roles de Sphinx. ¿Qué te parece? Lo mismo se puede hacer para cursiva y negrita.

@cmaureir cmaureir mentioned this pull request Nov 15, 2022
@cmaureir cmaureir changed the base branch from 3.11 to 3.12 October 14, 2023 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants