DAE 2018: algo está sucediendo…

Primero de mayo, feriado, día particular: no solo tenemos hoy dos entradas (ya ni sé cuántos años hace que no lograba esto), ¡la segunda de ellas es un pequeño informe de avance sobre la próxima versión de «Domando al escritor»!:

Como verán del conteo de páginas y de la estructura que muestra el navegador, pues que he entrado con hacha y martillo a cambiar absolutamente todo. Sí, algunos párrafos individuales han sobrevivido, pero mayormente no ha quedado nada en su lugar: ¡la próxima versión va a ser un libro completamente nuevo!

Lo cual quiere decir que me llevará más tiempo del originalmente previsto el completarlo.

Pero bueno, aunque suene contradictorio los retrasos también estaban en los planes 😉

Anuncios

Dos novedades de LibO Writer 6.1

Faltan aún algunos meses para que la versión 6.1 esté disponible (mañana es la primera sesión de «cacería de errores» para el alfa 1), pero ya pueden verse algunas de las interesantes novedades que vendrán en la próxima versión «mayor» de este popular programa.

Hoy hablaré de dos novedades que resuelven dos reportes que abrí en su momento, por lo que puedo decir que estoy más que contento con el desarrollo del programa.

Títulos en dos líneas

Esto responde a un pedido de mejora que completé hace menos de un año

Bug 112384 Chapter Numbering: Allow line breaks for “separator, after” in the Chapter Numbering dialog

Básicamente se ha agregado la posibilidad de separar automáticamente la numeración de un título del texto del mismo mediante un quiebre de línea, lo que permite la creación de títulos en dos líneas

¡No más trucos! Esto simplificará enormemente la redacción de la próxima versión de mi libro…

Mejoras en la «vista en árbol» del navegador

Corregir esto llevó más tiempo, más precisamente siete años, pero también ha sido implementado, ¡finalmente!

Bug 36308 [UI]Change behaviour for “tree view” on Writer’s Navigator

Aquí el problema estaba en que la «vista en árbol» de los títulos en el navegador tenía hasta ahora un serio problema de usabilidad: al hacer doble clic en un título no solo Writer me llevaba allí, también hacía colapsar toda la rama lo cual obligaba a abrir nuevamente, uno por uno, cada nivel si deseábamos luego volver al punto de partida. Esto ahora ha sido corregido y la única forma de abrir o cerrar cada rama del navegador es con los «triángulos» a la izquierda: el doble clic solo sirve para «transportarse» al título en cuestión.

No pongo captura de pantalla porque visualmente no ha cambiado nada: es en el uso donde uno puede experimentar este pequeño gran cambio.

¡Qué alivio! Este problema era por lejos uno de los que más me molestaba al tener que utilizar Writer.

¡Y hay más!

Para ver la lista (creciente) de cambios solo hay que consultar las «release notes» para esta próxima versión.

Por algo se empieza: un primer borrador de la portada de DaE, ed. 2018

Y bueno, la portada del libro sobre LYX me ha quedado tan bien que ciertamente tenía que seguir con la misma línea de… ¿humor? Ya juzgarás, lector.

Eso sí, no solo está sujeta a mejoras y cambios (¡bienvenidas las sugerencias!): por el momento es lo único que he hecho sobre el tema por lo que a no entusiasmarse que terminar el libro me llevará bastante tiempo.

Será la edad, qué vamos a hacerle. Y la agenda, que bien pocos son los huecos que le quedan.

En fin, aquí está:

Y sí, Glamdring está brillando en azul, que la referencia es al libro, nunca a las películas.

La fuente tipográfica principal es Cochineal, que me parece usaré en todo el libro con la opción +swsh. Ya veremos. Las otras fuentes son Ki Comic, Kleymissky y TeX Gyre Chorus.

Esas cosas, que el pincel de clonar formato no puede pasar.

Writer: Alineación en listas numeradas y viñetas

El principal riesgo de conocer bien algo es no prestarle demasiada atención cuando se lo hace o, peor aún, cuando se lo explica, lo cual inevitablemente lleva a errores. En fin, que uno se confía y mete la pata. Pero el problema se vuelve realmente grave cuando la metida de pata pasa inadvertida: el error queda y queda, le pasamos por arriba y no lo vemos ya que no le estamos prestando la debida atención.

Esto me ha sucedido con la explicación que en mi libro hago del tema que da título a esta entrada: está absurdamente mal y presenta un error grosero que hoy trataré de corregir, pero confiado como estaba nunca le presté atención y así fue quedando casi sin cambios en las distintas ediciones y a través de los años. Solo cuando se me ocurrió pasar la explicación al inglés tuve el momento de «revelación» que automáticamente lanzó la palma de mi mano derecha hacia mi frente con una importante energía cinética.

En fin, empecemos…


Cuando creamos una lista numerada o una viñeta en Writer o bien editamos un estilo de lista, en la pestaña Posición nos encontramos con algo como lo siguiente

¿Pero qué significa cada campo de entrada y cada menú desplegable?

Por cada «nivel» de una lista (columna de la izquierda) podemos configurar la posición y el alineamiento de los números y el comportamiento del margen izquierdo del párrafo.

Alineada a (1) indica dónde va la numeración, pero como los números claramente tienen un ancho también será necesario indicar dónde en el número estamos midiendo su posición y para esto tenemos el menú Alineación de numeración: con Izquierda (opción por defecto) indicamos que el número debe comenzar en la posición indicada (es decir, la posición de referencia se toma a la izquierda del número), con Derecha indicamos que el número termina en esa posición (los números van antes del marcador, el cual, claramente, queda a la derecha) mientras que con Centrado decimos que el número debe estar, en fin, centrado 🙂

Numeración seguida por (2) indica cómo la numeración debe separarse del texto (si se selecciona «tabulador» se podrá indicar dónde va a terminar ese tabulador con la opción Tabulación en) mientras que Sangrar en (3) indica el sangrado izquierdo del párrafo como un todo (excepción hecha de la primera línea, por supuesto, que eso está controlado por Numeración seguida por).

He configurado las tres listas de la captura de pantalla anterior para que comiencen en 9, así se ve más claramente cómo afecta la alineación a los números. Las tres tienen el separador entre número y texto como tabulador. También configuré un sangrado mayor al tabulador para que así se vea claramente su efecto.

La numeración de la primera lista está alineada «a la izquierda», la de la segunda está «centrada» mientras que la tercera está «a la derecha». La posición del tabulador y de la sangría de párrafo han sido configuradas de la misma forma en las tres listas.


Ahora sí. Trataré de estar más atento para ver qué otros líos me han pasado por debajo del radar estos años y así corregirlos… Al menos este tema estará bien en la próxima edición del libro.

Digo, eso espero.

Estimado lector, si encuentras otro gazapo, ¡por favor avisa!

Fondo de página en Writer (LibO 5.4 y posteriores)

Este artículo es una actualización de otro muy antiguo (¡del 2011!) sobre el mismo tema. Mucha agua ha pasado bajo el puente y a partir de LibreOffice 5.4 todo es más simple, por lo que en lugar de actualizar el artículo viejo he decidido reescribirlo.


Introducción

Supongamos que queremos crear un documento «particular» en el cual tengamos control total del fondo de página y de los márgenes del texto. Algo como lo que puede verse en la siguiente imagen:

El desafío tiene varias partes, por lo que vayamos por orden.

Utilizar un fondo personalizado

Al editar un estilo de página en la pestaña Área tenemos varias imágenes que vienen ya con el programa, pero agregar una nueva no es un problema: simplemente presionamos el botón Añadir/importar

Podemos elegir cualquier tipo de imagen, incluso imágenes vectoriales (es decir, no hacer caso a eso de «mapa de bits»), además de seleccionar las opciones de posición en la página, escalado, etcétera.

Aplicar un fondo a toda la página

Cuando se aplica un color o un fondo a una página en realidad estamos modificando solo el «área de texto», es decir, si elegimos en nuestro estilo de página que el fondo sea de un cierto color, o que muestre una determinada imagen los márgenes quedarán excluidos de esta configuración.

NOTA: En Writer, tanto la cabecera como el pie de página pertenecen al «área de texto».

¿Cómo podemos aplicar fondos a toda la página?

Dos simples pasos:

  1. Configurar los márgenes de la página a cero (pestaña Página)
  2. En la pestaña Bordes del estilo de página, bajo Espaciado al contenido escribir el tamaño que tenían los márgenes (si se desean «márgenes» distintos en los cuatro costados de la página, desmarcar «Sincronizar»)

NOTA: en versiones de LibreOffice anteriores a la 5.4 era necesario aplicar un borde para que esto funcionara, pero este pequeño inconveniente ha sido finalmente superado.

Construir «huecos» en el texto

Para lograr el «hueco» en el texto, o bien un margen «libre» tendremos que recurrir a las herramientas de dibujo.

Activando la barra de herramientas de dibujo en Writer podemos crear una figura cerrada mostrando el perfil deseado. Ahora debemos seleccionar el dibujo así creado y con un clic derecho → Ajuste marcar tanto Ajuste de página como Contorno para lograr que el texto siga el perfil de la figura. Ahora, con la figura seleccionada, debemos fijar el anclaje de la misma al párrafo cuyo «perfil» deseamos modificar y, en las Propiedades del objeto de dibujo seleccionar una transparencia del 100 %.

¡Todo listo!

Más sobre el difícil arte de las expresiones regulares

Esta vez va de números. Supongamos que queremos localizar en un documento Writer números entre 1 y 50, pero no mayores.

La expresión

\b\d\b

encontrará números de un solo dígito desde 0 a 9. La expresión

\b\d{1,2}\b

encontrará números de uno o dos dígitos, desde el 0 hasta el 99… siempre que no tenga una letra pegada. Por ejemplo no encontrará el número en a29. Si queremos localizar el número a toda costa necesitamos algunas condiciones con las «look-ahead» y «Look-behind assertions» más la condición lógica «o» que se consigue con la barra vertical. Algo así

(?<=[^\d]|^)\d{1,2}(?=[^\d]|$)

Lo que busca esta expresión es uno o dos dígitos que se encuentran entre algo que no es ni un dígito ni un inicio de párrafo y otra cosa que tampoco es un dígito o un final de párrafo.

Ya estamos más cerca. Para limitar el rango tendremos que aplicar un poco más de «selección»:

(?<=[^\d]|^)([1-5]?\d)(?=[^\d]|$)

ya busca entre 1 y 59, pero no 60 o mayores. ¡Ya estamos casi allí!

Contemplad ahora la expresión definitiva:

(?<=[^\d]|^)([1-4]?\d)(?=[^\d]|$)|50

Dejo como ejercicio para el lector el interpretar la expresión. Eso sí, es altamente aconsejable repasar el capítulo sobre expresiones regulares de mi libro antes de intentarlo.


Este interesante ejercicio de expresiones regulares se planteó hace unas semanas en la versión italiana de ask.libreoffice. Me llevó un buen rato el darme cuenta de cómo resolverlo… y aún más el recordar de dejarlo por escrito en el blog. Pero finalmente aquí está.

Camino a LibO 6.0: las primeras versiones de desarrollo

En estos días me he tomado un momento para descargar la versión «archive» (nada de rpm o deb: el programa ya compilado y simplemente empaquetado en un tar.gz, listo para descomprimir y usar) de la versión de desarrollo de LibreOffice 6.0. He aquí algunas de las novedades que he encontrado.

Caracteres especiales

La herramienta para insertar caracteres especiales ha dado un salto de calidad realmente importante. El botón de insertar caracteres especiales se ha convertido ahora en un menú que ofrece no solo el abrir la herramienta de base, sino también una lista de los caracteres usados recientemente y otra de los «favoritos»

Por si esto fuera poco (que no lo es) al abrir el diálogo principal nos encontramos con una herramienta mucho más potente que no solo nos permite configurar los favoritos con un simple clic derecho: también nos da información valiosa del carácter a insertar y la posibilidad de buscar caracteres a través de sus nombres unicode (la caja «search» arriba a la izquierda)

Menús de personalización

La herramienta que se abre en Herramientas → Personalización ha sido completamente reescrita, organizando todos sus componentes y ofreciendo a su vez un campo de búsqueda que simplifica la configuración de menús y atajos de teclado

Barra de estilos

Aún no está disponible la caja con los estilos de carácter, pero ya tenemos algunas mejoras que vuelven a esta barra realmente útil. Por ejemplo, los botones de los estilos de carácter «saben» (y «lo comentan» iluminándose) cuál es el estilo de carácter aplicado al texto sobre el que se encuentra el cursor, por lo que el botón del estilo de carácter «predefinido» solo se señala cuando no hay un estilo de carácter aplicado al texto

Navegar por objetos

En la barra de búsqueda (Ctrl-F) se ha agregado un cómodo menú que permite seleccionar categorías de objetos para «saltar» rápidamente entre ellos

Seleccionando el ítem que nos interesa podemos saltar entre títulos, tablas, imágenes, secciones… lo que necesitemos, simplemente usando los dos botones de la derecha.

Algunos problemas

LibreOffice usa un sistema llamado VCL para «dibujar» su interfaz gráfica. Este sistema tiene algunos «plug-in» para conectarse con gtk2, gtk3 y KDE4. Este último plug-in parece tener un problema en la versión de desarrollo que he probado: no es posible insertar acentos. Seguramente esto se solucionará a tiempo para la versión final pero mientras tanto ,

ACTUALIZACIÓN: El problema ya está resuelto. Aún así hasta tanto no implementen el plugin para Plasma casi que es mejor utilizar la interfaz gtk3

es muy simple el iniciar LibreOffice con su interfaz gtk3 incluso en un sistema Plasma: abriendo un terminal virtual en la carpeta con el guión de inicio del programa podemos lanzar Writer con

SAL_USE_VCLPLUGIN=gtk3 ./swriter

Con la interfaz en gtk3 todo parece funcionar correctamente.

Conclusión

La versión 6.0 de LibreOffice está tomando buena forma, con características sumamente interesantes. La interfaz gtk3 ha avanzado mucho y, seleccionando el tema correcto, cuadra en un entorno plasma incluso mejor que la interfaz KDE4. Realmente LibreOffice 6.0 se viene con todo en regla para convertirse en una de las actualizaciones más interesantes de la historia del proyecto.

Para más información sobre las novedades: LibreOffice 6.0: Release Notes (en inglés y en fase de composición).