unidad 3 - taller de latex (1)

Upload: fernando-medina-aranda

Post on 20-Jul-2015

52 views

Category:

Documents


0 download

TRANSCRIPT

Pontificia Universidad Catlica del Per Escuela de PosGrado Maestra en Informtica Seminario de Tesis 1 Unidad 3: Taller de LaTeX

Profesor: Dr. Andrs Melgar2012-1

Taller de LaTeX2

What you see is what you get (lo que ves es lo que obtienes)

LaTeX

LaTeX es un poderoso sistema para la produccin de textos cientficos y matemticos de alta calidad tipogrfica A diferencia de herramientas WYSIWYG como FrameMaker y Word, usa archivos de texto que contienen comandos de formato Es bien completo, de cdigo abierto, estable y utilizado por muchas empresas editoriales tcnicas

Unwalla, M. (2006). LaTeX: an introduction. Communicator Spring 2006.

3

Principales problemas de los procesadores de texto WYSIWYG El autor pierde tiempo ocupndose de todas las cuestiones referentes al diseo del documento El usuario de procesador de textos no tiene por qu conocer las reglas del diseo de documentos Consecuentemente, es normal que no tome las decisiones adecuadas (i.e., usar pocos tipos de letra o, por el contrario, usar demasiados)

Castro, L. and J. Iglesias (2004). Usando LATEX 1.97.

4

Principales problemas de los procesadores de texto WYSIWYG Los actuales procesadores de texto desarrollan ms la parte visual o decorativa que las propias herramientas de composicin de textos Las reas olvidadas o incmodas de usar en procesadores WYSIWYG siguen siendo las mismas que hace 10 aos: espaciado de palabras colocacin de objetos flotantes (tablas y figuras) mala gestin de referencias ndices (temarios, glosarios, lista de tablas, bibliografias, etc)Castro, L. and J. Iglesias (2004). Usando LATEX 1.97. 5

LaTeX Donald E. Knuth, en la dcada de 1970, dise un programa de composicin tipogrfica denominado TeX especialmente para la escritura de texto matemtico complejo LaTeX es un paquete de macros que permite a los autores usar TeX fcilmente, y utiliza TeX como su motor de formato Est disponible para la mayora de sistemas operativos: Windows, Linux, etc

Unwalla, M. (2006). LaTeX: an introduction. Communicator Spring 2006.

6

LaTeX Los autores escriben archivos de entrada de LaTeX en editores de texto los cuales son posteriormente compilados Los archivos de entrada contienen textos y comandos para procesar los textos Existen GUI especializados que ayudan en la creacin de los archivos e integran las herramientas de compilacin LaTeX produce un archivo independiente del dispositivo (DVI) a partir de cual se puede generar archivos en formato PDF y PostScript (PS)

Unwalla, M. (2006). LaTeX: an introduction. Communicator Spring 2006.

7

LaTeX En algunas situaciones LaTeX es exigente Un error trivial, puede hacer que la salida no se genere y aparezcan muchos mensajes de error Se tendr que comprobar el log de errores, solucionar el problema y volver a compilar En algunos casos se tiene que eliminar algunos archivos intermedios creados

Unwalla, M. (2006). LaTeX: an introduction. Communicator Spring 2006.

8

Estructura de un archivo en LaTeX Clase de documento Formatos predefinidos: artculos, reportes, libros

Paquetes usados Funcionalidad adicional: grficos, estilos de referencia

Cuerpo del documento Texto y bibliografa de referencia

9

Estructura de un archivo en LaTeX Clase de documento\documentclass[options]{class}

class: article, book, report, letter, slides, proc options: 10pt, 11pt, 12pt a4paper, letterpaper, a5paper, b5paper, executivepaper onecolumn, twocolumn landscape draft

10

Estructura de un archivo en LaTeX Paquetes usados\usepackage[options]{package}

Ejemplos: babel inputenc cite color graphicx hyperref listings entre otros11

Estructura de un archivo en LaTeX Cuerpo del documento\begin{document} \end{document}

12

\documentclass[12pt,a4paper]{book} \begin{document} Hola a todos \end{document}

13

Partes de un documentoNombre Parte Clase article \part (optativa) Clase book \part (optativa)

CaptuloSeccin Subseccin

no permitido\section \subsection

\chapter\section \subsection

SubsubseccinPrrafo Subprrafo

\subsubsection\paragraph \subparagraph

\subsubsection\paragraph \subparagraph14

Partes de un documento Cada uno de estos comandos incluye Un nombre (obligatorio) Un nombre corto (opcional) Un asterisco (*)

Ejemplo\chapter[nombrecorto]{nombre largo} \chapter*[nombrecorto]{nombre largo}

15

\documentclass[12pt,a4paper]{book} \begin{document} \chapter{capitulo1} \section{secccion1} \section{secccion2} \chapter{capitulo2} \section{secccion3} \section{secccion4} \chapter{capitulo3} \chapter{capitulo4} \chapter{capitulo5} \end{document}16

Documentos en espaol Creacin del captulo introduccin\chapter{Introduccin} \section{secccion1} \section{secccion2}

Problemas detectados Solucin: Para convertir el ttulo a espaol se usar el paquete babel con la opcin spanish Para poder escribir Introduccin se usar el paquete inputenc con la opcin latin1

17

\documentclass[12pt,a4paper]{book} \usepackage[spanish]{babel} \usepackage[latin1]{inputenc}

18

Caracteres especiales\ {} # & % _ $19

Creacin de la cartula Usar en los elementos del prembulos los comandos\title \author \date

Usar dentro del cuerpo del documento el comando\maketitle

20

... \title{Ejemplo de un documento en LaTeX} \author{Dr. Andrs Melgar \and Dr. Manuel Tupia} \date{29 de noviembre del 1976}\begin{document} \maketitle ...21

Creacin del ndice Usar dentro del cuerpo del documento el comando \tableofcontents Si deseamos que el ndice contenga hipervnculos, incluimos el paquete hyperref

22

... \usepackage{hyperref} \begin{document} \maketitle \tableofcontents ...

23

Escribiendo texto Se puede usar los comandos: textbf para texto en negrita emph para texto en itlica texttt para texto tipo mquina de escribir

Underline para subrayado

\textbf{Este texto est en negrita}, \emph{este en itlica} y \texttt{este typewriter.}

24

Listas Se pueden usar los comandos itemize: para listas no numeradas enumerate: para listas numeradas description: para listas descriptivas

25

... \begin{itemize} \item anlisis \item diseo \item implementacin \end{itemize} ...

26

... \begin{enumerate} \item anlisis \item diseo \item implementacin \end{enumerate} ...

27

... \begin{description} \item[anlisis] El anlisis es la fase XXX. \item[diseo] YYY. \item[implementacin] ZZZ. \end{description} ...

28

Notas al pie de pgina Usar el comando footnote\begin{enumerate} \item anlisis\footnote{ver pgina Web www.pucp.edu.pe} \item diseo \item implementacin \end{enumerate}

29

Diseando tablas Usando el comando tabular

\begin{tabular}{|c|c|} \hline Curso & Nota \\ \hline INF123 & 14.4 \\ \hline \end{tabular}30

Incluyendo imgenes Usar el paquete graphicx Incluir la imagen usando el comando figure \begin{figure}[h!] \centering \includegraphics[width = 0.5\textwidth, viewport=10 12 278 213]{Piramidemetodologica.pdf} \caption{Pirmide metodolgica} \label{fig:piramide} \end{figure}31

Utilizando referencias1. Crear un archivo con la bibliografa en formato bib 2. Usar el paquete cite 3. Incluir dentro del texto del documento, al final, los comandos bibliographystyle y bibliography 4. Incluir dentro del texto las referencias a las citaciones usando el comanto cite

32

...

\usepackage{cite}\begin{document}

\section{Definicin del Problema} Segn \cite{Brassard1987}...

\bibliographystyle{plain} \bibliography{referenciasPUCP} \end{document}33

Estilos de bibliografa phjcp plain abbrv acm these chicagoa amsalpha alpha

http://amath.colorado.edu/documentation/LaTeX/reference/faq/bibstyles.pdf

34

Entorno matemtico Usar los comandos dentro de $ ... $ Ejemplo:$ \sum_{i=0}^{N}i $

35

Escribir algoritmos Usar los paquetes algpseudocode, algorithmicx y algorithm Escribir el algoritmo dentro del entorno algorithmic, usando los comandos\State \If \Else \EndIf \While \EndWhile \For \EndFor \Repeat \Until

36

\begin{algorithmic} \Procedure{intentar}{int $i$, int $x$, int $y$, int $q$} \State int $k$, $u$, $v$, $q1$ \State $k \leftarrow 0$ \Repeat \State $q1 \leftarrow 0$ \State $u \leftarrow x + m[k][0]$ \State $v \leftarrow y + m[k][1]$ \State $k \leftarrow k+1$ \If {($0 \leq u < n$) $\wedge$ ($0 \leq v < n$)} \If {($h[u][v]==0$)} \State $h[u][v]=i$ \If {($i < n^{2}$)} \State $INTENTAR(i+1, u, v, q1)$ \If {($\neg q1$)} \State $h[u][v]=0$ \EndIf \Else \State $q1 \leftarrow 1$ \EndIf \EndIf \EndIf \Until{$q1$ $\vee$ (k=8)} \State $q \leftarrow q1$ \EndProcedure \end{algorithmic}

37

Escribir algoritmos Se pueden referenciar los algoritmos usando el comando ref

38

Incluir cdigo fuente Usar el paquete listings Incluir el archivo fuente usando el comando \lstinputlisting

39

... \usepackage{listings} \def\lstlistingname{Programa} ... \begin{document} ... \lstinputlisting[caption={Ejemplo de la funcin main}, label=pro:main, language=C]{main.c} ... \end{document}

40

ContactoDr. Andrs Melgar Sasieta Pontificia Universidad Catlica del Per Departamento de Ingeniera Seccin de Ingeniera Informtica [email protected] 511-6262000 Ext 4811

41