Este ensayo describe técnicas para depurar una plantilla de Wikipedia para varios problemas en la estructura del wikitexto utilizado. El analizador de wikitexto se ha utilizado durante años y, aunque el marcado puede parecer confuso, el lenguaje es extremadamente confiable: se puede confiar en que el anidamiento de funciones if-else, anidadas hasta 40 niveles de profundidad, coincida correctamente con los 40 if-else correspondientes. cláusulas y pasar cientos de parámetros con los nombres correctos, incluso en una plantilla de 2000 líneas. Sin embargo, existen algunas restricciones que pueden sorprender a algunos usuarios, como pasar un signo igual "=" en los datos mediante la plantilla "{{=}}" (ver más abajo: "Restricciones inusuales").
La siguiente lista muestra algunos problemas comunes.
Durante la vista previa de edición, una plantilla actúa como si estuviera en "modo de depuración" y mostrará cualquier texto o el resultado de un cálculo o rama lógica.
Al insertar texto de impresión de depuración (como "AQUÍ1" o "AQUÍ2"), se puede deducir el flujo de la lógica entre las partes del texto impreso.
Existen algunas restricciones que a menudo sorprenden (o vuelven a sorprender) a los usuarios. Quizás el problema más común sea pasar datos con signo igual .
Un error común es intentar {nowrap} una línea que contiene un "=" y no se muestra nada:
Un problema relacionado es mostrar un tubo de barra vertical "|" dentro de los parámetros de la plantilla, usando "|" o la plantilla explosiva: {{!}}. Se pueden encontrar otros códigos en la página wp:CODES , como una tabla de códigos de caracteres comunes.
Hay muchos, muchos trucos para depurar, y la mayoría de los problemas de las plantillas se pueden identificar en unos pocos minutos, utilizando una combinación de técnicas de depuración, como insertar texto de impresión de depuración y volver a corregir para verificar si hay funciones if no cerradas o comentarios no cerrados, en áreas modificadas recientemente. Se podría realizar un escaneo en busca de comentarios no cerrados "<!-- -->" con una herramienta HTML simple como verificador de sintaxis , porque son comentarios de estilo HTML, a menos que los tokens "}}" confundan el problema.
En general, es mejor realizar sólo unos pocos cambios a una plantilla, a la vez, para probar primero los resultados y luego volver a examinar las (pocas) áreas que se cambiaron para buscar errores comunes. Por ejemplo, si planea cambiar 5 áreas en una plantilla, simplemente cambie un lugar primero y pruebe los resultados, luego, cuando esté seguro, repita o expanda el cambio en otras áreas.
En comparación, cambiar 20 puntos y ejecutar una prueba podría llevar 100 veces más tiempo para identificar un nuevo error simple, mientras se intenta adivinar cuál de las 20 áreas había introducido el nuevo error. En los casos típicos de correcciones de errores, 1 de cada 10 cambios introducirá otro error más. Entonces 20 cambios predecirían 2 nuevos problemas (al menos).
Como red de seguridad (o bote salvavidas), los programadores a menudo guardan varias versiones anteriores de una plantilla, como en archivos de texto de computadora numerados, y luego, en caso de un nuevo lío complejo, guardan la versión actual en otro lugar y luego simplemente regresan a una plantilla. versión anterior probada y volver a introducir algunos cambios con más cuidado. En muchos casos, el peor error se puede detectar rápidamente en la revisión anterior, lo que permite restaurar toda la versión actual guardada para volver a aplicar la corrección de errores y continuar, sin tener que volver a trabajar todos los cambios en la revisión anterior anterior (como un viaje temporal en el viejo "bote salvavidas").
Aunque la mayoría de los errores son causados por cambios recientes, pueden quedar "errores durmientes" de hace semanas o meses, como un comentario no cerrado que devoró una sección de código rara vez utilizada, hasta que las ediciones recientes activaron esa sección del marcado.