Unify me salvó del infierno de las comillas manuales

Read in: English · Español · Français · Deutsch · Português (Brasil) · 日本語 · 中文(简体) · Русский

¿Alguna vez has tenido una manía de estilo de código que poco a poco te vuelve loco? En el trabajo, nuestro equipo sigue el estilo de código Black — con una excepción: comillas simples en lugar de dobles. Parece inofensivo, ¿verdad?

Resulta que esta pequeña desviación genera una cantidad sorprendente de fricción.

La fatiga del “buscar y reemplazar”

Claro, podría buscar y reemplazar comillas manualmente. Pero hacerlo repetidamente en varios archivos es tedioso. Luego probé usar Cursor para encargarse de eso, pero eso trajo un conjunto totalmente nuevo de dolores de cabeza: mucho consumo de tokens, procesamiento lento, y tener que empujarlo cada pocos pasos como a un asistente robot testarudo.

Estaba arruinando mi flujo de trabajo.

Llega Unify (y uv)

Ya tenía uv instalado, así que incorporar Unify fue muy sencillo:

uv tool install --python=python3.10 unify

Ese detalle de --python=python3.10 es clave—de lo contrario uv toma Python 3.13 por defecto, lo cual causa problemas con lib2to3 (sí, ¡todavía relevante!).

Traceback (most recent call last):
  File "/Users/abramowi/.local/bin/unify", line 10, in <module>
    sys.exit(main())
             ~~~~^^
  File "/Users/abramowi/.local/share/uv/tools/unify/lib/python3.13/site-packages/unify.py", line 230, in main
    return _main(sys.argv,
                 standard_out=sys.stdout,
                 standard_error=sys.stderr)
  File "/Users/abramowi/.local/share/uv/tools/unify/lib/python3.13/site-packages/unify.py", line 210, in _main
    if format_file(name, args=args, standard_out=standard_out):
       ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/abramowi/.local/share/uv/tools/unify/lib/python3.13/site-packages/unify.py", line 144, in format_file
    encoding = detect_encoding(filename)
  File "/Users/abramowi/.local/share/uv/tools/unify/lib/python3.13/site-packages/unify.py", line 125, in detect_encoding
    from lib2to3.pgen2 import tokenize as lib2to3_tokenize
ModuleNotFoundError: No module named 'lib2to3'

Unify depende de él, así que una versión más antigua de Python salva el día.

La línea de código que lo arregló todo

Esto es todo lo que se necesita para cambiar a comillas simples en el mismo archivo:

unify --quote "'" --in-place /path/to/file.py

Y así, sin más, se acabaron los ajustes manuales. Se acabó el consumo de tokens. Se acabó tener que empujar a las herramientas de IA para que obedezcan.

Antes y después

# Before
print("Hello, world!")

# After
print('Hello, world!')

Conclusión

A veces la mejor solución es una intervención quirúrgica. Unify no solo limpió mi código—me permitió recuperar tiempo y concentración. Si estás atrapado en el purgatorio del estilo de comillas, este pequeño comando podría ser tu vía de escape.

WordPress and DreamHost: Perfect Duo

Leave a Reply

Your email address will not be published. Required fields are marked *