Los elementos del estilo digital (1): Citar poesía

En Los elementos del estilo tipográfico, Robert Bringhurst sugiere una buena práctica para diagramar versos dentro de un texto, ya sea citados o como parte de la narración:

Generalmente, la poesía se compone en bandera derecha, y las citas en verso dentro de la prosa no deberían carecer de esa disposición. Pero para distinguir una cita en verso de la prosa que la rodea, debería tener espacio a la izquierda o estar centrada con respecto a su verso más largo. El centrado es preferible cuando el ancho de la columna de la prosa es sustancialmente más largo que los versos.1

Este recurso es cada vez más raro, tanto en libros impresos como digitales, asumo que porque Indesign no hace que este proceso sea intuitivo (si bien en realidad no es tan difícil). Lo usual hoy es tirar los versos «a la izquierda», como si fuera una cita normal, lo que —dependiendo de la pantalla, por supuesto— deja mucho más espacio a la derecha y el poema desalineado (voy a aplicar el mismo ejemplo que usa Bringhurst, Oda a la tipografía, de Pablo Neruda):

Debajo,

de las nuevas pirámides escritas

la letra

estaba viva,

el alfabeto ardiendo,

las vocales,

las consonantes como

flores curvas

Por suerte, cuando diagramamos para texto fijo (impreso o PDF), podemos darnos el tiempo de centrar cada poema por separado hasta dejarlo dejarlo como queremos. Pero esto no es posible en la diagramación de texto fluido, en la que no sabemos el tamaño de la caja-pantalla, sea un monitor, una tablet, un celular, un ereader o, quién sabe, puede que hasta un reloj inteligente o algo que ni siquiera se inventa todavía.

Una solución que podríamos intentar —y que lamentablemente algunos sitios web y libros digitales practican— es centrar el texto, lo que por supuesto se ve horrible:

Debajo,

de las nuevas pirámides escritas

la letra

estaba viva,

el alfabeto ardiendo,

las vocales,

las consonantes como

flores curvas

Entonces, ¿cómo podemos armar un diseño para poesía que siga la recomendación de Bringhurst en un entorno de texto fluido como el del libro digital EPUB (es decir, usando solo HTML y CSS)?

La respuesta común es usar contenedores <div>, pero esto tiene algunos problemas: i) en algunas apps y dispositivos más antiguos este contenedor no se corta bien entre páginas, por lo que los versos pueden terminar «despareciendo» en los márgenes superiores e inferiores; ii) más importante aún, esto de plano no funciona en dispositivos Kindle, que ignoran los contenedores y dejan el poema alineado a la izquierda, como si no existieran. Y como yo prefiero crear archivos que sean compatibles con la mayor cantidad de dispositivos posibles (incluso después de la conversión a Kindle), tengo que buscar otra alternativa.

La única solución que funciona bien en todos los entornos en que he probado hasta ahora consiste en usar una «tabla escondida» de una sola celda, que envuelve los versos como una unidad y permite centrarlos todos a partir del verso más largo:

Debajo,

de las nuevas pirámides escritas

la letra

estaba viva,

el alfabeto ardiendo,

las vocales,

las consonantes como

flores curvas

Si destacamos los elementos que componen este bloque, queda clara la estructura:

Debajo,

de las nuevas pirámides escritas

la letra

estaba viva,

el alfabeto ardiendo,

las vocales,

las consonantes como

flores curvas

En rojo vemos el borde de la tabla, que envuelve el poema alrededor de su línea más larga, mientras que en cian tenemos los márgenes laterales, que centran la tabla. Todo esto envuelto en un bloque de cita —que yo marco con su propia clase, en caso de que quiera modificarlo o identificar todos los similares a futuro—, que le da el tamaño del texto más pequeño y los márgenes superior e inferior. El HTML se ve así:

<blockquote class="poetry-quote">
  <table class="poetry">
    <tbody>
      <tr>
        <td>
         <p class="poetry-verse">Debajo,</p>
          <p class="poetry-verse">de las nuevas pirámides escritas</p>
          <p class="poetry-verse">la letra</p>
          <p class="poetry-verse">estaba viva,</p>
          <p class="poetry-verse">el alfabeto ardiendo,</p>
          <p class="poetry-verse">las vocales,</p>
          <p class="poetry-verse">las consonantes como</p>
          <p class="poetry-verse">flores curvas</p>
        </td>
      </tr>
    </tbody>
  </table>
</blockquote>

Nótese que dentro de la tabla <table>, por necesidad debe estar al menos el cuerpo <body>, una fila <tr> y una celda <td>. Finalmente, cada verso se encuentra en su propio párrafo en una clase especial (en este caso, poetry verse), que define la alineación izquierda y una sangría francesa, de modo que las líneas siguientes del verso aparezcan más adelante si superan la caja (más sobre esto en una próxima entrada, espero).

Las partes importantes del CSS para todos estos elementos es el siguiente:

/* --- Poesía --- */
.poetry-quote { /* Solo dejo la clase para citas de poesía, en caso de querer cambiarlo en el futuro, pero ahora no tiene nada de especial */
}

table.poetry {
  border:0; /* Hace que la tabla sea transparente */
  margin: 0 auto; /* 'auto' hace que los márgenes laterales se ajusten al tamaño de la caja */
}

.poetry-verse { /* Hace que el párrafo continúe más adelante cuando el verso supere el tamaño de la caja */
  margin-left:2.4em;
  text-indent:-2.4em;
  text-align:left;
}

Otra ventaja de acostumbrarse a usar tablas para armar poesía es que más tarde resultarán útiles para versos mucho más complejos, que escapan de la línea tradicional y ocupan el espacio de maneras especiales. Planeo escribir un poco más sobre estos formatos más complejos en el futuro, como la poesía o el teatro, porque encuentro que hay muy poco material claro y ordenado al respecto, y menos en español. Es interesante ver qué soluciones se pueden encontrar para tratar de llevar un poco la tradición del papel al mundo digital.


  1. Robert Bringhurst, Los elementos del estilo tipográfico. 4.a edición. Ciudad de México: Fondo de Cultura Económica, 2014. 

Markdown en WordPress

Estoy probando una extensión para WordPress que me soluciona varios problemas de una vez: mi interés por usar Markdown en cualquier oportunidad que me sea posible, y poder hacer algunas cosas en WordPress a las que no siempre se puede acceder con facilidad, como tablas o notas al pie, lo que requiere varios y a veces conflictivas extensiones, que suelen ser también un cacho de configurar y mantener.

Estos problemas y más parecen solucionarse con una única extensión para unir a todas las extensiones: WP Githuber MD, que agrega un editor Markdown en WordPress en vez de Gutenberg. Entre otras varias cosas, Markdown permite armar tablas y notas al pie con relativa facilidad, compatibilidad y de manera nativa, lo que a mí al menos hace el proceso de escritura más limpio y ordenado. Esto de por sí me permite también eliminar dos extensiones que solucionaban a medias mis necesidades.

Markdown tiene algunos problemas, sin duda: no puedo agregar con facilidad videos de Youtube, pies de fotos u otros elementos comunes de WordPress, sin copiar el código HTML directamente, lo cual hará difícil, si no imposible, pasar entradas antiguas a este formato. Tengo que ver si vale la pena arreglarlas o dejar que se desconfiguren un poco cuando borre las extensiones.

Por otra parte, creo que el tener menos opciones es siempre un pie forzado que permite enfocarse en lo importante, así que podría ayudarme con futuras entradas más al grano y sencillas, con menos imágenes y más ideas claras, y por último si quiero poner un video, puedo crear una entrada especial para eso. No sé, veremos cómo avanza esta exploración. Pero le tengo fe a Markdown.

Posdata sobre fuentes y blogs

Le cambié un poco el diseño al blog para que use dos fuentes que siempre me han gustado juntas: Lora y Cabin, con lo cual se acerca mucho más al diseño del otro blog que tuve antes en Tumblr, Obras Completas, que sigue siendo hasta ahora mi diseño favorito, creado a partir de una plantilla en Tumblr que lamentablemente ya no es fácil de conseguir para WordPress.

Posdata sobre WordPress y mayúsculas

Acabo de descubrir que WordPress automáticamente sube la P a su propio nombre en las entradas. Por principio no me gusta, y no tengo idea de cómo arreglarlo… Pero me pareció un detalle interesante de todos modos.

El curioso caso del sangrado fantasma en Kindle

Hace poco me acordé de uno de esos problemas cuya solución puede ser tan obvia que puede llegar a ser imposible descubrirla sin pasarla varias veces por alto. Eventualmente logré encontrarla, por suerte, así que decidí explicarla aquí para quizás ayudar a alguien mientras trabaja en un libro electrónico.

Resulta que al hacer un EPUB en Adobe InDesign y después convertirlo a MOBI o AZW3, suele aparece un extraño error: al abrir una nota al pie en la ventana emergente del lector Paperwhite, a veces la primera línea muestra un enorme sangrado, que desarma por completo la diagramación. El sangrado no aparece en Adobe Digital Editions, iBooks o en Kindle Previewer.1

Nota con sangría fantasma.
Nota con formato correcto.

Después de revisar y probar todas las alternativas que se me ocurrieron, solo pude concluir que el error no proviene de la hoja de estilos. Google tampoco ayudó mucho: apenas encontré dos entradas en foros de Adobe y Mobileread sobre el mismo problema, ninguna con una respuesta clara. Así que tuve seguir dándome cabezazos contra el escritorio por varias horas hasta dar con la solución —como suele pasar— cuando me alejé del computador para hacer otra cosa.

La causa

La culpa, resulta, es de la estructura. Específicamente, la estructura de la nota al pie que InDesign genera de manera automática:

<div class="_idFootnotes">
  <div id="footnote-043" class="_idFootnote">
    <p class="footnote"><a class="_idFootnoteAnchor _idGenColorInherit" href="chapter1.xhtml#footnote-043-backlink">1</a>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras est quam, commodo eu neque at, mattis mollis ligula. Mauris ultricies odio id pharetra elementum.</p>
  </div>
</div>

Sucede que InDesign, con el fin de mejorar la legibilidad para los tontos humanos, agrega esos espacios o indentaciones2 antes de las etiquetas <div> y <p> (al principio de las líneas 2 a 5 en el ejemplo). Por lo general estos saltos no afectan el resultado final, ya que cualquier programa bien armado sabe que debe ignorarlos al momento de mostrar el contenido según el diseño.

Sin embargo, el problema que nos convoca ocurre porque la ventana emergente de Kindle Paperwhite, que no ha sido tan bien programada como el resto de la interfaz, ignora las etiquetas que cuidadosamente hemos puesto y solo muestra el texto sin formato. Esto hace que la indentación aparezca como si fuera parte del texto de la nota, lo que desconfigura el resultado final esperado.

La solución

Para solucionar este caso, basta con eliminar la indentación por medio de una búsqueda en Sigil con comandos GREP3 que eliminen los espacios innecesario en todas las notas sin modificar el resto del contenido. Para eso, podemos ingresar esta búsqueda con expresiones regulares activadas (y cambiando el nombre del estilo al respectivo nombre del estilo de las notas):

\n\s*<p class="estilo-de-la-nota">(.+?)</p>\s*</div>

 La reemplazamos por esto:

<p class="estilo-de-la-nota">\1</p></div>

Y ya está, problema resuelto, las notas se verán impecables con un clic, y nos habremos evitado un dolor de cabeza en durante la diagramación del ebook… al menos hasta que nos topemos con la siguiente causa de dolor de cabeza.


  1. No sé si pasará en otros dispositivos Kindle. Asumo que sí, pero no tengo cómo comprobarlo. Sí sé que no ocurre en la app para Windows o para iOS, que no muestran las notas en ventana emergente tampoco importa qué herramienta use para la conversión: el sangrado permanece. 
  2. La Real Academia Española preferiría que en este contexto use el término sangrado en vez del anglicismo indentación, pero justamente lo que quiero es diferenciar entre el sangrado de texto y la indentación de código. Así que por favor no le avisen a la RAE
  3. En teoría debería servir para cualquier programa que permita comandos GREP, pero en algunos puede funcionar de manera diferente, por lo que habrá que hacer los ajustes correspondientes.