3. Aplicaciones para la búsqueda de código
Cuando se trabaja en un sitio web realizado con un gestor de contenidos, a menudo se presenta la necesidad de localizar un fragmento de código sobre el que se debe efectuar un cambio, o una traducción, o simplemente cualquier tipo de comprobación. La tarea no tendría mayor complicación si no fuera por el hecho de que estas aplicaciones son criaturas de trato difícil, a veces con miles de archivos (por poner un ejemplo, la versión 1.9.7+ de Moodle, la más actualizada y estable en el momento de escribir estas líneas, contiene más de 5.000 archivos, de los cuales más de 2.300 tienen la extensión php). Localizar en una selva tan frondosa una cadena de texto no es fácil, a no ser que se utilicen herramientas especiales, o, si se tiene acceso a la consola de los sistemas Linux que utilizan la mayoría de servidores (no es mi caso), comandos como el potentísimo grep.
Cuando utilizo Linux, generalmente en el trabajo, suelo hacer búsquedas con este comando, aunque en tareas bastante específicas y que tienen poco que ver con el objetivo de este artículo, como la búsqueda de monstruosidades diversas en el tráfico de los routers y cortafuegos que gestionamos en el PNTE. Sin embargo, la mayor parte de la actividad de edición web que habitualmente llevo a cabo la realizo sobre Windows, y a tal efecto hago uso del Windows Grep, una utilidad estupenda que permite realizar búsquedas desde el gestor de archivos del sistema operativo, mediante el botón contextual (figura 1).
Supongamos, por ejemplo, que ignoro en qué parte de WordPress está definida la etiqueta condicional is_home. Por supuesto, podría buscarla en Google o adentrarme en el Codex de WordPress, pero también puedo acudir a la carpeta en la que tengo descomprimida la última versión de esta aplicación, hacer clic con el botón derecho y obtener un interfaz de búsqueda que de forma rapidísima ofrece la información deseada (véanse las figuras 2 y 3).
En combinación con Firebug, la extensión para Firefox sobre la que ya traté en la primera entrega de esta serie, Windows Grep forma una pareja de aplicaciones colosal: aquélla sirve para localizar las primeras pistas que permitirán aproximarse a la resolución de un problema determinado, y ésta permite identificarlo sin asomo de duda.
4. Aplicaciones para la comparación de versiones diferentes del mismo archivo
Los gestores de contenidos, así como sus elementos accesorios, es decir, las traducciones, extensiones y plantillas, se actualizar con tanta frecuencia que no es difícil perder el hilo de los cambios. Por otra parte, a veces puede ocurrir que queramos mantener, sin actualizarla, una versión determinada de una aplicación, plugin o tema, bien porque hemos realizado cambios “a mano” en la aplicación o en sus componentes, bien porque determinada configuración de servidor es incompatible con una actualización, o por cualquier otro motivo. En todas estas circunstancias, se hace evidente la utilidad de aquellas aplicaciones que nos permiten verificar las modificaciones entre dos versiones cualesquiera de uno o varios archivos.
Los mejores proyectos para la gestión de contenidos ofrecen herramientas específicas a tal efecto (a título de ejemplo, véase la diferencia entre las versiones 2.8.6 y 2.9.1.1 del archivo wp-signup.php en el Trac de WPMU), pero siempre conviene tener a mano alguna alternativa para ejecutarla en local. Las últimas versiones del excelente editor Notepad++ , ya mencionado en mi artículo del pasado día 20, incorporan un plugin de comparación de archivos (véase la figura 4), pero también pueden utilizarse herramientas específicas, como CSDiff (figura 5), una aplicación bastante escueta, o la mucho más completa WinMerge (figura 6). Utilizar una u otra va en gustos y en costumbres, pero lo cierto es que cualquiera de ellas resulta de enorme utilidad para verificar los cambios entre versiones y afrontar los posibles problemas que puedan derivarse de una actualización.
[…] he utilizado una de mis herramientas favoritas de edición web, de la que ya traté en un artículo anterior de este blog. Me refiero a Windows Grep, una utilidad que en tareas complejas de búsqueda de código ofrece […]