Truquillos LaTeX

28
Informaci´ on adicional sobre L A T E X Digna Gonz´alez Otero 31 de mayo de 2011

description

 

Transcript of Truquillos LaTeX

Informacion adicional sobre LATEX

Digna Gonzalez Otero

31 de mayo de 2011

Tabla de contenidos

1. Tablas 3

1.1. Comando multicolumn . . . . . . . . . . . . . . . . . . . . . . 3

1.2. Comando multirow . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Paquete booktabs . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4. Paquete threeparttable . . . . . . . . . . . . . . . . . . . . 8

1.5. Subtablas y subfiguras . . . . . . . . . . . . . . . . . . . . . . 9

1.6. Tabla unica en una pagina . . . . . . . . . . . . . . . . . . . . 13

1.7. Uso de colores en tablas . . . . . . . . . . . . . . . . . . . . . 13

2. Informacion adicional sobre comandos 14

2.1. Notas al pie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2. Numeracion del entorno theorem . . . . . . . . . . . . . . . . 15

2.3. Alineacion de entorno description . . . . . . . . . . . . . . . . 16

2.4. Listando codigo con lstlistings . . . . . . . . . . . . . . . . . . 17

2.5. Proteccion1 de comandos . . . . . . . . . . . . . . . . . . . . . 19

2.6. Enlaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3. Personalizacion del documento 20

3.1. Cambiar el tıtulo del ındice, de los capıtulos, etc. . . . . . . . 20

1Esto es una prueba para comprobar como se pueden poner pies de pagina en tıtulosde secciones.

1

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

3.2. Anadir enlace a la bibliografıa en el ındice . . . . . . . . . . . 21

3.3. Personalizacion de encabezados y pies de pagina . . . . . . . . 21

3.4. Personalizacion de los caption . . . . . . . . . . . . . . . . . . 22

3.5. Cambiar formato en listas anidadas . . . . . . . . . . . . . . . 22

3.5.1. Listas numeradas . . . . . . . . . . . . . . . . . . . . . 22

3.5.2. Listas no numeradas . . . . . . . . . . . . . . . . . . . 23

4. Otros truquillos 24

4.1. Compilacion condicional . . . . . . . . . . . . . . . . . . . . . 24

4.2. Sımbolos habituales . . . . . . . . . . . . . . . . . . . . . . . . 24

4.3. Formulas quımicas . . . . . . . . . . . . . . . . . . . . . . . . 25

4.4. Evitar cerrar el pdf cada vez que compilemos . . . . . . . . . . 25

4.5. LyX, acercamiento mas amigable a LATEX . . . . . . . . . . . . 25

4.6. Integrar herramientas matematicas con Lyx . . . . . . . . . . 26

4.7. Crear dibujos vectoriales . . . . . . . . . . . . . . . . . . . . . 27

Informacion adicional sobre LATEX 2 Mayo de 2011

Capıtulo 1

Tablas

Una forma sencilla de crear tablas es usando los entornos table, que propor-ciona un float para insertar tablas, y tabular, que genera la propia tabla,como se ha visto en las presentaciones.

Sin embargo, a veces necesitaremos otros comandos y entornos para introdu-cir tablas mas avanzadas.

1.1. Comando multicolumn

Para escribir texto en una tabla que ocupe varias columnas, usaremos elcomando multicolumn que esta incluido en el paquete multirow.

\multicolumn{numColumnas}{alineamiento}{contenido}

\begin{tabular }{ | l | l | }\hline\multicolumn {2}{ | c | }{ Team sheet} \\\hlineGK & Paul Robinson \\LB & Lucus Radebe \\DC & Michael Duberry \\\hline

\end{tabular}

3

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Team sheetGK Paul RobinsonLB Lucus RadebeDC Michael Duberry

1.2. Comando multirow

El paquete multirow nos permite construir tablas en que el texto ocupa variasfilas. Para ello se utiliza la orden \multirow. Esta orden funciona de formasimilar a \multicolumn, pero para filas.

\multirow{nrow}{width}[vmove]{contenido}

donde:

nrow numero de filas a agrupar.

width Ancho de la columna.

vmove Sirve para subir o bajar el texto (opcional).

A continuacion se muestra una tabla que tiene columnas y filas multiplesusando multicolumn y \multirow.

\begin{tabular }{ | l | l | l | } \hline\multicolumn {3}{ | c | }{ Schedulers} \\ \hline\multirow {3}{∗}{Immediate} & RR & Round Robin \\& EF & Earliest First \\& LL & Lightest Loaded \\ \hline\multirow {4}{∗}{Batch} & MM & Min−Min \\& MX & Max−Min \\& DL & Dynamic Level \\& RC & Relative Cost \\ \hline\multirow {4}{∗}{Evolutionary} & PN & This paper \\& ZO & Genetic Algorithm\\& TA & Tabu search\\& SA & Simlulated Annealing \\ \hline\end{tabular}

Informacion adicional sobre LATEX 4 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Schedulers

ImmediateRR Round RobinEF Earliest FirstLL Lightest Loaded

Batch

MM Min-MinMX Max-MinDL Dynamic LevelRC Relative Cost

Evolutionary

PN This paperZO Genetic AlgorithmTA Tabu searchSA Simlulated Annealing

Informacion adicional sobre LATEX 5 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

1.3. Paquete booktabs

Para conseguir tablas de aspecto profesional, hay que seguir ciertas reglasde estilo. Algunas de estas reglas son no utilizar nunca lıneas verticales nidobles lıneas horizontales.

El paquete booktabs1 nos ayuda a dotar a nuestras tablas de un aspecto masprofesional, configurando el espaciado entre las lıneas y el texto y diferen-ciando las lıneas superior, inferior e intermedias de las tablas.

A continuacion se muestra un ejemplo de una tabla generada usando loscomandos estandar de LaTeX y la misma tabla generada usando el paquetebooktabs.

Tabla 1.1: Comparacion entre tablas generadas con y sin booktabs

(a) Tabla generada con el paquete booktabs

Item

Animal Description Price ($)

Gnat per gram 13.65each 0.01

Gnu stuffed 92.50Emu stuffed 33.33Armadillo frozen 8.99

(b) Tabla generada sin el paquete booktabs

ItemAnimal Description Price ($)Gnat per gram 13.65

each 0.01Gnu stuffed 92.50Emu stuffed 33.33Armadillo frozen 8.99

Como se puede ver, la Tabla 1.1a tiene un aspecto mas legible y agradable,con un mayor espaciado en el encabezado, y con las lıneas superior e inferiordestacadas respecto al resto.

El codigo utilizado para generar esta tabla es el siguiente:

\begin{tabular } [ b ]{ llr} \toprule\multicolumn{2}{c}{Item} \\ \cmidrule (r ){1−2}Animal & Description & Price (\$) \\ \midruleGnat & per gram & 13.65 \\& each

& 0.01 \\Gnu

& stuffed

& 92.50 \\

1http://tug.ctan.org/macros/latex/contrib/booktabs/booktabs.pdf

Informacion adicional sobre LATEX 6 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Emu

& stuffed

& 33.33 \\Armadillo & frozen & 8.99 \\ \bottomrule\end{tabular}

Los comandos que diferencian a esta tabla de una estandar de LATEX son lossiguientes:

toprule genera la lınea superior de la tabla. Se pone justo al principio.

midrule lınea que delimita el comienzo de los datos de la tabla.

bottomrule genera la lınea inferior de la tabla.

cmidrule es el comando analogo a cline, y dibuja una lınea horizontal desdeuna columna a otra que se le indique.

Ademas, cargando el paquete arrayrulecolor podemos conseguir tablas conlıneas coloreadas usando el comando \arrayrulecolor.

Toda la informacion sobre el paquete booktabs esta en su documentacion2.

2http://tug.ctan.org/macros/latex/contrib/booktabs/booktabs.pdf

Informacion adicional sobre LATEX 7 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

1.4. Paquete threeparttable

El entorno threeparttable soporta la insercion de notas al pie de la tabla.No es un float, por lo que habrıa que meterlo dentro de un entorno float parapoder utilizar los label y caption.

\begin{table } [ htb ! ]\begin{threeparttable } [ b ]\caption{Tabla generada con threparttable}\begin{tabular}{l}Contenido de la tabla\tnote{1}\\\end{tabular}\begin{tablenotes}\item [ 1 ] Nota al pie de la tabla

\end{tablenotes}\end{threeparttable}\end{table}

Tabla 1.2: Tabla genera-da con threparttable

Contenido de la tabla1

1 Nota al pie de la ta-bla

Como se puede ver en el ejemplo, se ha escrito el comando \tnote{numero}

en el lugar donde se querıa insertar un numero referente al pie de tabla, siendonumero el numero a asignar (en este caso la numeracion no es automatica).Al final de la tabla, dentro del entorno tablenotes se escriben todas lasnotas al pie, siguiendo el formato \item [numero] Nota.

Lo habitual sera combinar el entorno \threeparttable con el paquete booktabs,como se muestra en el siguiente ejemplo.

\begin{table } [ htb ! ]\begin{threeparttable } [ b ]

\begin{tabular } [ b ]{ llr} \toprule\multicolumn{2}{c}{Item} \\ \cmidrule (r ){1−2}Animal & Description & Price (\$) \\ \midruleGnat\tnote{1} & per gram & 13.65 \\& each

& 0.01 \\Gnu

& stuffed

& 92.50 \\Emu

Informacion adicional sobre LATEX 8 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

& stuffed

& 33.33 \\Armadillo & frozen & 8.99 \\ \bottomrule\end{tabular}

\begin{tablenotes}\item [ 1 ] Available on demand

\end{tablenotes}\end{threeparttable}\end{table}

Item

Animal Description Price ($)

Gnat1 per gram 13.65each 0.01

Gnu stuffed 92.50Emu stuffed 33.33Armadillo frozen 8.99

1 Available on demand

1.5. Subtablas y subfiguras

Se pueden generar varias tablas o figuras que pertenezcan al mismo bloquede forma que tengan un caption comun y tambien uno independiente, usandoel paquete subfig y el comando \subfloat.

La forma de utilizar este entorno es dentro de un entorno float (figure otable), del siguiente modo:

1 \begin{table } [ htb ! ]2 \caption{Caption comun a las dos subfiguras}34 \subfloat [ Texto ındice figuras ] [ Texto caption ] %5 {\label{etiqueta de la subfigura} %6 Tabla ( con \begin{tabular } , etc . ) }78 \subfloat [ Texto ındice figuras ] [ Texto caption ] %9 {\label{etiqueta de la subfigura} %

10 Tabla ( con \begin{tabular } , etc . ) }11 \end{table}

Informacion adicional sobre LATEX 9 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Como se puede ver en el codigo, se crea un entorno table que englobara lasdos subfiguras, y se le asigna un caption, que sera el caption comun de lasdos subfiguras (lınea 2).

A continuacion se genera cada subfigura utilizando el comando subfloat. Elprimer parametro opcional (entre corchetes) es el texto con que se quiere quese referencie la subfigura en el ındice de figuras, si lo hubiera. Si se ponen loscorchetes vacıos, no aparecera la subfigura en el ındice, y si no se pone nada(ni siquiera los corchetes), cogera el texto del caption.

A continuacion se pone (tambien de forma opcional) el caption de la subfiguraentre corchetes. Despues, ya entre llaves, se pone el contenido de la tablaen sı (generado con un entorno tabular), y opcionalmente una etiqueta parahacer referencia a la subfigura. La etiqueta (label) en realidad se puede poneren cualquiera de los parametros que se le pasan al comando. Ası, la etiquetase podrıa indicar entre los corchetes del caption, en lugar de dentro de lasllaves.

A continuacion se muestra un ejemplo de utilizacion de este entorno contablas.

\begin{table } [ htb ! ]\subfloat [ ] [ Tabla generada con el paquete booktabs

\label{tab : ejemploBooktabs 1} ]{\begin{tabular}{llr} \toprule\multicolumn{2}{c}{Item} \\ \cmidrule (r ){1−2}Animal & Description & Price (\$) \\ \midruleGnat & per gram & 13.65 \\& each

& 0.01 \\Gnu

& stuffed

& 92.50 \\Emu

& stuffed

& 33.33 \\Armadillo & frozen & 8.99 \\ \bottomrule\end{tabular}

}\subfloat [ Tabla generada sin el paquete booktabs \label{tab :←↩

ejemploNoBooktabs 2} ]{\centering\begin{tabular}{llr{}} \hline\multicolumn{2}{c}{Item} \\ \cline{1−2}Animal & Description & Price (\$) \\ \hline

Informacion adicional sobre LATEX 10 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Gnat & per gram & 13.65 \\& each

& 0.01 \\Gnu

& stuffed

& 92.50 \\Emu

& stuffed

& 33.33 \\Armadillo & frozen & 8.99 \\ \hline\end{tabular}}\end{center}\caption{Comparacion entre tablas generadas con y sin \texttt{←↩

booktabs}}\end{table}

Item

Animal Description Price ($)

Gnat per gram 13.65each 0.01

Gnu stuffed 92.50Emu stuffed 33.33Armadillo frozen 8.99

(a) Tabla generada con el paquete booktabs

ItemAnimal Description Price ($)Gnat per gram 13.65

each 0.01Gnu stuffed 92.50Emu stuffed 33.33Armadillo frozen 8.99

(b) Tabla generada sin el paquete booktabs

Tabla 1.3: Comparacion entre tablas generadas con y sin booktabs

Informacion adicional sobre LATEX 11 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Bajo estas lıneas se muestra otro ejemplo, en este caso con figuras.

\begin{figure } [ htb ]\centering

\subfloat [ Compiladores LaTeX ] %{\includegraphics [ width=0.4\textwidth ]{ Compiladores . png}}\hspace{1cm}

\subfloat [ Comandos ]{\label{fig : Autenticacion1−b}\includegraphics [ width=0.4\textwidth ]{←↩

configuracionComandos . png}}\\

\caption{Configuracion de comandos de LaTeX}\label{fig : Autenticacion1}\end{figure}

(a) Compiladores LaTeX (b) Comandos

Figura 1.1: Configuracion de comandos de LaTeX

Informacion y ejemplos en la documentacion del paquete3 .

3http://ctan.org/tex-archive/macros/latex/contrib/subfig/

Informacion adicional sobre LATEX 12 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

1.6. Tabla unica en una pagina

Cuando en una pagina hay solo una tabla, esta aparece en el centro. Siqueremos que aparezca en la parte superior de la pagina, tenemos que escribirel siguiente codigo:

\makeatletter\setlength{\@fptop}{0pt}\makeatother

1.7. Uso de colores en tablas

Para colorear las tablas se utiliza el paquete \colortbl, que a su vez necesitalos paquetes color y array.

El documento http://www.tug.org/tutorials/tugindia/chap08-scr.pdfexplica de forma muy didactica como utilizar colores en tablas.

Informacion adicional sobre LATEX 13 Mayo de 2011

Capıtulo 2

Informacion adicional sobrecomandos

2.1. Notas al pie

El comando footnote permite insertar notas al pie1 que se numeran au-tomaticamente. La numeracion de las notas al pie se reinicia al empezar unnuevo capıtulo (\chapter{}), pero es posible reiniciar el contador en cual-quier momento usando el comando \setcounter{footnote}{0}.

De hecho, cambiando el numero que se le pasa como segundo parametro, sepuede asignar cualquier valor al contador.

El comando \footnotemark{number} permite insertar una marca de pie depagina con el numero que le indiquemos. Es util para poner un pie de paginauna vez, y referenciarlo en diferentes puntos del texto1. Para que el numerose corresponda con el del ultimo pie de pagina, el comando a utilizar es\footnotemark[\value{footnote}].

El comando \footnotetext[number]{text} incluye cierto texto en el piede pagina, pero no incrementa el contador del pie de pagina, por lo que, oasignamos un numero de forma manual, o mantiene la numeracion del ultimopie de pagina.

Es muy habitual utilizar simplemente el comando \footnote{} para ponernotas al pie, pero tambien podemos usar \footnotemark y \footnotetext

1como en este ejemplo1como este

14

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

para conseguir notas al pie con la numeracion que nosotros decidamos.

2.2. Numeracion del entorno theorem

El entorno theorem permite insertar sentencias separadas del texto y connumeros identificadores. Requiere el paquete amsthm.

\newtheorem{midef}{Definicion}\begin{midef}

Esto es una definicion .\end{midef}

Por defecto la numeracion de theorem se reinicia al cambiar de capıtulo, peropodemos reiniciarlo manualmente usando el comando \setcounter{midef}{0},y sustituyendo midef por el nombre del entorno teorema cuyo contador que-ramos reiniciar.

Tambien es posible que la numeracion del teorema haga referencia a la secciono capıtulo del texto donde se encuentra. Por ejemplo, “Teorema 2.3” harıareferencia al tercer teorema del capıtulo o seccion 2, en funcion de si estamosen un documento que consta de capıtulos o no.

Para conseguir esto, hay que crear el nuevo tipo de teorema con el siguientecomando:

\newtheorem{midef}{Definicion} [ numerarPor ]

Siendo numerarPor chapter, section, subsection, etc.,en funcion de ladivision a la que queremos que haga referencia la numeracion.

\newtheorem{midef}{Definicion} [ chapter ]\begin{midef}

Esto es una definicion numerada segun el capıtulo .\end{midef}\begin{midef}

Esto es otra definicion numerada segun el capıtulo .\end{midef}

Definicion 2.1 Esto es una definicion numerada segun el capıtulo.

Definicion 2.2 Esto es otra definicion numerada segun el capıtulo.

Informacion adicional sobre LATEX 15 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

2.3. Alineacion de entorno description

El entorno description nos permite crear una lista de elementos y su des-cripcion, como en el siguiente ejemplo.

\begin{description}\item [ emph ] para enfatizar palabras , de acuerdo al ←↩

contexto . Recomendado .\item [ textbf ] para texto en \textbf{negrita } .\item [ textit ] para texto en \textit{cursiva } .\item [ underline ] para texto \underline{subrayado } .\item [ texttt ] para texto estilo \texttt{maquina de ←↩

escribir } .\item [ textsf ] para texto \textsf{Sans−Serif } .

\end{description}

emph para enfatizar palabras, de acuerdo al contexto. Recomendado.

textbf para texto en negrita.

textit para texto en cursiva.

underline para texto subrayado.

texttt para texto estilo maquina de escribir.

textsf para texto Sans-Serif.

Si queremos que en todos los elementos se reserve el mismo espacio para laetiqueta (palabra a describir), de forma que las definiciones empiecen siempreen la misma posicion, podemos usar el entorno basedscript contenido en elpaquete mdwlist

\usepackage{mdwlist}[ . . . ]\begin{basedescript}{\desclabelstyle{\pushlabel}\desclabelwidth←↩

{2cm}}\item [ emph ] para enfatizar palabras , de acuerdo al ←↩

contexto . Recomendado .\item [ textbf ] para texto en \textbf{negrita } .\item [ textit ] para texto en \textit{cursiva } .\item [ underline ] para texto \underline{subrayado } .\item [ texttt ] para texto estilo \texttt{maquina de ←↩

escribir } .\item [ textsf ] para texto \textsf{Sans−Serif } .

\end{basedescript}

Informacion adicional sobre LATEX 16 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

emph para enfatizar palabras, de acuerdo al contexto. Recomendado.

textbf para texto en negrita.

textit para texto en cursiva.

underline para texto subrayado.

texttt para texto estilo maquina de escribir.

textsf para texto Sans-Serif.

En este caso hay que tener cuidado con dejar espacio suficiente para escribirtodas las etiquetas, en caso contrario se podrıa solapar el texto.

2.4. Listando codigo con lstlistings

El paquete listings proporciona una forma mas configurable de listar codigoque el entorno verbatim.

Para usar este paquete hay que incluirlo en el preambulo:

\usepackage{listings}

A continuacion, para utilizarlo, basta con utilizar el entorno verb+lstlisting+,como en el siguiente ejemplo:

\begin{lstlisting}

Codigo a visualizar.

\end{lstlisting}

Sin embargo, para sacar el mayor partido a este comando, es recomendableconfigurarlo para definir como queremos que se muestre el codigo citado. Acontinuacion se muestra un ejemplo de configuracion.

\usepackage{listings}\lstloadlanguages { [ LaTeX ] TeX}[ . . . ]

% Conf igurac ion de L i s t i n g s\lstset{

language={[LaTeX ] TeX } , % Lenguaje por d e f e c t o

Informacion adicional sobre LATEX 17 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

% e s t i l o skeywordstyle=\textbfseries\ttfamily\color [ rgb ] { . 8 , . 1 , . 2 } ,←↩

% e s t i l o s de pa labras c lave , i d e n t i f i c a d o r e s , e t c←↩. . .

identifierstyle=\ttfamily ,commentstyle=\color [ rgb ] { 0 . 1 , 0 . 5 , 0 . 1 } ,stringstyle=\ttfamily\color [ rgb ] { 0 . 2 , 0 . 2 , . 7 } ,basicstyle=\footnotesize , % the s i z e o f the f o n t s ←↩

used f o r the code% e s p a c i o sshowspaces=false , % show spaces adding ←↩

p a r t i c u l a r under score sshowstringspaces=false , % unde r l i n e spaces with in ←↩

s t r i n g sshowtabs=false , % show tabs with in s t r i n g s through ←↩

p a r t i c u l a r under score stabsize=6, % s e t s d e f a u l t tab−s i z e to 2 ←↩

spaces% cuadrobackgroundcolor=\color [ RGB ]{213 ,213 ,255} , % s e t s ←↩

background c o l o r ( needs package )frame=single , ←↩

% adds a frame around the coderulecolor=\color [ rgb ] { . 3 , . 3 , . 3 } , % s e t the frame ’ s ←↩

c o l o r .captionpos=b , % s e t s the caption−←↩

p o s i t i o n to bottom%% l i n e break ingbreaklines=true , %←↩

s e t s automatic l i n e breakingbreakatwhitespace=false , %←↩

automatic breaks happen at whitespaceprebreak = \raisebox{0ex } [ 0 ex ] [ 0 ex ]{\ ensuremath{\←↩

hookleftarrow }} , % Nos d ibuja una f l e c h a ‘ ‘ guay ’ ’ ←↩cuando e l codigo no entra en una l i n e a

escapeinside=++, % Para escapar a LaTeX . l o s ←↩acentos

}

Con esta configuracion estamos estableciendo el lenguaje por defecto comoLATEX, configurando el aspecto que queremos que tenga el codigo mostrado(color de fondo, tipo de texto, etc.).

Es importante la opcion escapeinside, que indica que caracteres tendremosque usar dentro del codigo para que LATEX procese lo que hay dentro. Seusa para las tildes, ya que si escribimos tildes directamente, sin poner la

Informacion adicional sobre LATEX 18 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

palabra que la lleva entre los caracteres de escapeinside, obtendremos unerror porque lstlisting no esta preparado para soportar esa codificacion.

Mas informacion sobre este paquete en ftp://ftp.tex.ac.uk/tex-archive/

macros/latex/contrib/listings/listings.pdf.

2.5. Proteccion2 de comandos

Cuando intentamos hacer ciertas cosas, como poner pies de pagina en el nombre de unaseccion, o una cita en el nombre de una tabla, LATEX nos da errores. Para solucionarlotenemos que poner antes del comando problematico el comando \protect.

Mas informacion sobre este problema en http://www.tex.ac.uk/cgi-bin/texfaq2html?

label=protect.

2.6. Enlaces

Ademas de crear enlaces simples incluyendo los paquetes url e hyperref y usando elcomando \url, tambien podemos hacer que cierto texto sea un hiperenlace, y al hacer clicsobre el nos lleve a una pagina web.

Para ello usaremos el comando \href, de la siguiente forma:

\href{pagina a enlazar}{texto enlace}

Ejemplo:

\href{http://www.slideshare.net/digna}{Mi pagina de slideshare}

El codigo anterior producira el siguiente resultado: Mi pagina de slideshare

Mas informacion en la pagina de Wikibooks de LATEX.

2Esto es una prueba para comprobar como se pueden poner pies de pagina en tıtulosde secciones.

Informacion adicional sobre LATEX 19 Mayo de 2011

Capıtulo 3

Personalizacion del documento

3.1. Cambiar el tıtulo del ındice, de los capıtu-

los, etc.

LATEX asigna un tıtulo a los ındices, capıtulos, etc, que puede depender del tipo de docu-mento que estemos escribiendo. Por ejemplo, lo que en un artıculo se llama Indice, en unlibro se llama Indice general.

Si no nos gusta la nomenclatura que se utiliza y queremos cambiar alguna de las denomi-naciones, podemos usar el comando \renewcommand.

\renewcommand{\contentsname}{Contenido}

\renewcommand{\partname}{Parte}

\renewcommand{\indexname}{Lista Alfabetica}

\renewcommand{\appendixname}{Apendice}

\renewcommand{\figurename}{Figura}

\renewcommand{\listfigurename}{Lista de Figuras}

\renewcommand{\tablename}{Tabla}

\renewcommand{\listtablename}{Lista de Tablas}

\renewcommand{\abstractname}{Resumen}

\renewcommand{\chaptername}{Capıtulo}

\renewcommand{\refname}{Bibliografıa}

En este caso, se ha escrito justo antes de \tableofcontents la lınea:

\renewcommand*{\contentsname}{Tabla de contenidos}.

Es decir, hay que introducir el comando justo antes de generar la tabla de contenidos(ındice).

20

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

3.2. Anadir enlace a la bibliografıa en el ındi-

ce

Al utilizar el paquete tocbibind con la opcion numbib, la bibliografıa aparecera numeradacomo si fuera un capıtulo o una seccion mas del documento, en funcion de la clase dedocumento que se este utilizando.

\usepackage [ numbib ]{ tocbibind}

3.3. Personalizacion de encabezados y pies de

pagina

Una de las formas de definir encabezados y pies de pagina personalizados es mediante elpaquete fancyhdr.

Para utilizarlo, tenemos que cargar el paquete e indicar que queremos usar el estilo depagina fancy, del siguiente modo:

\usepackage{fancyhdr}\pagestyle{fancy}

Para definir cada elemento del encabezado y el pie se usan los comandos \fancyhead y\fancyfoot junto con las siguientes opciones:

E even page (pagina par).

O odd page (pagina impar).

L left side (parte izquierda).

C centered (centrado).

R right side (parte derecha).

El siguiente ejemplo1 afecta a las paginas pares e impares:

\fancyhead [ L ]{ Centro \\ Universidad del Pa ıs Vasco}\fancyhead [ R ]{ Nombre del autor \\ correo−e}

\fancyfoot [ L ]{ Nombre del trabajo}\fancyfoot [ C ]{\ thepage}\fancyfoot [ R ]{2010−2011}

1Escrito por Unai Martınez en el wiki de Itsas. http://itsas.ehu.es/workgroups/latex/recetas

Informacion adicional sobre LATEX 21 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

3.4. Personalizacion de los caption

El paquete caption proporciona diferentes opciones para configurar el aspecto de los cap-tion de figuras y tablas.

El siguiente ejemplo cambia el tamano de letra a scriptzise, pone la etiqueta en negrita, eltexto en cursiva y centra la ultima lınea:

\usepackage [ font=scriptsize , format=plain , labelfont=bf , textfont=←↩it , justification=centerlast ]{ caption}

Otro ejemplo con el que hacemos que se muestre solo el texto del caption, sin poner ningunnombre (no pondra Figura x: Texto del caption, sino el texto directamente). Puede serutil por ejemplo para presentaciones con beamer.

\usepackage{caption}\captionsetup{labelformat=empty , labelsep=none}

Por ultimo, un ejemplo en que se hace que el caption aparezca alineado a la izquierda.Esto es util cuando se quiera insertar una tabla o figura alineadas a la izquierda, porquepor defecto el caption aparecera centrado, independientemente de la alineacion del restodel documento.

\usepackage [ justification=raggedright , singlelinecheck=false ]{←↩caption}

3.5. Cambiar formato en listas anidadas

3.5.1. Listas numeradas

Por ejemplo, para que escriba los elementos de primer nivel con numeros como 1 y los desegundo nivel con numeros en la forma 1.1

\renewcommand{\theenumii}{\arabic{enumii}}

\renewcommand{\labelenumii}{\theenumi .\theenumii .}

Si algun paquete que estes usando redefine los \theenum, como el babel-spanish, entoncesdebes asegurate que LaTeX elija tus parametros colocando las ordenes anteriores entre:

\AtBeginDocument{%

comandos aqui..

}

Informacion adicional sobre LATEX 22 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

3.5.2. Listas no numeradas

Dentro de un itemize, puede especificarse en cada \item un parametro opcional, que es elsımbolo que se mostrara (en lugar del topo por defecto), por ejemplo, \item[$\odot$], ysi se quieren cambiar todos, con el mismo ejemplo,

\renewcommand{\item}{\item[$\odot$]}

o, mediante el paquete paralist,

\usepackage{paralist}

...

\begin{itemize}[$\star$]

\item ...

\item ...

\end{itemize}

\end{vertabim}

Tambien puede utilizarse el paquete \texttt{pifont}, ası:

\begin{verbatim}

\usepackage{pifont}

\begin{Pilist}{pzd}{248}

\item bla

\item bla bla

\item bla

\end{Pilist}

El entorno Pilist es analogo a itemize, pero en lugar del bullet usa el caracter que se lepida de la fuente que se le pida. En el ejemplo anterior, se usa el caracter con codigo 248de la fuente pzd que tiene gran cantidad de sımbolos adecuados para itemize.

Informacion adicional sobre LATEX 23 Mayo de 2011

Capıtulo 4

Otros truquillos

4.1. Compilacion condicional

LATEX permite mostrar u ocultar parte del contenido del documento en funcion del valorde una variable. Esto nos permite, por ejemplo, generar una version de un examen consoluciones y otra sin ellas con solo cambiar un valor en el documento y compilar de nuevo,sin tener que tener dos ficheros .tex separados.

Para ello se utiliza el paquete ifthen, y el comando ifthenelse, de la siguiente forma:

\usepackage{ifthen}\newboolean{resuelto}\setboolean{resuelto}{false} % No se muestran l a s s o l u c i o n e s[ . . . ]

\begin{document}% Enunciado de l e j e r c i c i o . . .% Ahora vienen l a s s o l u c i o n e s ( se muestran s i r e s u e l t o es t rue )\ifthenelse {\boolean{resuelto}}{Resolucion del ejercicio ( texto a escribir en la version con ←↩

soluciones ) }%{Texto a escribir en la version sin soluciones}

4.2. Sımbolos habituales

Hay algunos sımbolos que se utilizan frecuentemente y requieren paquetes adicionales parasu insercion en LATEX.

Sımbolo del euro. Paquete eurosym. Comando \euro.

24

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

Sımbolo periodico. Paquete yhmath. comando \wideparen{}.

4.3. Formulas quımicas

Las formulas quımicas sencillas se pueden escribir utilizando la edicion de ecuaciones tıpicade LaTeX. Los subındices se indican con el caracter y los superındices con . Por ejemplo,

el codigo $SO_{4}^{2-}$ genera el siguiente resultado: SO2−4 .

Tambien se puede utilizar el paquete mhchem para escribir formulas quımicas de la siguienteforma: \ce{H2S04}, obteniendo el siguiente resultado: H2SO4.

Informacion del paquete en la pagina http://dante.ctan.org/tex-archive/macros/

latex/contrib/mhchem/.

6 CO2 + 6 H2O −−→ C6H12O6 + 6 O2

4.4. Evitar cerrar el pdf cada vez que compi-

lemos

Si tenemos el pdf abierto con Acrobat Reader e intentamos compilar, el programa da unerror. Podemos utilizar programas alternativos para evitar tener que estar constantementecerrando el documento. En GNU/Linux los navegadores mas utilizados ya hacen eso, peroen Windows podemos instalar por ejemplo Sumatra PDF (software libre y gratuito) de suweb1.

Tambien podemos probar sobre Windows aplicaciones de GNU/Linux instalando KDE OnWindows2, que nos permitira seleccionar que aplicaciones de Linux queremos instalar. Elvisor de documentos .ps y .pdf es Okular.

4.5. LyX, acercamiento mas amigable a LATEX

LyX es un programa libre y multiplataforma (disponible para GNU/Linux, Windows yMac) que permite escribir documentos LATEX de forma mas sencilla. Proporciona una cier-ta abstraccion respecto a los comandos, es decir, es algo intermedio entre un editor delatex normal, como TexMakerX, y un procesador de textos tradicional: podemos intro-ducir comandos latex, la inclusion de ecuaciones es igual se sencilla y el resultado deldocumento es muy profesional, pero segun escribimos vamos viendo mas o menos comoquedara el documento (no vemos exactamente el resultado final a no ser que compilemos,pero tampoco vemos todos los comandos).

1http://blog.kowalczyk.info/software/sumatrapdf/index.html2http://windows.kde.org/

Informacion adicional sobre LATEX 25 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

La forma mas sencilla de entenderlo es descargarlo y probarlo, que como es softwarelibre y gratuito no nos cuesta nada. Podemos descargarlo de su web3, donde tambienencontraremos documentacion. Ademas he marcado en Zotero algunos enlaces utiles coninformacion sobre LyX4.

LyX tiene un tutorial integrado, por lo que para aprender a usarlo recomiendo instalarlo,ir al menu Ayuda y abrir el Tutorial.

4.6. Integrar herramientas matematicas con

Lyx

LyX permite escribir de forma sencilla documentos con formulas matematicas. Si ademasde escribir estas formulas queremos que se procesen y se generen resultados, podemosintegrar herramientas matematicas libres como Maxima, Octave o Maple.

Para ello hay que seguir los siguientes pasos:

1. Descargar e instalar Maxima5.

3http://www.lyx.org/Download4http://www.zotero.org/digna/items/collection/26582055http://maxima.sourceforge.net/download.html

Informacion adicional sobre LATEX 26 Mayo de 2011

CentroUniversidad del Paıs Vasco

Digna Gonzalez [email protected]

2. Descargar e instalar LyX6

3. Reconfigurar LyX: Menu Herramientas, Reconfigurar.

4. Insertar una ecuacion matematica: Insertar → Ecuacion → Presentada.

5. Menu Editar → Ecuaciones → Usar programa de algebra → Maxima.

Hay un documento de ejemplo en formato .lyx disponible en http://maxima.sourceforge.

net/lyx+maxima.lyx.

4.7. Crear dibujos vectoriales

Las imagenes vectoriales tienen la ventaja de que no pierden resolucion al ser ampliadas.El programa mas popular para la creacion de imagenes vectoriales es Corel Draw. Sinembargo, existen alternativas libres y gratuitas muy competitivas como Inkscape7, queesta disponible para varios sistemas operativos.

Otra opcion es utilizar el paquete PSTricks de LATEX para dibujar directamente con co-mandos PostScript.

Para convertir imagenes de otros formatos a formato vectorial (.eps), se pueden usarprogramas de dibujo como Gimp8, que es libre, gratuito y multiplataforma.

6http://www.lyx.org/Download7http://www.inkscape.org/download/?lang=es8http://www.gimp.org/

Informacion adicional sobre LATEX 27 Mayo de 2011