«Limpiando» archivos doc



Introducción 

Los filtros para importar archivos Word en Writer son tan buenos que nos pueden llegar a crear la ilusión de que son perfectos, o peor aún, de que podemos continuar editando un archivo generado en otro programa sin mayores inconvenientes. 

Para destruir este mito, propongo al lector el siguiente ejercicio: abra un documento Word en Writer y mire el editor de estilos y formatos (F11) en la sección «Estilos de Carácter», seguramente se encontrará con algo semejante a lo que muestra la imagen: 

La implementación de estilos en Word es realmente penosa, por lo que al importar un documento fuertemente formateado en nuestro Writer nos encontraremos con mucha «basura» que podría crearnos problemas. 

En el archivo particular que utilicé para este ejemplo (unos apuntes de física dados por un profesor de secundaria a sus alumnos) he contado 57 estilos de carácter llamados WW8*. En el caso particular que enfrente el lector podrían ser menos… o más. 

Ciertamente existen documentos Word (los más simples) que tienen pocos o incluso ninguno de estos estilos extraños, pero son la excepción, no la regla. 

El problema con esta marea de estilos espurios inicia cuando queremos cambiar el formato del documento: dado que los estilos de carácter y el formato directo tienen precedencia sobre los estilos de párrafo, si queremos cambiar por ejemplo la fuente tipográfica utilizada en el documento nos arriesgaremos a una terrible migraña ya que editar el estilo de párrafo correspondiente no alcanza: Podría suceder que algunos párrafos cambien de fuente mientras otros no, o bien que fragmentos de un párrafo cambien mientras el resto no… 

Y a esto debemos sumar el formateado directo, algo muy común en documentos Word y que produce efectos impredecibles en el texto. 

¿Entonces? En este artículo presentaré un método para «limpiar» documentos de formatos espurios que es mucho más simple de lo que parece a simple vista, por lo que pediré al lector que siga con atención (y paciencia) cada parte: una vez comprendido el procedimiento la mayor parte del trabajo queda hecha en cuestión de minutos. 

Es recomendable que el lector esté familiarizado con los conceptos de estilo y formato, para lo que puede consultar mi libro: Domando al escritor o al menos leer las «versiones resumidas» de alguno de sus capítulos que se encuentran en las guías listadas aquí y la guía sobre expresiones regulares, de las cuales este artículo da varios ejemplos. 

Y por sobre todas las cosas, ES ALTAMENTE RECOMENDABLE TRABAJAR EN UNA COPIA DEL DOCUMENTO, NO EN EL DOCUMENTO ORIGINAL

Cuantas más precauciones se tomen, mejor. 

Marcando el texto 

La idea en todo esto será «marcar» de alguna manera el texto cuyo formato no queremos perder (las cursivas, negritas, los encabezados…), borrar completamente el formato y luego utilizar las marcas para reconstruir sólo lo que nos sirve. 

¡No, no abandonen la página! Realmente es mucho más simple de lo que parece. 

Si somos afortunados, el usuario Word al cual estamos comenzando a maldecir habrá utilizado distintos encabezados para los títulos de cada parte del documento. De ser así, será suficiente utilizar el Navegador (F5) para ir a cada encabezado y colocarle una «etiqueta» (si no ha utilizado estilos sino formato directo, pues tendremos que utilizar la rueda del ratón…). Por ejemplo, a los encabezados de primer nivel (títulos de capítulo) podríamos anteponerles una etiqueta <e1>, a los de segundo nivel (títulos de sección) una etiqueta <e2>… 

También podríamos marcar con etiquetas párrafos a los que queremos darle un formato particular, como notas, listas, etcétera. Queda a la imaginación del lector el elegir la mejor etiqueta para cada situación.

Marquemos ahora el texto en cursiva (o en negrita, o subrayado —¿existe aún gente que subraya texto?— el procedimiento es el mismo). 

Para eso abrimos el menú de «Buscar y reemplazar», en «Más opciones» seleccionamos «Expresiones regulares», en «Buscar» escribimos 

(.*) 

Con el cursor aún en «Buscar» clickamos el botón «Formato…» y en «Estilo» dentro de la pestaña «Fuente» seleccionamos lo que nos sirve (si queremos subrayados, tachados, colores… debemos utilizar la pestaña «Efectos de fuente»). Luego, si la etiqueta elegida para «cursiva» es <c>, en «Reemplazar por» escribimos
<c>$1<c> 

 

Clickando ahora en «Reemplazar», el texto en cursiva se irá «marcando» (es conveniente NO marcar el texto cuyo formato corresponda a la definición del párrafo, como por ejemplo los encabezados: esos párrafos tendrán el formato correcto al aplicar el correspondiente estilo de párrafo). 

Reconstruyendo el formato 

Tenemos ahora solo dos pasos por realizar, el primero de los cuales puede hacerse por dos caminos diferentes: 

Paso 1: borrando el formato

Camino 1: un nuevo documento 

Es el camino preferible, aunque si el documento tiene muchas imágenes, tablas o notas al pie puede volverse complicado.

Se copia el contenido del viejo documento ya etiquetado, se abre un nuevo documento vacío, se aplica en él el estilo de párrafo principal que se usará (por ejemplo, Cuerpo de texto) y se hace Editar → Pegado especial → Texto sin formato (o Ctrl+Mayúsculas+V → Texto sin formato). De esta forma ninguno de los estilos espurios pasará al nuevo documento. 

Camino 2: borrando formato localmente

Se selecciona una porción del texto ya etiquetada, se hace Ctrl+M para borrar el formato manual y los estilos de carácter y luego Ctrl+0 (cero, no «o») para aplicar el formato de párrafo «Cuerpo de texto».

Haciendo esto la definición de los estilos espurios no es eliminada, pero estos dejarán de estar aplicados al texto por lo que se los podrá eliminar sin problemas (click derecho sobre el nombre del estilo → Eliminar). Si los estilos a eliminar son muchos, podremos simplemente seleccionar el contenido de todo el documento (Ctrl+E), copiarlo (Ctrl+C) y pegarlo «normalmente» (Ctrl+V) en un documento nuevo: solo los estilos utilizados pasarán al nuevo documento. 

Paso 2: recuperando el formato 

Comencemos por lo más simple: los encabezados. En «Buscar y reemplazar» asegurémonos que ninguna indicación de formato quede de cuando etiquetamos el texto, por lo que con el cursor en «Buscar», clickemos «Más opciones» y finalmente el botón «Sin formato». 

Ahora escribamos <e1> en «Buscar» y clickemos «Buscar todo»: todas las instancias de <e1> en el documento estarán seleccionadas. Sin tocar otra cosa, hagamos Alt+tab para que el foco quede en la ventana principal de Writer y luego Ctrl+1 (un uno, no una «ele») para aplicar el estilo de párrafo «Encabezado 1» (Ctrl+2 aplica «Encabezado 2»…) ¡Listo! Todos los párrafos etiquetados con <e1> son ahora «Encabezado 1», por lo que solo nos queda volver a la ventana de búsqueda y clickar «Reemplazar todo» (asegurándonos que «Reemplazar por» esté vacío) para borrar las etiquetas. 

Lo mismo podemos hacer con los demás encabezados y párrafos especiales. 

Ahora nos toca el texto en cursiva. (para comprender lo que sigue, lea mi guía a las expresiones regulares en Writer). Para esto, en «Buscar» escriba  

(<c>)([^<]*)\1 

en «Reemplazar por» 

$2 

y con el cursor aún en «Reemplazar por» clicke en el botón «Formatos» y seleccione «Cursiva». Active la búsqueda con expresiones regulares y presione «Reemplazar todo» 

¡Listo! La cursiva ha sido recuperada. Un procedimiento análogo puede realizarse con la negrita/subrayado/etcétera. 

Casos particulares 

Tablas 

Para borrar formatos espurios en tablas es conveniente tratarlas como texto: con el cursor dentro de la tabla, hacemos Tabla → Convertir → Tabla en texto, seleccionamos «Tabulador» como «Separador de texto» y aceptamos; con esta «tabla convertida en texto» hacemos lo que hemos hecho en las secciones anteriores para borrar formatos espurios, luego la seleccionamos y hacemos Tabla → Convertir → Texto en tabla, nuevamente con «Tabulador» como «Separador de texto». 

¡Listo! Tenemos ahora una tabla «limpia»… ¡con el estilo de párrafo equivocado!: tenga en cuenta que al hacer esto el contenido de la tabla utilizará el estilo de párrafo «Cuerpo de texto» en lugar del estilo de párrafo «Contenido de tabla». 

Un poco de «ajuste fino» será necesario… 

Note también el lector que al convertir el texto nuevamente en tabla se tienen varias opciones de formatación para explorar, en particular el «formateado automático». 

Notas al pie de página 

Cuando se pega texto «sin formato», las eventuales notas al pie de página que existieran no serán copiadas, solamente el símbolo del «ancla» se copiará. En este caso es conveniente utilizar el «camino 2» de más arriba para borrar el formato (seleccionar, Ctrl+M, Ctrl+0) ya que de esta forma las notas al pié no se perderán. 

Cosas a tener en cuenta 

Se debe prestar atención si quedan «etiquetas anidadas». 

Por ejemplo, si en algo así: 

<n>texto en negrita <s>negrita y subrayado<s> negrita<n> 

utilizamos primero (<s>)([^<]*)\1 y luego (<n>)([^<]*)\1 para buscar y reemplazando en cada caso con $2 en el formato correspondiente el subrayado desaparecerá, mientras que si lo hacemos en el orden inverso, la negrita no será aplicada

Otro problema que puede presentarse es el maldito abuso de «símbolos especiales» que casi todos realizan. Generalmente cuando alguien tiene que insertar, digamos, una letra griega (por ejemplo α, β…) recurre a «Insertar símbolos», lo cual está bien, y elige otra fuente, como por ejemplo Symbol, lo cual está muy mal: La mayor parte de las fuentes tipográficas utilizables de la actualidad tienen un amplio rango de caracteres en diferentes escrituras (que después de todo para eso se ha inventado el «unicode»): cualquier fuente tiene una basta selección de tipos griegos, cirílicos, hebreos, símbolos matemáticos, fonéticos… no aprovecharlos es no solo un desperdicio, sino principalmente una fuente de problemas a la hora de dar formato al texto. 

Generalmente no es necesario utilizar otra fuente tipográfica para incluir símbolos especiales, pero la gente lo sigue haciendo (un resabio de la época en la cual las fuentes solo tenían 256 caracteres, supongo), por lo que al borrar el formato puede suceder que un «θ» introducido con la fuente symbol se convierta en una «q»… 

Una forma de superar este problema sería el buscar todas las instancias de estas fuentes particulares y cambiarlas a símbolos de la misma fuente utilizada en el párrafo. Para esto último puede resultar de particular utilidad una extensión llamada «Compose special characters» la cual facilita enormemente la inclusión de caracteres especiales tanto en Writer como en Calc. 

Conclusión 

Me he cronometrado: si el documento no es demasiado problemático (sin etiquetas anidadas, pocas tablas, pocas notas al pie de página), aplicar las recetas de este artículo a un documento de algunas decenas de páginas no lleva más de 5 minutos y deja un archivo perfectamente organizado en el cual podremos trabajar tranquilos sin preocuparnos de cuestiones de formato. 

Evidentemente, cuanto más complejo sea el archivo de origen más trabajo nos costará el limpiarlo, pero al mismo tiempo mayor será la necesidad de realizar esta limpieza: trabajar en un archivo grande y complejo lleno de formateo directo y de estilos de carácter espurios es una verdadera pesadilla. 

Actualización (8/7/2009)

En el foro en español de OOo se ha dado este interesante hilo, en el cual se agrega información a lo aquí discutido.

 

Volver a Usando OpenOffice.org      Volver a la página principal