Latex Handout

28
Preparaci´ on de documentos con L A T E X Preparaci ´ on de documentos con L A T E X Jorge Gaspar Sanz Salinas Diciembre de 2006 Contenidos 1 Situaci ´ on actual 2 ¿Qu ´ e es L A T E X? 3 Software 4 L A T E X 5 Especialidades 6 Para terminar Notas: 1

description

Versión para imprimir del seminario de LaTeX

Transcript of Latex Handout

Page 1: Latex Handout

Preparacion de documentos con LATEX

Preparacion de documentos con LATEX

Jorge Gaspar Sanz Salinas

Diciembre de 2006

Contenidos

1 Situacion actual

2 ¿Que es LATEX?

3 Software

4 LATEX

5 Especialidades

6 Para terminar

Notas:

1

Page 2: Latex Handout

Preparacion de documentos con LATEX

¿Como trabajamos con la documentacion?

• Utilizamos un procesador de textos (Word u OO Writer)• Editar documentos en colaboracion es complicado• Se empieza rapido a trabajar pero algunas

tareas cuestan demasiado (dolor de cabeza):• Manejar las imagenes• Crear un ındice de contenidos• Cambiar la numeracion de las secciones• Controlar los cambios• ¿Ficheros corruptos?• Insertar referencias cruzadas

(a numeros de seccion o paginas),crear ındices analıticos (???) o bibliografıas (???),...

Otra forma de trabajar

Existen herramientas para realizar documentacionutilizando algun marcado y separando presentacion de contenido:

• HTML + CSS• XML/SGML (Docbook)• LATEX

En resumenLATEX es la solucion mas veterana, flexible y extendida

Notas:

2

Page 3: Latex Handout

Preparacion de documentos con LATEX

¿Que es LATEX?

2 ¿Que es LATEX?El nombre del juego¿Como funciona?VentajasDesventajas

TEX (1/2)

• A finales de los 70 Donald Knuth (U. Standford)edita la segunda edicion de su The Artof Computer Programming

• Era la primera vez que se editaba informaticamente• Al recibir la primera galerada vino a decir

algo como “¡¡vaya mierda!!”1

• Ası que decidio hacer su propio sistema decomposicion de documentos: TEX (τεχ)

• Pensaba hacerlo en un ano y tardoocho (version definitiva hacia 1989)

1aproximadamente

Notas:

3

Page 4: Latex Handout

Preparacion de documentos con LATEX

TEX (2/2)

• Las versiones de TEX convergenal numero π (pi)

• Este documento se ha generadocon la version 3.141592

• Cuando Knuth muera, su deseo esque TEX versione a π

• A partir de ese momento los erroresseran considerados como caracterısticas

• Si alguien encuentra un error en TEX,Knuth da 327.68$ y una camiseta (yuhu)

LATEX (1/2)

• TEX es un sistema de bajo nivel,de gran potencia pero difıcil de utilizar

• Unos anos despues, Leslie Lamport decide facilitarel uso de TEX mediante la creacion de macrosque recubren el sistema con una interfaz mas amigable

• Ademas anade algunas funcionalidades nuevascomo la edicion mas sencilla de ındices analıticos,bibliografıas, etc

• Permite al usuario centrarse en la estructura del documento• Le llamo LATEX por su apellido y por la flexibilidad

y facilidad de uso que le habıa dado a TEX

Notas:

4

Page 5: Latex Handout

Preparacion de documentos con LATEX

LATEX (2/2)

ResumiendoLATEX es un comodo familiar con el motor de un Formula 1

¿Como funciona?

ficheros .tex latex.exe DVI

PrevisualizacionPS

Impresion

pdflatex.exe

PDF Acrobat

Notas:

5

Page 6: Latex Handout

Preparacion de documentos con LATEX

Ventajas (1/3)

• Multiplataforma• Un documento se puede repartir en diferentes ficheros• Separacion de la presentacion (maquetacion) del contenido

(WYSIWYM)• Permite definir plantillas• En el proceso de documentacion puede haber roles• Se pueden reutilizar partes de diferentes documentos

• Trabajamos con ficheros de texto• Los documentos son pequenos y no se corrompen• Se puede hacer control de versiones

Ventajas (2/3)

• Mucha documentacion tanto on-line como en papel• Obliga a estructurar el documento• Resultado portable (PDF)• Formulas matematicas (ei·π + 1 = 0)• Facilidad para generar ındices, notas al pie, etc.• Gran cantidad de paquetes para hacer de todo

Notas:

6

Page 7: Latex Handout

Preparacion de documentos con LATEX

Ventajas (3/3)

4

2

3

765

HORIZONTALES

1 Lo pone el perro en el parque (4)2 Rıo catalan con famoso delta (4)3 El pito del mus (2)4 Nota musical, al reves (2)

VERTICALES

5 102 (4)6 Morro, jeta, rostro (4)7 Pozo, al reves (4)

� � ��

� � �� ��� �

44

� ��

��

x = −b±√

b2−4ac2a

r

r r

r

r r

A

×

r

r r r

r

D

r

r r

r

r r

Bm

Desventajas

• Conseguir resultados requiere tiempo• No vemos como va quedando el documento• Redisenar profundamente un documento es difıcil• Casi toda la documentacion esta en ingles• No dispone de muchas fuentes

(no, no esta Comic Sans)

• Es difıcil escribir documentos desorganizados ,

Notas:

7

Page 8: Latex Handout

Preparacion de documentos con LATEX

MiKTEX

• http://www.miktex.org

• Es la distribucion mas extendida para Windows• Se instala facilmente (Siguiente Siguiente, etc.)• Se puede instalar el paquete mınimo y luego MiKTEX

instalara los paquetes conforme se vayan necesitando• Ademas dispone de sistema de gestion de paquetes

y un actualizador.• No incluye ningun editor, solo el sistema

MiKTEX

Notas:

8

Page 9: Latex Handout

Preparacion de documentos con LATEX

Editores disponibles

• Editores “a pelo”

• Vim• Emacs• Notepad ,

• Editores orientados aLATEX

• TeXnicCenter• WinEDT

• Cuasi-procesadores detexto:

• LyX• Scientific Word

Otras herramientas

Ademas del sistema y un editor necesitamos otras herramientas:• Un visor de PDF: Acrobat, Foxit, xpdf, ...• Un visor DVI (MiKTEX instala YAP)• GhostScript para soporte Postscript• Conversores de imagen, etc.

Notas:

9

Page 10: Latex Handout

Preparacion de documentos con LATEX

LATEX

4 LATEXIntroduccionPreambuloEstructuracionNotas al pieFuentesListasTablasFlotantesReferencias

holamundo.tex

Mi primer documento

Jorge

30 de octubre de 2006

1. Primera seccion

¡Hola Mundo!

1

% Preambulo del documento\documentclass[a4paper,12pt]{article}% Paquetes\usepackage[latin1]{inputenc}\usepackage[spanish]{babel}% Datos del documento\title{Mi primer documento}\author{Jorge}\date{\today}%Inicio del texto\begin{document}%Portada\maketitle%Seccion\section{Primera seccion}%Texto¡Hola Mundo!

\end{document}%Fin del documento

Notas:

10

Page 11: Latex Handout

Preparacion de documentos con LATEX

Escribiendo en LATEX

Entrada Resultado

Un salto de lınea Un espacioDos o mas saltos de lınea Cambio de parrafoUno o mas espacios Un espacio% Comentario\# \$ \% \& \_ \{ \} # $ % & { }

Preambulo (1/3)

Clase de documento\documentclass[opciones]{clase}

Clases:

• article

• letter

• report

• book

Opciones:• landscape• oneside — twoside• titlepage — notitlepage• 10pt — 11pt — 12pt• a4paper

Notas:

11

Page 12: Latex Handout

Preparacion de documentos con LATEX

Preambulo (2/3)

Paquetes\usepackage[opciones]{paquete}

• Fuentes• fontenc• times• eurosym• bookhands

• Idioma• inputenc• babel

• Formato

• fancyhdr

• multicol

• booktabs

• Matematicas• amsmath• amssymb

• Otros• graphicx• hyperref• pdfpages• beamer

Preambulo (3/3)

Atributos

• \title{Tıtulo}• \author{Autor}• \date{Fecha}

• \maketitle

Notas:

12

Page 13: Latex Handout

Preparacion de documentos con LATEX

Estructuracion (1/2)

Niveles

• \part{}• \chapter{}• \section{}• \subsection{}

• \subsubsection{}

• \paragraph{}

• \subparagraph{}

• \appendix • \tableofcontents

Estructuracion (2/2)

Comandos

• \section{Tıtulo}• \section*{Tıtulo}• \section[Tıtulo breve]{Tıtulo mas largo}

Notas:

13

Page 14: Latex Handout

Preparacion de documentos con LATEX

Notas al pie

Texto por aquı, texto poralla\footnote{Texto de lanota al pie.}.

Texto por aquı, texto por alla2.

2Texto de la nota al pie.

Fuentes (1/3)

No usarlas directamente

• Mejor el alto nivel que elbajo nivel

Como

• Con comandos que hablende significado, no deformato

• \emph{}↔\textit{}

Definir nuestros propios comandos

• \newcommand{\micomando}[1]{acciones}• Usando #1 para referirse al argumento

Notas:

14

Page 15: Latex Handout

Preparacion de documentos con LATEX

Fuentes (2/3)

Comandos de bajo nivel

Serie \textmd{Media} Media\textbf{Negrita} Negrita

Familia \textrm{Roman} Roman\textsf{Sans Serif} Sans Serif\texttt{Maquina} Maquina

Forma \textup{Recta} Recta\textsl{Torcida} Torcida\textit{Cursiva} Cursiva\textsc{Versalita} VERSALITA

Fuentes (3/3)

Tamanos

\begin{tamano}Texto

\end{tamano}

\tamano Texto...

Tamanos:

• tiny

• scriptsize

• footnotesize• small• normalsize

• large

• Large

• LARGE

• huge

• Huge

Notas:

15

Page 16: Latex Handout

Preparacion de documentos con LATEX

Listas (1/3)

Lista sin numerar (itemize)

\begin{itemize}\item Uno\item Dos\begin{itemize}\item Uno\item Dos\item Tres

\end{itemize}\item Tres

\end{itemize}

• Uno

• Dos

• Uno

• Dos

• Tres

• Tres

Listas (2/3)

Lista numeradas (enumerate)

\begin{enumerate}\item Uno\item Dos\begin{enumerate}\item Uno\item Dos\item Tres

\end{enumerate}\item Tres

\end{enumerate}

1 Uno

2 Dos

1 Uno

2 Dos

3 Tres

3 Tres

Notas:

16

Page 17: Latex Handout

Preparacion de documentos con LATEX

Listas (2/3)

Lista de definiciones (description)

\begin{description}\item[Uno]

Antes del dos.\item[Dos]

Antes del tres.\end{description}

Uno Antes del dos.

Dos Antes del tres.

Tablas (tabular)

\begin{tabular}{|r|r|r|}\hlineNombre & Altura & Peso \\\hlineAlex & 1,76 & 84 \\Juan & 1,83 & 91 \\\hline\end{tabular}

Nombre Altura PesoAlex 1,76 84Juan 1,83 91

Notas:

17

Page 18: Latex Handout

Preparacion de documentos con LATEX

Tablas (booktabs + tabular)

\usepackage{booktabs}[...]\begin{tabular}{rrr}\topruleNombre & Altura & Peso \\\midruleAlex & 1,76 & 84 \\Juan & 1,83 & 91 \\\bottomrule\end{tabular}

Nombre Altura Peso

Alex 1,76 84Juan 1,83 91

Entornos flotantes (table, figure)

float: Objeto que flota, es decir, no aparece necesariamente en el punto deltexto donde se coloca, sino en el ‘mejor’ sitio posible.

Insertando una tabla\begin{table/figure}{pos}[...]\caption{Pie de

figura/cuadro}\end{table/figure}

• pos puede tomar variosvalores por orden depreferencia (p.e. htb)

• \listoftables,\listoffigures

pos Significado

h (here) Ponlo aquıt (top) Ponlo al principiob (bottom) Ponlo al finalp (page) Ponlo aparteH (HERE) Al estilo Word (con float)

Notas:

18

Page 19: Latex Handout

Preparacion de documentos con LATEX

Ejemplo de figure e inclusion de imagenes

Insertando una figura\usepackage{graphicx}[...]\begin{figure}[!tb]\includegraphics[width=0.3\textwidth]

{imgs/mascotas.jpg}\caption{Luisa hace amigos}

\end{figure}

Figura: Luisa hace amigos

Insertando imagenes vectoriales

FilterRasterDialogPanel

(from org::cresques::ui::raster::FilterRasterDialogPanel)

LayerScaleDialog

<< create >>+LayerScaleDialog(lyr:FLyrArcIMS):LayerScaleDialog

ArcImsRasterPropsDialog

<< create >>+ArcImsRasterPropsDialog(layer:FLyrArcIMS,rangeR:int[][],rangeG:int[][],rangeB:int[][]):ArcImsRasterPropsDialog

<< create >>+ArcImsRasterPropsDialog():ArcImsRasterPropsDialog

-loadInfoData():void

+setRasterFilterStackManager(stackManager:RasterFilterStackManager):void+getAssignedBand(flag:int):int

+processBandPanel():boolean

+processTransparencyPanel():boolean

+processEnhancedPanel():boolean

-addFileBand(e:ActionEvent):void

-delFileBand(e:ActionEvent):void

ArcImsPropsDialog

-layerName:String

-hostURL:URL

-svcName:String

-svcType:String

<< create >>+ArcImsPropsDialog(layer:FLayer):ArcImsPropsDialog

-getNewLayerConfig():void

+getArcImsWizard(info:HashMap):ArcImsWizard

-isCorrectlyConfigured():boolean

Package Overview: es.prodevelop.cit.gvsig.arcims.gui.dialogs

<< interface >>

View

(from com::iver::andami::ui::mdiManager::View)

Figura: Diagrama de clases

Notas:

19

Page 20: Latex Handout

Preparacion de documentos con LATEX

Referencias

Insertando referencias\section{Estructuracion}\label{miref}[...]La estructuracion de un documento en \LaTeX{}se trata en la seccion˜\ref{miref}(pagina˜\pageref{miref}).

ResultadoLa estructuracion de un documento en LATEX se trata enla seccion 3 (pagina 25).

Especialidades en LATEX

5 EspecialidadesBibliografıaIndices analıticosGlosariosCodigoMultimedia en PDF

Notas:

20

Page 21: Latex Handout

Preparacion de documentos con LATEX

Citas bibliograficas con BibTEX (1/4)

• BibTEX mejora el tratamiento estandarde bibliografıas

• Permite mantener una base de datosfuera del documento

• Se pueden insertar libros, artıculos,manuales, direcciones web, ...

• Las referencias se insertan por una clave• La presentacion de las referencias

y la bibliografıa puede personalizarse

Citas bibliograficas con BibTEX(3/4)

Insertando referencias bibliograficasSe han estudiado \cite{cerqueira:2002}modelos estandar de segmentos......

\bibligraphystyle{plain}\bibliography{mibbdd} %Sin el .bib

ResultadoSe han estudiado [3] modelos estandar de segmentos...

Referencias. . .[3] Manuel D Cerqueira...

Notas:

21

Page 22: Latex Handout

Preparacion de documentos con LATEX

Citas bibliograficas con BibTEX(4/4)

cardio.bib

@Article{cerqueira:2002,author = "{Manuel D Cerqueira} and {Neil J Weissman}and {Vasken Dilsizian} and {Alice K Jacobs} and {SanjivKaul} and {Warren K Laskey} and {Dudley J Pennell} and{John A Rumberger} and {Thomas Ryan} and {Mario S Verani}",title = {Standardized Myocardial Segmentation andNomenclature for Tomographic Imaging of the Heart},journal = "Circulation",pages = "105--539",year = 2002,publisher = "American {H}eart {A}ssociation",url = "http://circ.ahajournals.org/full/105/4/539"

}

Citas bibliograficas con BibTEX(4/4)JabRef nos puede ayudar a gestionar los ficheros BibTEX

Notas:

22

Page 23: Latex Handout

Preparacion de documentos con LATEX

Indices analıticos

• En documentos grandes puede ser de utilidadcrear un ındice analıtico

• Hay que elegir las entradas y subentradasaplicando un criterio coherente

• Para marcar una palabra se utilizael comando \index{entrada}

• Se pueden indicar referencias(p.ej. figure, vease graficos)

• Hay que tener cuidado con loscaracteres especiales (acentos, etc.)

• Finalmente, si se ha utilizado MAKEINDEX,el ındice se genera con el comando \printindex

Glosarios

• Se utiliza el paquete \gloss• Se escribe el glosario como una bibliografıa• Se puede identificar cada entrada

con un nombre largo y uno corto(p.ej. Interfaz Grafica de Usuario (IGU))

• En el texto se referencian comolas citas bibliograficas

• Podemos mostrar tanto el nombre corto,como el largo, o los dos

• En el PDF se generan hipervınculos:pinchando vamos a la entrada rapidamente

Notas:

23

Page 24: Latex Handout

Preparacion de documentos con LATEX

Insertando codigo fuente con listings (1/4)

• El paquete listings permite incluircodigo fuente de forma sencilla

• Soporta unos 80 lenguajes (y dialectos)• Se pueden definir nuevos lenguajes• Insertar desde ficheros directamente,

completos o solo una parte• Cambiar el aspecto de los listados• Numerar las lıneas• Insertar los listados como objetos “flotantes”• Generar un Indice de listados

Insertando codigo fuente con listings (2/4)

Definiendo el aspecto del listado\usepackage{listings}\lstset{

tabsize=4,%inputencoding=latin1,%extendedchars=true,%basicstyle=\ttfamily\small,%keywordstyle=\bfseries,%commentstyle=\itshape,%breaklines=true,%showstringspaces=false,}

\lstdefinestyle{SQL}{

language={SQL},keywordstyle=\color{red}\bfseries,commentstyle=\color{green}\itshape

}

Notas:

24

Page 25: Latex Handout

Preparacion de documentos con LATEX

Insertando codigo fuente con listings (3/4)

Insertando el listado directamente en el documento

\begin{lstlisting}[style=SQL]DELETE FROM USER_SDO_GEOM_METADATAWHERE TABLE_NAME=’POLIGONOS’ AND COLUMN_NAME=’GEOMETRIA’ ;

INSERTINTO USER_SDO_GEOM_METADATA...

8307);\end{lstlisting}

Insertando el listado desde el codigo fuente

\lstinputlisting[style=SQL,firstline=4,lastline=13]{scripts/ejemplo.sql}

Insertando codigo fuente con listings (4/4)

ResultadoDELETE FROM USER_SDO_GEOM_METADATAWHERE TABLE_NAME = ’POLIGONOS’ AND COLUMN_NAME = ’GEOMETRIA’ ;

INSERTINTO USER_SDO_GEOM_METADATA

(TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)VALUES (

’POLIGONOS’, --Nombre de la tabla’GEOMETRIA’, --Nombre del campo con la geometrıaMDSYS.SDO_DIM_ARRAY

(...

4285138.924922460,4782919.839447332,0.000000050)),8307

);

Notas:

25

Page 26: Latex Handout

Preparacion de documentos con LATEX

Multimedia en PDF

El paquete multimedia (en Beamer proporciona el comando\movie con el que presentar video y audio. Es de esperar quepronto se soporten las pelıculas Flash

Video: cerdovolador.avi Audio: xomu.wav

Conclusiones

• LATEX proporciona un entorno potente y versatilpara realizar todo tipo de documentos

• Muchas tareas son complicadas, y requieren aprendizaje pero elresultado es de una gran calidad

• No es la panacea, muchas tareasno requieren esta herramienta

• La separacion de la presentacion y el contenido,el uso de ficheros de texto y la cantidadde funcionalidad ya resuelta son las grandesbazas de este sistema

• Aunque pequena, la comunidadde usuarios es muy activa

Notas:

26

Page 27: Latex Handout

Preparacion de documentos con LATEX

Para saber mas

Libros

• El libro de LATEX. Pearson Prentice Hall• LATEX Companion. Addison Wesley

Sitios web

• Webs de diferentes TUG:CervaTEX, UKTUG, Indian TUG, ...

• Comprehensive TEX Archive Network: CTAN

Comunicacion

• Grupos de news:• es.comp.lenguajes.tex• comp.text.tex

• Lista de correo: ES-TEX en RedIRIS

Preparacion de documentos con LATEX

Jorge Gaspar Sanz Salinas

Diciembre de 2006

Notas:

27

Page 28: Latex Handout

Preparacion de documentos con LATEX

Reconocimiento

Parte del documento que se presenta ha sido tomadodel trabajo realizado por Sergio Gil, que esta publicado en:

http://sgil.blogspot.com/2005/10/latex.html

Gracias al uso de licencias Creative Commons,y al esfuerzo de personas como Sergio, este trabajo

ha sido mucho mas sencillo y gratificante.

Licencia de este documento

Notas:

28