stringtranslate.com

Wikipedia: plantillas de depuración

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").

Problemas comunes

La siguiente lista muestra algunos problemas comunes.

E1. Pantalla: {{#if: significa: una función if sin cierre "}}"
E2. Pantalla: {{#switch: significa: Una función de interruptor sin cierre "}}"
E3. Pantalla: {{ 1. switch: significa: función de interruptor abierta dividida de "{{" en la línea anterior
E4. Mostrar: --> significa: comentario de estilo HTML sin abrir
E5. Visualización: }} significa: cierre adicional "}}"
E6. Mostrar: }} }} significa: Posible plantilla sin abrir "mytemplate|x}}"

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.

  • Vuelva a verificar si hay comentarios no cerrados: <!--xxx-> no está cerrado, necesita "-->"
  • Coloque el texto de impresión de depuración fuera de las llaves: {{__}}AQUÍ{{___}}

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.

Restricciones inusuales

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 .

  • Para pasar datos "=": coloque el número de parámetro "1=a=b" o encerrelo en un parámetro nulo: {{{|a=b}}}.

Un error común es intentar {nowrap} una línea que contiene un "=" y no se muestra nada:

  • {{nowrap |y = x + 3}} Resultado: (nada)
  • {{nowrap |1=y = x + 3}} Resultado:    y = x + 3
  • {{color |naranja oscuro| Error: x=0}} Resultado:    naranja oscuro (nada)
  • {{color |naranja oscuro| 2=Error: x=0}} Resultado:    Error: x=0
  • {{color |naranja oscuro| {{{|Error: x=0}}} }} Resultado:    Error: x=0

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.

Haz pequeños cambios y prueba

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).

Mantenga las revisiones antiguas como botes salvavidas.

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").

Tenga cuidado con las chinches durmientes en casos raros

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.

Ver también