Slide 1

Slide 1 text

TEX: typesetting system L A TEX: document preparation system Adriano de Jesus Holanda Departamento de F´ ısica e Matem´ atica FFCLRP-USP 2010-04-28

Slide 2

Slide 2 text

TEX L ATEX Further Details Outline 1 TEX Introduction Basics Running TEX Hoω αbout Mαth? 2 L A TEX Introduction Basics Common Structure BIBTEX 3 Further Details

Slide 3

Slide 3 text

TEX L ATEX Further Details Introduction TEX – τ χ (greek: “art/craft”) Typesetting system Prof. Donald Erwin Knuth Emeritus Professor of “The Art of Computer Programming” (TAOCP) Stanford University, USA Main contributor to the Analysis of Algorithms field using asymptotic notation Motivation Unsatisfaction with printed version of TAOCP2 2nd ed., due to declined quality of the typesetting using new software and digital printer technology.

Slide 4

Slide 4 text

TEX L ATEX Further Details Introduction TEXfamily Language → TEX (Pascal); Font engine → METAFONT; Font family → Computer Modern; Output format → Device independent format (DVI) [Fuchs, 1979].

Slide 5

Slide 5 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978]

Slide 6

Slide 6 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex

Slide 7

Slide 7 text

TEX L ATEX Further Details Introduction Processing steps X converter TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex

Slide 8

Slide 8 text

TEX L ATEX Further Details Introduction Processing steps X converter Y converter TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex

Slide 9

Slide 9 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex PostScript [Adobe, 1982]

Slide 10

Slide 10 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex PostScript [Adobe, 1982] dvips

Slide 11

Slide 11 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex PostScript [Adobe, 1982] dvips

Slide 12

Slide 12 text

TEX L ATEX Further Details Introduction Processing steps TeX TeX [Knuth, 1978] DVI [Fuchs, 1979] tex PostScript [Adobe, 1982] dvips

Slide 13

Slide 13 text

TEX L ATEX Further Details Introduction Typographic concepts Unit of measure: PostScript point ≡ 1 72 in ∼ = 0.3528mm; 4in 300pt 10cm

Slide 14

Slide 14 text

TEX L ATEX Further Details Introduction Typographic concepts Glyph: pictorial representation of typographical token;

Slide 15

Slide 15 text

TEX L ATEX Further Details Introduction Typographic concepts Kerning: Shifting between pair of consecutive glyphs. +

Slide 16

Slide 16 text

TEX L ATEX Further Details Introduction Typographic concepts Kerning: Shifting between pair of consecutive glyphs. -

Slide 17

Slide 17 text

TEX L ATEX Further Details Basics Boxes height Reference point depth Baseline width

Slide 18

Slide 18 text

TEX L ATEX Further Details Basics Boxes height Reference point depth Baseline width

Slide 19

Slide 19 text

TEX L ATEX Further Details Basics Boxes Examples 10 pt characters

Slide 20

Slide 20 text

TEX L ATEX Further Details Basics Boxes Examples 10 pt characters

Slide 21

Slide 21 text

TEX L ATEX Further Details Basics Boxes Examples 10 pt characters

Slide 22

Slide 22 text

TEX L ATEX Further Details Basics Glue Stretchability example width 5 width 6 width 3 width 8 space 9 stretch 3 shrink 1 width 52 space 9 stretch 6 shrink 2 width 52 space 12 stretch 0 shrink 0 width 52

Slide 23

Slide 23 text

TEX L ATEX Further Details Basics Glue Stretchability example width 5 width 6 width 3 width 8 space 9 stretch 3 shrink 1 width 52 space 9 stretch 6 shrink 2 width 52 space 12 stretch 0 shrink 0 width 52 “TEX! Please, make the horizontal list into a box that is 58 units wide” width 58

Slide 24

Slide 24 text

TEX L ATEX Further Details Basics Glue Stretchability example 9 + (+6/9)x3 = 9 + 2 9 + (+6/9)x6 = 9 + 4 12 + (+6/9)x0 = 12 + 0 width 58

Slide 25

Slide 25 text

TEX L ATEX Further Details Basics Glue Shrinkability example width 5 width 6 width 3 width 8 space 9 stretch 3 shrink 1 width 52 space 9 stretch 6 shrink 2 width 52 space 12 stretch 0 shrink 0 width 52

Slide 26

Slide 26 text

TEX L ATEX Further Details Basics Glue Shrinkability example width 5 width 6 width 3 width 8 space 9 stretch 3 shrink 1 width 52 space 9 stretch 6 shrink 2 width 52 space 12 stretch 0 shrink 0 width 52 “TEX! Please, make the horizontal list into a box that is 51 units wide” width 51

Slide 27

Slide 27 text

TEX L ATEX Further Details Basics Glue Shrinkability example 9 + (−1/3)x1 = 9 − 0.33 9 + (−1/3)x2 = 9 − 0.66 12 + (−1/3)x0 = 12 − 0 width 51

Slide 28

Slide 28 text

TEX L ATEX Further Details Basics Vertical boxes

Slide 29

Slide 29 text

TEX L ATEX Further Details Basics Vertical boxes \baselineskip= glue \lineskip= glue \lineskiplimit= dimen

Slide 30

Slide 30 text

TEX L ATEX Further Details Basics Vertical boxes \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 5pt 3pt

Slide 31

Slide 31 text

TEX L ATEX Further Details Basics Vertical boxes \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 5pt 3pt 4pt

Slide 32

Slide 32 text

TEX L ATEX Further Details Basics Vertical boxes \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 5pt 4pt 3pt

Slide 33

Slide 33 text

TEX L ATEX Further Details Basics Vertical boxes \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 5pt 3pt 4pt + 2pt = 6pt

Slide 34

Slide 34 text

TEX L ATEX Further Details Basics Vertical boxes 8pt 1pt \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 3pt

Slide 35

Slide 35 text

TEX L ATEX Further Details Basics Vertical boxes 8pt \baselineskip=12pt plus 2pt \lineskip=3pt minus 1pt \lineskiplimit=2pt 3pt - 1pt = 2pt 3pt

Slide 36

Slide 36 text

TEX L ATEX Further Details Running TEX Running TEX(1) Setting horizontal size $ tex $ **\relax $ *\input story $ *\hsize=3in \input story $ *\hsize=2.5in \input story $ *\hsize=2in \input story $ *\end $ xdvi texput.dvi

Slide 37

Slide 37 text

TEX L ATEX Further Details Running TEX Running TEX(2) Setting tolerance $ tex $ **\relax $ *\input story $ *\hsize=2in \tolerance=1600 \input story $ *\hsize=1.5in \input story $ *\tolerance=10000 \input story $ *\hsize=.75in \input story $ *\end $ xdvi texput.dvi

Slide 38

Slide 38 text

TEX L ATEX Further Details Hoω αbout Mαth? $Mαth symbols$ greek letters Input Output $\alpha$ α $\gamma$ γ $\Gamma$ Γ $\Psi$ Ψ $\Omega$ Ω

Slide 39

Slide 39 text

TEX L ATEX Further Details Hoω αbout Mαth? $Mαth symbols$ greek letters Input Output $\alpha$ α $\gamma$ γ $\Gamma$ Γ $\Psi$ Ψ $\Omega$ Ω operators Input Output $\sum$ $\prod$ $\int$ $\cap$ ∩ $\vee or \lor$ ∨

Slide 40

Slide 40 text

TEX L ATEX Further Details Hoω αbout Mαth? $Mαth formulαs$ Input Output $xˆ2$ x2 $x 2$ x2 $2ˆx$ 2x $xˆ2yˆ2$ x2y2 $x ˆ2y ˆ2$ x2y2 $x 2y 2$ x2y2 $ 2F 3$ 2F3 Input Output $xˆ{2y}$ x2y $2ˆ{2ˆx}$ 22x $2ˆ{2ˆ{2ˆx}}$ 222x $y {x 2}$ yx2 $y {xˆ2}$ yx2

Slide 41

Slide 41 text

TEX L ATEX Further Details Hoω αbout Mαth? + $$ Mαth $$ $$ \sqrt{1+ \sqrt{1+\sqrt{1+\sqrt{1+\sqrt{1+x}}}}} \eqno(1) $$ 1 + 1 + 1 + 1 + √ 1 + x (1)

Slide 42

Slide 42 text

TEX L ATEX Further Details Hoω αbout Mαth? + + $$ Mαth $$ a0 + 1 a1 + 1 a2 + 1 a3 + 1 a4 (2)

Slide 43

Slide 43 text

TEX L ATEX Further Details Introduction L A TEX– Document preparation system The father Leslie Lamport Mathematician and Programmer Microsoft Research Motivation Unsatisfaction with TEX80 macros writen by Max Diaz when he was writing a book

Slide 44

Slide 44 text

TEX L ATEX Further Details Basics L A TEX Macro Example Macro \documentclass[a4paper, 12pt]{article}

Slide 45

Slide 45 text

TEX L ATEX Further Details Basics L A TEX Macro Example Macro \documentclass[a4paper, 12pt]{article} Expansion: /usr/share/texmf-texlive/tex/latex/base/article.cls

Slide 46

Slide 46 text

TEX L ATEX Further Details Basics L A TEX Macro Example Macro \documentclass[a4paper, 12pt]{article} Expansion: \DeclareOption{a4paper} {\setlength\paperheight {297mm}% \setlength\paperwidth {210mm}}

Slide 47

Slide 47 text

TEX L ATEX Further Details Basics L A TEX Macro Example Macro \documentclass[a4paper, 12pt]{article} Expansion: \DeclareOption{12pt}{\renewcommand\@ptsize{2}}

Slide 48

Slide 48 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 49

Slide 49 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 50

Slide 50 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 51

Slide 51 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 52

Slide 52 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 53

Slide 53 text

TEX L ATEX Further Details Common Structure L A TEXdocument: basic structure \documentclass[a4paper, 12pt]{article} % preamble \usepackage[parameter]{package} \begin{document} \section{First section name} text text text \subsection{Second section name} text text text \subsubsection{Third section name} text text text \end{document}

Slide 54

Slide 54 text

TEX L ATEX Further Details BIBTEX Bibliographic database filename.bib @BOOK{latexbook, AUTHOR = ”Leslie Lamport”, TITLE = ”LaTeX: A Document Preparation System”, PUBLISHER = ”Addison-Wesley”, YEAR = 1986 }

Slide 55

Slide 55 text

TEX L ATEX Further Details BIBTEX Bibliographic database filename.bib @BOOK{latexbook, AUTHOR = ”Leslie Lamport”, TITLE = ”LaTeX: A Document Preparation System”, PUBLISHER = ”Addison-Wesley”, YEAR = 1986 } filename.tex Producing Greek letters is as easy as$\pi$˜\cite{latexbook}.

Slide 56

Slide 56 text

TEX L ATEX Further Details BIBTEX Bibliographic database filename.bib @BOOK{latexbook, AUTHOR = ”Leslie Lamport”, TITLE = ”LaTeX: A Document Preparation System”, PUBLISHER = ”Addison-Wesley”, YEAR = 1986 } filename.tex Producing Greek letters is as easy as$\pi$˜\cite{latexbook}. $ echo ‘‘run bibtex and latex 2 times’’ $ bibitex filename

Slide 57

Slide 57 text

TEX L ATEX Further Details BIBTEX Bibliographic database filename.bib @BOOK{latexbook, AUTHOR = ”Leslie Lamport”, TITLE = ”LaTeX: A Document Preparation System”, PUBLISHER = ”Addison-Wesley”, YEAR = 1986 } filename.tex Producing Greek letters is as easy as$\pi$˜\cite{latexbook}. $ echo ‘‘run bibtex and latex 2 times’’ $ bibitex filename $ latex filename $ latex filename

Slide 58

Slide 58 text

TEX L ATEX Further Details BIBTEX Bibliographic database @BOOK{latexbook, AUTHOR = ”Leslie Lamport”, TITLE = ”LaTeX: A Document Preparation System”, PUBLISHER = ”Addison-Wesley”, YEAR = 1986 } manuscript Producing Greek letters is as easy as π [1]. References [1] Leslie Lamport. LaTeX: A Document Preparation System. Addison-Wesley, 1986.

Slide 59

Slide 59 text

TEX L ATEX Further Details BIBTEX “Three L A TEXmistakes that people should stop making?” 1 Worrying too much about formatting and not enough about content;

Slide 60

Slide 60 text

TEX L ATEX Further Details BIBTEX “Three L A TEXmistakes that people should stop making?” 1 Worrying too much about formatting and not enough about content; 2 Worrying too much about formatting and not enough about content;

Slide 61

Slide 61 text

TEX L ATEX Further Details BIBTEX “Three L A TEXmistakes that people should stop making?” 1 “ Worrying too much about formatting and not enough about content; 2 Worrying too much about formatting and not enough about content; 3 Worrying too much about formatting and not enough about content.” (Leslie Lamport)

Slide 62

Slide 62 text

TEX L ATEX Further Details TEX’s children COnTEXt;

Slide 63

Slide 63 text

TEX L ATEX Further Details TEX’s children COnTEXt; pdfTEX, pdfL A TEX;

Slide 64

Slide 64 text

TEX L ATEX Further Details TEX’s children COnTEXt; pdfTEX, pdfL A TEX; Ω;

Slide 65

Slide 65 text

TEX L ATEX Further Details TEX’s children COnTEXt; pdfTEX, pdfL A TEX; Ω; XETEX;

Slide 66

Slide 66 text

TEX L ATEX Further Details TEX’s children COnTEXt; pdfTEX, pdfL A TEX; Ω; XETEX; LuaTEX.

Slide 67

Slide 67 text

TEX L ATEX Further Details References Donald Erwin Knuth The TEXbook. Addison-Wesley, 20th printing, 1991. Yannis Haralambous Fonts & encodings O’Reilly Media, 1st edition, 2007. Leslie Lamport LaTeX: A Document Preparation System Addison-Wesley, 2nd edition, 1994.

Slide 68

Slide 68 text

TEX L ATEX Further Details Very useful URLs • http://www.ctan.org – Comprehensive TeX Archive Network ( CTAN); • http://www-cs-faculty.stanford.edu/~knuth/ – Donald Knuth homepage; • http://www.lamport.org – Leslie Lamport homepage.

Slide 69

Slide 69 text

TEX L ATEX Further Details Where to find me? http://adrianoholanda.org