Archivo de la etiqueta: Latex

Documentación para un proyecto con Markdown y Pandoc

Hablé el otro día de una plantilla para documentación que había ayudado a crear a mi hermano para su nuevo proyecto. Como me parece que hicimos un buen curro voy a hablar un poco más de ella, de las características que tiene y de cómo se usa.

La idea

La idea principal es separar el contenido del formato, de tal manera que se pueda escribir en un lenguaje de marcado ligero como es Markdown desentendiéndose por completo del aspecto, que se gestiona en una plantilla para Pandoc. Como la salida es un pdf, la plantilla está escrita en LaTeX, el paso intermedio mediante el cual Pandoc pasa de Markdown a pdf.

Otro tema es el de los metadatos, es decir, el autor, la licencia y otras opciones de control. Este tipo de datos los introducimos en un archivo aparte o en un bloque YAML al inicio del contenido. Así, también se desacoplan tanto del contenido como del formato.

Por último, Ekaitz quería poder crear un documento corto (al que llamaré artículo de ahora en adelante) o uno largo (libro) con la misma plantilla, cosa que hemos conseguido con unos $if$ estratégicamente colocados.

Seguir leyendo →

Lo que he aprendido: registro de cambios en un documento LaTeX con git

Estoy echando una mano a mi hermano con una documentación to guapa para un tema que mejor os cuenta él y me preguntó cómo incluir un registro de cambios en el documento. Un registro de cambios no puede ser muy complejo de hacer si estamos usando git, pensé, así que me puse a investigar las diferentes alternativas, empezando por la opción evidente: git log.

Jugando con git log

Empecemos por los inicios, como todos los que usáis git sabéis mejor que yo, git log nos permite dar un formato al historial de commits con las opciones --pretty y --format. Por ejemplo, podemos mostrar la fecha y la descripción del commit haciendo:

git log --pretty=format:"%ad%x09%s" --date=short > cambios.log

Seguir leyendo →

Curso no convencional de LaTeX: píntame ese código

En este episodio vamos a hablar de resaltado de sintaxis, es decir, vamos a aprender a darle formato al código fuente que hayamos insertado en nuestro documento con la idea de que sea más fácil de leer.

Hay varios paquetes que nos permiten pintar de colorines nuestro código, está listings que he usado bastante, minted que tenía ganas de aprender a usar y LGrind que descubrí al escribir esto. Voy a hablar de los dos primeros que son los que controlo y sobre LGrind investigáis si os gusta, igual hasta hay más por ahí.

Lo fácil: listings

El paquete listings se utiliza de manera similar al resto de paquetes que hemos visto hasta ahora: lo cargamos, establecemos sus opciones y luego utilizamos los comandos que nos proporciona en el cuerpo del documento.

Seguir leyendo →

Curso no convencional de LaTeX: un documento científico

Vamos a hablar del caso en el que LaTeX da lo mejor de sí mismo: un documento científico. Con esto me refiero a libros técnicos, tesis, artículos… ya me entendéis. No tienen por qué hablar necesariamente de ciencia, si me centro más en ellos es porque es mi campo.

La característica esencial de un documento científico es su formato rígido que en muchas ocasiones nos viene impuesto, ya sea por una revista o universidad o por las propias costumbres de nuestra disciplina. Por ejemplo, una tesis suele estar dividida en capítulos, debe tener referencias bibliográficas con un estilo determinado y se inicia con un índice general, uno de tablas y otro de figuras así como con un glosario de términos. También suele llevar un resumen del contenido al principio y se separa el trabajo adicional en apéndices. Todo esto implica diferentes formatos para las partes (numeración de las páginas y secciones, estilo de los encabezados…) y cierta planificación. Sin planificar se puede uno volver completamente tarumba, lo digo conocimiento de causa, el control de versiones me salvó más de una vez de romper la tesis sin remedio.

Es por ello que primero veremos cómo organizar el documento en cuestión y luego haremos un índice, un glosario y hasta unas lista de referencias.

Seguir leyendo →

Lo que he aprendido: blindtext en LaTeX

Estoy ahora mismo probando una plantilla de LaTeX y recordado una herramienta interesante para estas labores: el paquete blindtext. Este paquete es similar al típico Lorem Ipsum, es decir, nos crea texto sin sentido, pero tiene ciertas funcionalidades añadidas:

  • Depende del idioma así que se puede ver qué tal va la silabación. Ahora mismo los idiomas disponibles son inglés, francés, alemán, latín y catalán. Es curioso que en cosas de LaTeX haya casi siempre catalán como opción, los demás deberíamos ponernos las pilas.

  • A diferencia del paquete lipsum, la implementación de Lorem Ipsum para LaTeX, que solo nos crea texto, tenemos la posibilidad de generar listas, ecuaciones y hasta un documento completo si se lo pedimos.

  • Podemos crear texto formado por pangramas, frases que contienen todas las letras del abecedario de un idioma concreto1, interesante para probar tipografías. También podemos usar trozos de la Biblia, cosa que me parece absolutamente genial aunque utilidad práctica le veo menos.

Es muy fácil de usar, para crear texto sin más tenemos dos comandos:

  • \blindtext crea un trozo de texto corto. Opcionalmente le podemos dar el número de veces que queremos que repita el texto con \blindtext[REP]
  • \Blindtext crea un trozo de texto largo. Puede tomar como opciones el número de párrafos y el de repeticiones con \Blindtext[PAR][REP]

Podemos fabricar un documento completo, largo o corto, con y sin ecuaciones:

  • \blindocument crea un documento corto, si delante activamos las matemáticas con \blindmathtrue tendrá también ecuaciones. El documento creado tendrá títulos de sección de todos los niveles y varios tipos de listas.
  • \Blindocument crea un documento largo, funciona exactamente igual que el anterior.

  • \blindmathpaper crea un documento con ecuaciones.

Hay otras opciones para crear listas y así, en el manual lo tenéis bien explicado.

Os pongo para terminar un ejemplo con diferentes opciones para que hurguéis si os parece interesante. Lo único que hay que tener en cuenta es que el idioma que usa es el del paquete babel. He puesto una comparación con lipsum también ya que estaba.

\documentclass[a4paper,11pt]{article}

% Idioma y codificación
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage[english]{babel}

% Paquetes para texto de relleno

% Blindtext
% Opciones pangram, bible, random (defecto)
\usepackage[pangram]{blindtext}

% Lorem ipsum
\usepackage{lipsum}

\begin{document}

\tableofcontents

% Texto corto
\blindtext

% 3 párrafos, 2 repeticiones
\Blindtext[3][2]

% Párrafos 5 y 6 creados con Lorem Ipsum
\lipsum[5-6]

% Documento completo con matemáticas
\blindmathtrue
\blinddocument

% Documento completo con matemáticas
\blindmathpaper

\end{document}
Lorem Ipsum por Sudweb vía Attribution Engine. Licencia CC BY-NC-SA.

Referencias

Manual de blindtext(pdf)

Alternative to “Lorem Ipsum” en TexExchange

El paquete lipsum

Otros generadores de texto


  1. El veloz murciélago hindú comía feliz cardillo y kiwi. ¿Lo recordáis? 

Curso no convencional de LaTeX: el espacio en blanco

Seguimos investigando el formato en LaTeX. ¡Hoy moveremos las cosas por la página!


Como hemos visto en anteriores entregas, LaTeX gestiona el espacio en blanco él solito. Esto tiene varias implicaciones:

  • Le da igual que pongamos un espacio o sesenta y cuatro entre dos palabras, para él serán un único espacio.
  • Partirá las líneas donde mejor le venga a no ser que nosotros le obliguemos a hacerlo en un sitio determinado, dónde hayamos saltado de línea en el editor le da absolutamente igual. Lo mismo puede decirse de las páginas.

  • Dos trozos de texto que no estén separados por una línea en blanco pertenecerán al mismo párrafo a no ser que le digamos expresamente que no es así.

  • No pintará una línea en blanco a no ser que le digamos expresamente que lo haga por muchas líneas en blanco que tengamos en el editor.

Así visto parece que es malvado y que le gusta fastidiarnos, pero que él tome las decisiones de formato tiene la grandísima ventaja de que obtenemos un documento con pinta profesional con muy poco esfuerzo.

Seguir leyendo →

El porqué del curso de LaTeX

Hoy os voy a contar un poco del trasfondo del Curso no convencional de LaTeX, por qué empecé a escribirlo y qué supone para mí. No os preocupéis que pronto llegará la siguiente entrada, no todo va a ser hablar sobre mi vida.

Publiqué la idea de escribir un cursete de LaTeX el 13 de noviembre del año pasado, un mes después de terminar de escribir la tesis y un mes antes de defenderla. Fue un tiempo muy raro ese, estaba preparando la presentación, el ambiente en el trabajo era horrible y no sabía qué iba a hacer con mi vida. Es fácil entender que muy motivada no estaba.

Seguir leyendo →