250 likes | 416 Views
Introduction to LaTeX. CPS470 Software Engineering Fall 1998. Objectives. Learn how to create a simple LaTeX2e document: Create a LaTeX (tex) file. Create and include figures. Reference figures and sections. Create lists. Include other tex files. Generate a postscript file.
E N D
Introduction to LaTeX CPS470 Software Engineering Fall 1998
Objectives • Learn how to create a simple LaTeX2e document: • Create a LaTeX (tex) file. • Create and include figures. • Reference figures and sections. • Create lists. • Include other tex files. • Generate a postscript file. • Cite bibliographic references. CPS 470 Software Engineering
Introduction • Tex • Text processing system for documents with lots of math • Donald Knuth • Latex • Document preparation system based on Tex formatter • Leslie Lamport CPS 470 Software Engineering
References • LaTeX User’s Guide and Reference Manual; Leslie Lamport • The LaTeX Companion; Michel Goossens et. al. • On-line documents. (available from cps470 web page) CPS 470 Software Engineering
Files LaTeX Uses • Input source file (.tex). • Files containing structure and layout definitions (.sty). • Tex formatted output file (.dvi). • Others: .toc (table of contents), .lof (list of figures), .lot (list of tables), .bib (bibliography) CPS 470 Software Engineering
Document Classes • Five standard document classes • article, report, book, slides, letter • Can be further customized • Specifying class options. • Using additional packages (epsfig for including postscript figures) CPS 470 Software Engineering
Minimal LaTeX File \documentclass[12pt]{article} % comments... \begin{document} Text goes here… \end{document} CPS 470 Software Engineering
More Complex LaTeX File \documentclass[12pt]{article} \usepackage{doublespace,epsfig} \usepackage{../custom} \begin{document} \input{abstract} \section{Sample Section} \label{s:sample} Text goes here... \end{document} CPS 470 Software Engineering
Cross-references(internal references) • \label{key-string} • assigns the key key-string to the current element of the document • \ref{key-string} • inserts a string identifying the element to which key-string refers • \pageref{key-string} • inserts the page number on which the element referenced by key-string appears CPS 470 Software Engineering
Cross-reference Example Figure~\ref{f:figexample} in Section~\ref{s:sample} is on page~\pageref{f:figexample}. Figure 1 in Section 1 is on page 1. CPS 470 Software Engineering
Including Other LaTeX Files • Supports modularity • a single LaTeX document can consist of multiple LaTeX files • useful for group work (many authors) • \input{LaTeX-file} • used to include other Latex files • Latex filename is latex-file.tex CPS 470 Software Engineering
Including a ps Figure \begin{figure} [htbp] \centerline{\epsfig{figure=figname.eps, height=2.5in,silent=,clip=}} \caption{\label{f:figexample} Example of a figure.} \end{figure} CPS 470 Software Engineering
Making a List \begin{itemize} % \begin{enumerate} \item Text for this item. \item Text for this item. \end{itemize} % \end{enumerate} CPS 470 Software Engineering
Generating, Viewing, and Printing a Postscript file • latex latex-file.tex • generates latex-file.dvi • xdvi latex-file.dvi • displays dvi file for preview • dvips latex-file.dvi > latex-file.ps • generates postscript file • ghostview latex-file.ps • displays postscript file • lpr -P <printer> latex-file.ps • sends file to the specified printer CPS 470 Software Engineering
Generating ASCII Output • dvi2tty latex-file.dvi > file.text • generates ASCII file of document for viewing CPS 470 Software Engineering
Drawing Tools • xfig • For interactive generation of figures. • Must export encapsulated postscript files (eps). • idraw • Interactive drawing tool. • Saves files automatically in postscript format. CPS 470 Software Engineering
Snapshot • Used to capture a screen or a portion of the screen (a window). • Saves file in raster format or postscript format. • ras2ps converts a Sun raster file to a postscript file. CPS 470 Software Engineering
Advanced Features • Creating a table of contents • Creating a list of figures • Creating a .bib file and a bibliography CPS 470 Software Engineering
Table of Contents • Contains section headings and page number where each section starts. • \tableofcontents Causes LaTeX to generate a .toc file • Must run LaTeX on the file at least twice: • On the first pass, LaTeX collects information • On the second pass, LaTeX reads back information and typesets it. CPS 470 Software Engineering
List of Figures • Contains caption text of the figures and page number where each figure appears. • \listoffigures • Causes LaTeX to generate .lof file. • As for the table of contents, must run LaTeX at least twice. CPS 470 Software Engineering
Bibliographies and BIBTeX • Must create a bibliography “database” • .bib file • formatted by keyword, readable by BIBTeX • Bibliographies can have different formats yet the same .bib file (alphabetical, order of citation, etc.) • BIBTeX formats entries based on the bibliography style chosen (.bst or .sty) • ieeetr, plain, alpha, acm, etc. CPS 470 Software Engineering
BIBTeX Entry • Entry type • book, article, inproceedings, etc. • Keyword identifying publication • should be unique for each entry • Series of fields for each type • author, title, journal, etc. CPS 470 Software Engineering
Referencing .bib entry • \cite{keyword} • \nocite{key1, key2, key3,…} • example: In \cite{pressman97}, the characteristics of software are discussed. In [1], the characteristics of software are discussed. CPS 470 Software Engineering
BIBTex and LaTeX • Command sequence • latex file.tex • bibtex file • latex file • May have to latex file again if unresolved references CPS 470 Software Engineering