3. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
3.2. A˜adir enlace a la bibliograf´ en el ´
n ıa ındice . . . . . . . . . . . 21
3.3. Personalizaci´n de encabezados y pies de p´gina . . . . . . . . 21
o a
3.4. Personalizaci´n de los caption . . . . . . . . . . . . . . . . . . 22
o
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. Compilaci´n condicional . . . . . . . . . . . . . . . . . . . . . 24
o
4.2. S´
ımbolos habituales . . . . . . . . . . . . . . . . . . . . . . . . 24
4.3. F´rmulas qu´
o ımicas . . . . . . . . . . . . . . . . . . . . . . . . 25
4.4. Evitar cerrar el pdf cada vez que compilemos . . . . . . . . . . 25
4.5. LyX, acercamiento m´s amigable a L TEX . . . . . . . . . . . . 25
a A
4.6. Integrar herramientas matem´ticas con Lyx . . . . . . . . . . 26
a
4.7. Crear dibujos vectoriales . . . . . . . . . . . . . . . . . . . . . 27
Informaci´n adicional sobre L TEX
o A 2 Mayo de 2011
4. 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 m´s avanzadas.
a
1.1. Comando multicolumn
Para escribir texto en una tabla que ocupe varias columnas, usaremos el
comando multicolumn que est´ incluido en el paquete multirow.
a
multicolumn{numColumnas}{alineamiento}{contenido}
begin { tabular } { | l | l | }
hline
multicolumn { 2 } { | c | } { Team sheet }
hline
GK & Paul Robinson
LB & Lucus Radebe
DC & Michael Duberry
hline
end { tabular }
3
5. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
Team sheet
GK Paul Robinson
LB Lucus Radebe
DC Michael Duberry
1.2. Comando multirow
El paquete multirow nos permite construir tablas en que el texto ocupa varias
filas. Para ello se utiliza la orden multirow. Esta orden funciona de forma
similar a multicolumn, pero para filas.
multirow{nrow}{width}[vmove]{contenido}
donde:
nrow n´mero de filas a agrupar.
u
width Ancho de la columna.
vmove Sirve para subir o bajar el texto (opcional).
A continuaci´n se muestra una tabla que tiene columnas y filas m´ltiples
o u
usando 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 }
Informaci´n adicional sobre L TEX
o A 4 Mayo de 2011
6. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
Schedulers
RR Round Robin
Immediate EF Earliest First
LL Lightest Loaded
MM Min-Min
MX Max-Min
Batch
DL Dynamic Level
RC Relative Cost
PN This paper
ZO Genetic Algorithm
Evolutionary
TA Tabu search
SA Simlulated Annealing
Informaci´n adicional sobre L TEX
o A 5 Mayo de 2011
7. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
1.3. Paquete booktabs
Para conseguir tablas de aspecto profesional, hay que seguir ciertas reglas
de estilo. Algunas de estas reglas son no utilizar nunca l´
ıneas verticales ni
dobles l´
ıneas horizontales.
El paquete booktabs 1 nos ayuda a dotar a nuestras tablas de un aspecto m´s a
profesional, configurando el espaciado entre las l´ ıneas y el texto y diferen-
ciando las l´
ıneas superior, inferior e intermedias de las tablas.
A continuaci´n se muestra un ejemplo de una tabla generada usando los
o
comandos est´ndar de LaTeX y la misma tabla generada usando el paquete
a
booktabs.
Tabla 1.1: Comparaci´n entre tablas generadas con y sin booktabs
o
(b) Tabla generada sin el paquete booktabs
(a) Tabla generada con el paquete booktabs
Item Item
Animal Description Price ($)
Animal Description Price ($) Gnat per gram 13.65
Gnat per gram 13.65 each 0.01
each 0.01 Gnu stuffed 92.50
Gnu stuffed 92.50 Emu stuffed 33.33
Emu stuffed 33.33 Armadillo frozen 8.99
Armadillo frozen 8.99
Como se puede ver, la Tabla 1.1a tiene un aspecto m´s legible y agradable,
a
con un mayor espaciado en el encabezado, y con las l´
ıneas superior e inferior
destacadas respecto al resto.
El c´digo utilizado para generar esta tabla es el siguiente:
o
begin { tabular } [ b ] { llr } toprule
multicolumn {2}{ c }{ Item } cmidrule ( r ) {1−2}
Animal & Description & Price ( $ ) midrule
Gnat & per gram & 1 3 . 6 5
& each
& 0 . 0 1
Gnu
& stuffed
& 9 2 . 5 0
1
http://tug.ctan.org/macros/latex/contrib/booktabs/booktabs.pdf
Informaci´n adicional sobre L TEX
o A 6 Mayo de 2011
8. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
Emu
& stuffed
& 3 3 . 3 3
Armadillo & frozen & 8 . 9 9 bottomrule
end { tabular }
Los comandos que diferencian a esta tabla de una est´ndar de L TEX son los
a A
siguientes:
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 an´logo a cline, y dibuja una l´
a ınea horizontal desde
una columna a otra que se le indique.
Adem´s, cargando el paquete arrayrulecolor podemos conseguir tablas con
a
l´
ıneas coloreadas usando el comando arrayrulecolor.
Toda la informaci´n sobre el paquete booktabs est´ en su documentaci´n2 .
o a o
2
http://tug.ctan.org/macros/latex/contrib/booktabs/booktabs.pdf
Informaci´n adicional sobre L TEX
o A 7 Mayo de 2011
9. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
1.4. Paquete threeparttable
El entorno threeparttable soporta la inserci´n de notas al pie de la tabla.
o
No es un float, por lo que habr´ que meterlo dentro de un entorno float para
ıa
poder 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´ insertar un n´mero referente al pie de tabla, siendo
ıa u
n´mero el n´mero a asignar (en este caso la numeraci´n no es autom´tica).
u u o a
Al final de la tabla, dentro del entorno tablenotes se escriben todas las
notas al pie, siguiendo el formato item [numero] Nota.
Lo habitual ser´ combinar el entorno threeparttable con el paquete booktabs,
a
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 ( $ ) midrule
Gnat tnote {1} & per gram & 1 3 . 6 5
& each
& 0 . 0 1
Gnu
& stuffed
& 9 2 . 5 0
Emu
Informaci´n adicional sobre L TEX
o A 8 Mayo de 2011
10. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
& stuffed
& 3 3 . 3 3
Armadillo & frozen & 8 . 9 9 bottomrule
end { tabular }
begin { tablenotes }
item [ 1 ] Available on demand
end { tablenotes }
end { threeparttable }
end { table }
Item
Animal Description Price ($)
Gnat1 per gram 13.65
each 0.01
Gnu stuffed 92.50
Emu stuffed 33.33
Armadillo frozen 8.99
1
Available on demand
1.5. Subtablas y subfiguras
Se pueden generar varias tablas o figuras que pertenezcan al mismo bloque
de forma que tengan un caption com´n y tambi´n uno independiente, usando
u e
el paquete subfig y el comando subfloat.
La forma de utilizar este entorno es dentro de un entorno float (figure o
table), del siguiente modo:
1 begin { table } [ htb ! ]
2 caption { Caption com´n a las dos subfiguras }
u
3
4 subfloat [ Texto ´ındice figuras ] [ Texto caption ] %
5 { label { etiqueta de la subfigura } %
6 Tabla ( con begin { tabular } , etc . ) }
7
8 subfloat [ Texto ´ ındice figuras ] [ Texto caption ] %
9 { label { etiqueta de la subfigura } %
10 Tabla ( con begin { tabular } , etc . ) }
11 end { table }
Informaci´n adicional sobre L TEX
o A 9 Mayo de 2011
11. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
Como se puede ver en el c´digo, se crea un entorno table que englobar´ las
o a
dos subfiguras, y se le asigna un caption, que ser´ el caption com´n de las
a u
dos subfiguras (l´
ınea 2).
A continuaci´n se genera cada subfigura utilizando el comando subfloat. El
o
primer par´metro opcional (entre corchetes) es el texto con que se quiere que
a
se referencie la subfigura en el ´ındice de figuras, si lo hubiera. Si se ponen los
corchetes vac´ no aparecer´ la subfigura en el ´
ıos, a ındice, y si no se pone nada
(ni siquiera los corchetes), coger´ el texto del caption.
a
A continuaci´n se pone (tambi´n de forma opcional) el caption de la subfigura
o e
entre corchetes. Despu´s, ya entre llaves, se pone el contenido de la tabla
e
en s´ (generado con un entorno tabular), y opcionalmente una etiqueta para
ı
hacer referencia a la subfigura. La etiqueta (label) en realidad se puede poner
en cualquiera de los par´metros que se le pasan al comando. As´ la etiqueta
a ı,
se podr´ indicar entre los corchetes del caption, en lugar de dentro de las
ıa
llaves.
A continuaci´n se muestra un ejemplo de utilizaci´n de este entorno con
o o
tablas.
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 ( $ ) midrule
Gnat & per gram & 1 3 . 6 5
& each
& 0 . 0 1
Gnu
& stuffed
& 9 2 . 5 0
Emu
& stuffed
& 3 3 . 3 3
Armadillo & frozen & 8 . 9 9 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
Informaci´n adicional sobre L TEX
o A 10 Mayo de 2011
12. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
Gnat & per gram & 1 3 . 6 5
& each
& 0 . 0 1
Gnu
& stuffed
& 9 2 . 5 0
Emu
& stuffed
& 3 3 . 3 3
Armadillo & frozen & 8 . 9 9 hline
end { tabular }
}
end { center }
caption {Comparaci´n entre tablas generadas con y sin texttt {←
o
booktabs }}
end { table }
Item
Item
Animal Description Price ($)
Animal Description Price ($)
Gnat per gram 13.65 Gnat per gram 13.65
each 0.01 each 0.01
Gnu stuffed 92.50 Gnu stuffed 92.50
Emu stuffed 33.33 Emu stuffed 33.33
Armadillo frozen 8.99 Armadillo frozen 8.99
(a) Tabla generada con el paquete booktabs (b) Tabla generada sin el paquete booktabs
Tabla 1.3: Comparaci´n entre tablas generadas con y sin booktabs
o
Informaci´n adicional sobre L TEX
o A 11 Mayo de 2011
13. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
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 {1 cm}
subfloat [ Comandos ] {
label { fig : Autenticacion1−b}
includegraphics [ width =0.4 textwidth ] { ←
configuracionComandos . png }
}
caption {Configuraci´n de comandos de LaTeX }
o
label { fig : Autenticacion 1}
end { figure }
(a) Compiladores LaTeX (b) Comandos
Figura 1.1: Configuraci´n de comandos de LaTeX
o
Informaci´n y ejemplos en la documentaci´n del paquete3 .
o o
3
http://ctan.org/tex-archive/macros/latex/contrib/subfig/
Informaci´n adicional sobre L TEX
o A 12 Mayo de 2011
14. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
1.6. Tabla unica en una p´gina
´ a
Cuando en una p´gina hay s´lo una tabla, ´sta aparece en el centro. Si
a o e
queremos que aparezca en la parte superior de la p´gina, tenemos que escribir
a
el siguiente c´digo:
o
makeatletter
setlength { @fptop }{0 pt}
makeatother
1.7. Uso de colores en tablas
Para colorear las tablas se utiliza el paquete colortbl, que a su vez necesita
los paquetes color y array.
El documento http://www.tug.org/tutorials/tugindia/chap08-scr.pdf
explica de forma muy did´ctica c´mo utilizar colores en tablas.
a o
Informaci´n adicional sobre L TEX
o A 13 Mayo de 2011
15. Cap´
ıtulo 2
Informaci´n adicional sobre
o
comandos
2.1. Notas al pie
El comando footnote permite insertar notas al pie1 que se numeran au-
tom´ticamente. La numeraci´n de las notas al pie se reinicia al empezar un
a o
nuevo cap´
ıtulo (chapter{}), pero es posible reiniciar el contador en cual-
quier momento usando el comando setcounter{footnote}{0}.
De hecho, cambiando el n´mero que se le pasa como segundo par´metro, se
u a
puede asignar cualquier valor al contador.
El comando footnotemark{number} permite insertar una marca de pie de
p´gina con el n´mero que le indiquemos. Es util para poner un pie de p´gina
a u ´ a
una vez, y referenciarlo en diferentes puntos del texto1 . Para que el n´mero
u
se corresponda con el del ultimo pie de p´gina, el comando a utilizar es
´ a
footnotemark[value{footnote}].
El comando footnotetext[number]{text} incluye cierto texto en el pie
de p´gina, pero no incrementa el contador del pie de p´gina, por lo que, o
a a
asignamos un n´mero de forma manual, o mantiene la numeraci´n del ultimo
u o ´
pie de p´gina.
a
Es muy habitual utilizar simplemente el comando footnote{} para poner
notas al pie, pero tambi´n podemos usar footnotemark y footnotetext
e
1
como en este ejemplo
1
como este
14
16. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
para conseguir notas al pie con la numeraci´n que nosotros decidamos.
o
2.2. Numeraci´n del entorno theorem
o
El entorno theorem permite insertar sentencias separadas del texto y con
n´meros identificadores. Requiere el paquete amsthm.
u
newtheorem { midef }{Definici´n}
o
begin { midef }
Esto es una definici´n .
o
end { midef }
Por defecto la numeraci´n de theorem se reinicia al cambiar de cap´
o ıtulo, pero
podemos reiniciarlo manualmente usando el comando setcounter{midef}{0},
y sustituyendo midef por el nombre del entorno teorema cuyo contador que-
ramos reiniciar.
Tambi´n es posible que la numeraci´n del teorema haga referencia a la secci´n
e o o
o cap´ıtulo del texto donde se encuentra. Por ejemplo, “Teorema 2.3” har´ ıa
referencia al tercer teorema del cap´
ıtulo o secci´n 2, en funci´n de si estamos
o o
en un documento que consta de cap´ ıtulos o no.
Para conseguir esto, hay que crear el nuevo tipo de teorema con el siguiente
comando:
newtheorem { midef }{Definici´n } [ numerarPor ]
o
Siendo numerarPor chapter, section, subsection, etc.,en funci´n de la
o
divisi´n a la que queremos que haga referencia la numeraci´n.
o o
newtheorem { midef }{Definici´n } [ chapter ]
o
begin { midef }
Esto es una definici´n numerada seg´n el cap´
o u ıtulo .
end { midef }
begin { midef }
Esto es otra definici´n numerada seg´n el cap´
o u ıtulo .
end { midef }
Definici´n 2.1 Esto es una definici´n numerada seg´n el cap´tulo.
o o u ı
Definici´n 2.2 Esto es otra definici´n numerada seg´n el cap´tulo.
o o u ı
Informaci´n adicional sobre L TEX
o A 15 Mayo de 2011
17. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
2.3. Alineaci´n de entorno description
o
El entorno description nos permite crear una lista de elementos y su des-
cripci´n, como en el siguiente ejemplo.
o
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 {m´quina de ←
a
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 m´quina de escribir.
a
textsf para texto Sans-Serif.
Si queremos que en todos los elementos se reserve el mismo espacio para la
etiqueta (palabra a describir), de forma que las definiciones empiecen siempre
en la misma posici´n, podemos usar el entorno basedscript contenido en el
o
paquete mdwlist
usepackage { mdwlist }
[...]
begin { basedescript }{ desclabelstyle { pushlabel } desclabelwidth←
{2 cm }}
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 {m´quina de ←
a
escribir } .
item [ textsf ] para texto textsf { Sans−Serif } .
end { basedescript }
Informaci´n adicional sobre L TEX
o A 16 Mayo de 2011
18. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
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 m´quina de escribir.
a
textsf para texto Sans-Serif.
En este caso hay que tener cuidado con dejar espacio suficiente para escribir
todas las etiquetas, en caso contrario se podr´ solapar el texto.
ıa
2.4. Listando c´digo con lstlistings
o
El paquete listings proporciona una forma m´s configurable de listar c´digo
a o
que el entorno verbatim.
Para usar este paquete hay que incluirlo en el pre´mbulo:
a
usepackage { listings }
A continuaci´n, para utilizarlo, basta con utilizar el entorno verb+lstlisting+,
o
como en el siguiente ejemplo:
begin{lstlisting}
C´digo a visualizar.
o
end{lstlisting}
Sin embargo, para sacar el mayor partido a este comando, es recomendable
configurarlo para definir c´mo queremos que se muestre el c´digo citado. A
o o
continuaci´n se muestra un ejemplo de configuraci´n.
o o
usepackage { listings }
lstloadlanguages { [ LaTeX ] TeX }
[...]
% C o n f i g u r a c i o n de L i s t i n g s
lstset {
language ={[ LaTeX ] TeX } , % Lenguaje por d e f e c t o
Informaci´n adicional sobre L TEX
o A 17 Mayo de 2011
19. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
% estilos
keywordstyle=textbfseries ttfamily color [ rgb ] { . 8 , . 1 , . 2 } , ←
% e s t i l o s de p a l a b r a s c l a v e , 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 of the f o n t s ←
used f o r t h e code
% espacios
showspaces=false , % show s p a c e s adding ←
particular underscores
showstringspaces=false , % underline spaces within ←
strings
showtabs=false , % show t a b s w i t h i n s t r i n g s through ←
particular underscores
tabsize =6, % s e t s d e f a u l t tab−s i z e t o 2 ←
spaces
% cuadro
backgroundcolor=color [ RGB ] { 2 1 3 , 2 1 3 , 2 5 5 } , % sets ←
background c o l o r ( n e e d s package )
frame=single , ←
% adds a frame around t h e code
rulecolor=color [ rgb ] { . 3 , . 3 , . 3 } , % s e t t h e frame ’ s ←
color .
captionpos=b , % s e t s t h e c a p t i o n −←
p o s i t i o n t o bottom
%
% l i n e breaking
breaklines=true , %←
s e t s automatic l i n e breaking
breakatwhitespace=false , %←
a u t o m a t i c b r e a k s happen a t w h i t e s p a c e
prebreak = raisebox {0 ex } [ 0 ex ] [ 0 ex ] { ensuremath {←
hookleftarrow } } , % Nos d i b u j a una f l e c h a ‘ ‘ guay ’ ’ ←
cuando e l c´digo no e n t r a en una l i n e a
o
escapeinside=++, % Para e s c a p a r a LaTeX . l o s ←
acentos
}
Con esta configuraci´n estamos estableciendo el lenguaje por defecto como
o
L TE
A X, configurando el aspecto que queremos que tenga el c´digo mostrado
o
(color de fondo, tipo de texto, etc.).
Es importante la opci´n escapeinside, que indica qu´ caracteres tendremos
o e
que usar dentro del c´digo para que L TE
o A X procese lo que hay dentro. Se
usa para las tildes, ya que si escribimos tildes directamente, sin poner la
Informaci´n adicional sobre L TEX
o A 18 Mayo de 2011
20. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
palabra que la lleva entre los caracteres de escapeinside, obtendremos un
error porque lstlisting no est´ preparado para soportar esa codificaci´n.
a o
M´s informaci´n sobre este paquete en ftp://ftp.tex.ac.uk/tex-archive/
a o
macros/latex/contrib/listings/listings.pdf.
2.5. Protecci´n2 de comandos
o
Cuando intentamos hacer ciertas cosas, como poner pies de p´gina en el nombre de una
a
secci´n, o una cita en el nombre de una tabla, L TEX nos da errores. Para solucionarlo
o A
tenemos que poner antes del comando problem´tico el comando protect.
a
M´s informaci´n sobre este problema en http://www.tex.ac.uk/cgi-bin/texfaq2html?
a o
label=protect.
2.6. Enlaces
Adem´s de crear enlaces simples incluyendo los paquetes url e hyperref y usando el
a
comando url, tambi´n podemos hacer que cierto texto sea un hiperenlace, y al hacer clic
e
sobre ´l nos lleve a una p´gina web.
e a
Para ello usaremos el comando href, de la siguiente forma:
href{p´gina a enlazar}{texto enlace}
a
Ejemplo:
href{http://www.slideshare.net/digna}{Mi p´gina de slideshare}
a
El c´digo anterior producir´ el siguiente resultado: Mi p´gina de slideshare
o a a
M´s informaci´n en la p´gina de Wikibooks de L TEX.
a o a A
2
Esto es una prueba para comprobar c´mo se pueden poner pies de p´gina en t´
o a ıtulos
de secciones.
Informaci´n adicional sobre L TEX
o A 19 Mayo de 2011
21. Cap´
ıtulo 3
Personalizaci´n del documento
o
3.1. Cambiar el t´
ıtulo del ´
ındice, de los cap´
ıtu-
los, etc.
L TEX asigna un t´
A ı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 un
´
libro 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 Alfab´tica}
e
renewcommand{appendixname}{Ap´ndice}
e
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
22. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
3.2. A˜ adir enlace a la bibliograf´ en el ´
n ıa ındi-
ce
Al utilizar el paquete tocbibind con la opci´n numbib, la bibliograf´ aparecer´ numerada
o ıa a
como si fuera un cap´ ıtulo o una secci´n m´s del documento, en funci´n de la clase de
o a o
documento que se est´ utilizando.
e
usepackage [ numbib ] { tocbibind }
3.3. Personalizaci´n de encabezados y pies de
o
p´gina
a
Una de las formas de definir encabezados y pies de p´gina personalizados es mediante el
a
paquete fancyhdr.
Para utilizarlo, tenemos que cargar el paquete e indicar que queremos usar el estilo de
p´gina fancy, del siguiente modo:
a
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 (p´gina par).
a
O odd page (p´gina impar).
a
L left side (parte izquierda).
C centered (centrado).
R right side (parte derecha).
El siguiente ejemplo1 afecta a las p´ginas pares e impares:
a
fancyhead [ L ] { Centro Universidad del Pa´ Vasco }
ıs
fancyhead [ R ] { Nombre del autor correo−e}
fancyfoot [ L ] { Nombre del trabajo }
fancyfoot [ C ] { thepage }
fancyfoot [ R ]{2010 −2011}
1
Escrito por Unai Mart´
ınez en el wiki de Itsas. http://itsas.ehu.es/workgroups/
latex/recetas
Informaci´n adicional sobre L TEX
o A 21 Mayo de 2011
23. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
3.4. Personalizaci´n de los caption
o
El paquete caption proporciona diferentes opciones para configurar el aspecto de los cap-
tion de figuras y tablas.
El siguiente ejemplo cambia el tama˜o de letra a scriptzise, pone la etiqueta en negrita, el
n
texto 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 s´lo el texto del caption, sin poner ning´n
o u
nombre (no pondr´ Figura x: Texto del caption, sino el texto directamente). Puede ser
a
util 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, porque
´
por defecto el caption aparecer´ centrado, independientemente de la alineaci´n del resto
a o
del 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 n´meros como 1 y los de
u
segundo nivel con n´meros en la forma 1.1
u
renewcommand{theenumii}{arabic{enumii}}
renewcommand{labelenumii}{theenumi .theenumii .}
Si alg´n paquete que est´s usando redefine los theenum, como el babel-spanish, entonces
u e
debes asegurate que LaTeX elija tus par´metros colocando las ´rdenes anteriores entre:
a o
AtBeginDocument{%
comandos aqui..
}
Informaci´n adicional sobre L TEX
o A 22 Mayo de 2011
24. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
3.5.2. Listas no numeradas
Dentro de un itemize, puede especificarse en cada item un par´metro opcional, que es el
a
s´
ımbolo que se mostrar´ (en lugar del topo por defecto), por ejemplo, item[$odot$], y
a
si 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}
Tambi´n puede utilizarse el paquete texttt{pifont}, as´:
e ı
begin{verbatim}
usepackage{pifont}
begin{Pilist}{pzd}{248}
item bla
item bla bla
item bla
end{Pilist}
El entorno Pilist es an´logo a itemize, pero en lugar del bullet usa el car´cter que se le
a a
pida de la fuente que se le pida. En el ejemplo anterior, se usa el car´cter con c´digo 248
a o
de la fuente pzd que tiene gran cantidad de s´ımbolos adecuados para itemize.
Informaci´n adicional sobre L TEX
o A 23 Mayo de 2011
25. Cap´
ıtulo 4
Otros truquillos
4.1. Compilaci´n condicional
o
L TEX permite mostrar u ocultar parte del contenido del documento en funci´n del valor
A o
de una variable. Esto nos permite, por ejemplo, generar una versi´n de un examen con
o
soluciones y otra sin ellas con s´lo cambiar un valor en el documento y compilar de nuevo,
o
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 s e muestran l a s s o l u c i o n e s
[...]
begin { document }
% Enunciado d e l e j e r c i c i o . . .
% Ahora v i e n e n l a s s o l u c i o n e s ( s e muestran s i r e s u e l t o e s t r u e )
ifthenelse { boolean { resuelto }}
{Resoluci´n del ejercicio ( texto a escribir en la versi´n con ←
o o
soluciones ) } %
{ Texto a escribir en la versi´n sin soluciones }
o
4.2. S´
ımbolos habituales
Hay algunos s´ımbolos que se utilizan frecuentemente y requieren paquetes adicionales para
su inserci´n en L TEX.
o A
S´
ımbolo del euro. Paquete eurosym. Comando euro.
24
26. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
S´
ımbolo peri´dico. Paquete yhmath. comando wideparen{}.
o
4.3. F´rmulas qu´
o ımicas
Las f´rmulas qu´
o ımicas sencillas se pueden escribir utilizando la edici´n de ecuaciones t´
o ıpica
de LaTeX. Los sub´ındices se indican con el caracter y los super´ ındices con ˆ Por ejemplo,
.
2−
el c´digo $SO_{4}^{2-}$ genera el siguiente resultado: SO4 .
o
Tambi´n se puede utilizar el paquete mhchem para escribir f´rmulas qu´
e o ımicas de la siguiente
forma: ce{H2S04}, obteniendo el siguiente resultado: H2 SO4 .
Informaci´n del paquete en la p´gina http://dante.ctan.org/tex-archive/macros/
o a
latex/contrib/mhchem/.
6 CO2 + 6 H2 O − → C6 H12 O6 + 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 un
error. Podemos utilizar programas alternativos para evitar tener que estar constantemente
cerrando el documento. En GNU/Linux los navegadores m´s utilizados ya hacen eso, pero
a
en Windows podemos instalar por ejemplo Sumatra PDF (software libre y gratuito) de su
web1 .
Tambi´n podemos probar sobre Windows aplicaciones de GNU/Linux instalando KDE On
e
Windows2 , que nos permitir´ seleccionar qu´ aplicaciones de Linux queremos instalar. El
a e
visor de documentos .ps y .pdf es Okular.
4.5. LyX, acercamiento m´s amigable a LTEX
a A
LyX es un programa libre y multiplataforma (disponible para GNU/Linux, Windows y
Mac) que permite escribir documentos L TEX de forma m´s sencilla. Proporciona una cier-
A a
ta abstracci´n respecto a los comandos, es decir, es algo intermedio entre un editor de
o
latex normal, como TexMakerX, y un procesador de textos tradicional: podemos intro-
ducir comandos latex, la inclusi´n de ecuaciones es igual se sencilla y el resultado del
o
documento es muy profesional, pero seg´n escribimos vamos viendo m´s o menos c´mo
u a o
quedar´ el documento (no vemos exactamente el resultado final a no ser que compilemos,
a
pero tampoco vemos todos los comandos).
1
http://blog.kowalczyk.info/software/sumatrapdf/index.html
2
http://windows.kde.org/
Informaci´n adicional sobre L TEX
o A 25 Mayo de 2011
27. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
La forma m´s sencilla de entenderlo es descargarlo y probarlo, que como es software
a
libre y gratuito no nos cuesta nada. Podemos descargarlo de su web3 , donde tambi´n
e
encontraremos documentaci´n. Adem´s he marcado en Zotero algunos enlaces utiles con
o a ´
informaci´n sobre LyX4 .
o
LyX tiene un tutorial integrado, por lo que para aprender a usarlo recomiendo instalarlo,
ir al men´ Ayuda y abrir el Tutorial.
u
4.6. Integrar herramientas matem´ticas con
a
Lyx
LyX permite escribir de forma sencilla documentos con f´rmulas matem´ticas. Si adem´s
o a a
de escribir estas f´rmulas queremos que se procesen y se generen resultados, podemos
o
integrar herramientas matem´ticas libres como M´xima, Octave o Maple.
a a
Para ello hay que seguir los siguientes pasos:
1. Descargar e instalar M´xima5 .
a
3
http://www.lyx.org/Download
4
http://www.zotero.org/digna/items/collection/2658205
5
http://maxima.sourceforge.net/download.html
Informaci´n adicional sobre L TEX
o A 26 Mayo de 2011
28. Centro Digna Gonz´lez Otero
a
Universidad del Pa´ Vasco
ıs digna.gonzalez@gmail.com
2. Descargar e instalar LyX6
3. Reconfigurar LyX: Men´ Herramientas, Reconfigurar.
u
4. Insertar una ecuaci´n matem´tica: Insertar → Ecuaci´n → Presentada.
o a o
5. Men´ Editar → Ecuaciones → Usar programa de ´lgebra → Maxima.
u a
Hay un documento de ejemplo en formato .lyx disponible en http://maxima.sourceforge.
net/lyx+maxima.lyx.
4.7. Crear dibujos vectoriales
Las im´genes vectoriales tienen la ventaja de que no pierden resoluci´n al ser ampliadas.
a o
El programa m´s popular para la creaci´n de im´genes vectoriales es Corel Draw. Sin
a o a
embargo, existen alternativas libres y gratuitas muy competitivas como Inkscape 7 , que
est´ disponible para varios sistemas operativos.
a
Otra opci´n es utilizar el paquete PSTricks de L TEX para dibujar directamente con co-
o A
mandos PostScript.
Para convertir im´genes de otros formatos a formato vectorial (.eps), se pueden usar
a
programas de dibujo como Gimp8 , que es libre, gratuito y multiplataforma.
6
http://www.lyx.org/Download
7
http://www.inkscape.org/download/?lang=es
8
http://www.gimp.org/
Informaci´n adicional sobre L TEX
o A 27 Mayo de 2011