Por Qué Editar Temas de VS Code en JSON es un Infierno (y Cómo lo Resolví)

Quieres cambiar el color de los comentarios en tu tema de VS Code. Sencillo, ¿no? Abres settings.json, buscas editor.tokenColorCustomizations y te encuentras con una pared de cadenas scope como esta:

"scope": [
  "comment",
  "punctuation.definition.comment",
  "string.comment"
],
"settings": {
  "foreground": "#6A9955"
}

¿Cuál de ellas controla el color que estás viendo? ¿Todas? ¿Una? Cambias una, recargas, entrecierras los ojos. Nada. Cambias otra. Algo se ha movido, pero no era lo correcto. Esta es la realidad de editar temas de VS Code a mano.

El problema real de editar temas en JSON

Los temas de VS Code se definen mediante dos sistemas de tokens masivos: los colores del workbench (la interfaz: barra lateral, pestañas, barra de título, barra de estado) y los colores de tokens de sintaxis (palabras clave, cadenas, funciones, comentarios en el código). Un tema completo puede referenciar fácilmente entre 400 y 600 claves de color individuales.

La documentación oficial las lista. Pero "listadas" y "comprensibles" no son lo mismo. No hay un mapa visual que muestre qué clave corresponde a qué píxel en pantalla. Se espera que memorices nombres de tokens, adivines selectores de scope y recargues VS Code repetidamente para ver el efecto de cambiar un solo valor hexadecimal.

🔍 Sin feedback visual

Editas el JSON y esperas que al recargar aparezca lo que esperabas. Casi nunca es así.

📄 Cientos de claves

Un tema completo referencia más de 400 tokens de color entre workbench y sintaxis.

🎯 Ambigüedad de scope

Múltiples scopes apuntan al mismo token. El incorrecto gana en silencio.

🔄 Bucle de recarga

Cambiar → guardar → recargar → inspeccionar → repetir. Agotador para un solo color.

Lo que los desarrolladores realmente quieren

Los desarrolladores quieren ver lo que están construyendo. El mismo principio que hace poderosas las DevTools del navegador — inspección en vivo, feedback instantáneo — debería aplicarse a la creación de temas. Haz clic en un color. Vélo actualizarse en todos los sitios donde aparece. Sin recargas. Sin adivinar.

Esa es toda la premisa detrás de ThemeLab. En lugar de un editor JSON, tienes una simulación pixel-perfect del interfaz de VS Code. Cada panel, cada token de color, cada resaltado de sintaxis — todo en el navegador y todo reactivo a tus cambios en tiempo real.

Cómo ThemeLab resuelve el problema

ThemeLab mapea cada control de color directamente a un token de VS Code con nombre. Cuando haces clic en Keyword y eliges un nuevo color, lo ves cambiar instantáneamente en todo el editor simulado — en el mock de código, en la barra lateral, en la barra de estado. Sin ambigüedad. Sin recargas. Sin buscar en JSON.

Cuando terminas, exportas un archivo theme.json válido — el mismo formato que usan las extensiones de VS Code — con un solo clic. Colócalo en una carpeta de extensión de VS Code y funciona.

Por qué esto importa más allá de la comodidad

El flujo de trabajo con JSON no es solo inconveniente — es una barrera que impide que la mayoría de desarrolladores personalice su tema en absoluto. Eligen Dracula o One Dark y se quedan para siempre, no porque lo amen, sino porque construir algo personal parece demasiado doloroso.

ThemeLab elimina esa barrera por completo. Si sabes hacer clic en una paleta de colores, puedes construir un tema.

Prueba ThemeLab — es gratis →