diff options
Diffstat (limited to 'lecture_notes/source/latex')
-rw-r--r-- | lecture_notes/source/latex/handout.rst | 711 | ||||
-rw-r--r-- | lecture_notes/source/latex/images/latex_not_wp.png | bin | 0 -> 9674 bytes | |||
-rw-r--r-- | lecture_notes/source/latex/index.rst | 6 | ||||
-rw-r--r-- | lecture_notes/source/latex/lab_workbook.rst | 112 | ||||
-rw-r--r-- | lecture_notes/source/latex/module_plan.rst | 74 |
5 files changed, 903 insertions, 0 deletions
diff --git a/lecture_notes/source/latex/handout.rst b/lecture_notes/source/latex/handout.rst new file mode 100644 index 0000000..2177361 --- /dev/null +++ b/lecture_notes/source/latex/handout.rst @@ -0,0 +1,711 @@ +Introduction +============ + +LaTeX is a typesetting program that produces excellently typeset documents. +Typesetting is placing text onto a page with all the style formatting +defined, so that content looks as intended. It is extensively used for +producing high quality scientific and mathematical documents. It may also be +used for producing other kinds of documents, ranging from simple one page +articles to complete books. LaTeX is based on the TeX typesetting language. + +LaTeX is pronounced either as "Lah-tech" or "Lay-tech". + + +Why LaTeX? +========== + +A few reasons for using LaTeX - + + * It produces documents with excellent visual quality. + * It does the typesetting for you, leaving you - the author - to focus on + writing the content. You will appreciate this, as you learn more. + * It makes writing math just as easy as writing simple text. + * It's renowned for it's stability and a virtually bug free code base. + * It is light on your resources as compared to most of the word processors + available today. + * It uses plain text files as input and can give output in a variety of + formats including PDFs and html making it platform independent. + * It is free software (free as in freedom) and gratis too. + * It is widely used and has a large user community. + + +Course Outline +============== + +In this course, we will learn enough LaTeX to be a able to produce a simple +document with text, tables, figures, math, references and bibliography. We +will also briefly see how to create presentations using LaTeX, such as the +one use for the slides of this course. + +The sample document, ``sample.pdf``, available in the course material, will +serve as a teaching/learning tool to learn LaTeX. During the course, we shall +reproduce this sample document, starting from scratch, in LaTeX + +A Look at the Sample Document +----------------------------- + +A look at the sample document gives us an idea about the various elements +present in the document, that we will be learning during this course. + +We shall be learning how to add the following elements to our LaTeX +documents. + + * Title, Author, Date + * Abstract + * Sections & Subsections + * Appendices + * References/Bibliography + * Tables + * Figures + * Math + + +LaTeX is not a Word Processor +============================= + +What do we mean by LaTeX not being a Word Processor? Suppose we wanted to +create a simple document as shown in the image below. If one used a normal +word processor, the author would have to worry about setting the font sizes +of the fonts, centering the title, date and author information, etc. + +.. image:: images/latex_not_wp.png + :alt: LaTeX is not a Word Processor + +To generate this document in LaTeX, we just tell it what we want as the +title, author's name, date etc. and what we want as the content. LaTeX takes +care of proper font size ratios and other presentation details. + +:: + + \documentclass{article} + \title{My First Document} + \author{FOSSEE} + \date{January 2011} + \begin{document} + \maketitle + Hello world! + \end{document} + +LaTeX can be considered to be a document based markup language. What we mean +by a markup language is that you mark up pieces of your text to be particular +elements of your document and then a typesetter or processor typesets your +document based on a set of rules. What do we mean by being document-based? It +means, that in LaTeX, you can change the structure of the whole document +consistently, with a few changes in the preamble of the document, with-out +having to change each element separately. + +First steps -- Typesetting a minimal document +============================================= + +Let us start with a minimal example to learn how to write a LaTeX document +and compile it to see the **typeset** output. + +To begin, type out the following code into your text editor and save it as +``draft.tex``. :: + + \documentclass{article} + \begin{document} + SciPy is open-source software for mathematics, science, and engineering. + \end{document} + +To compile your document, type the following command in your terminal:: + + $ pdflatex draft.tex + +This produces the output file ``draft.pdf`` + +Note: The ``latex`` command is often used, instead of ``pdflatex`` to get the +``dvi`` output. But, throughout this course, we shall use ``pdflatex`` to +compile our documents. + +What does it mean? +------------------ + +As we have already seen, LaTeX is a document based markup. The first line, +``\documentclass{article}``, tells that our document is an article type +document. LaTeX then, typesets the document accordingly. The documentclass +command, defines the structure and formatting of our document. + +The ``begin`` and ``end`` document commands, mark the beginning and the end +of the content of the LaTeX document. The text in between the begin and end +commands is typeset in the output document. + +A little digression +=================== + +Just like in ``bash`` and ``Python``, the commands in LaTeX are +case-sensitive. ``\Documentclass`` is therefore not a valid command. + +All the commands in LaTeX begin with a ``\``. An environment begins with a +``begin`` command and ends with an ``end`` command. In our minimal example, +``document`` is an environment. Only the text enclosed by the begin and end +commands is effected by the environment. + +So, as expected LaTeX ignores anything that is written after the +``\end{document}`` command. (The part of the file before the +``\begin{document}`` command is called the preamble, and is used to +*"configure"* the LaTeX typesetter and change various parameters for +typesetting. Details later.) + +Essentially, anything written after the ``\end{document}`` command turns out +to be a comment. But, how do we write comments with in the document. ``%`` is +the character to indicate comments. Anything written after a ``%`` symbol in +a line, is ignored. For example, we can add a comment to the minimal document +saying, this is our first document in LaTeX, by saying ``% My First LaTeX +document``. + +But what if we wanted to insert the ``%`` symbol in the document? We can do +so by escaping it with a ``\`` (backslash). ``%`` is one of the many special +characters in LaTeX. The others are, ``~ # $ ^ & _ { } \``. All of them, +except the ``\`` itself, can be inserted by escaping it with a ``\``. To +insert a ``\`` in our document, we use the command ``\textbackslash``. + +What would happen if we escape a ``\`` with a ``\``? Yes, you guessed it. A +double backslash is actually another command. It inserts a new line in the +typeset document. The ``\\`` command or ``\newline`` command is used to +insert a newline in the output document. Line breaks in the input document, +do not translate into line breaks in the output document. A single line break +in the input document, doesn't cause any change in the output. A single empty +line causes a change in paragraphs in the output. (Multiple empty lines are +equivalent to a single empty line.) Similarly, multiple spaces are treated as +a single space. + +Adding Structure +================ + +Let us now, look at giving the document some basic structure, like title, +sections, etc. + +``\documentclass`` +------------------ + +As we have already seen, the ``documentclass`` command tells LaTeX, the type +of the document that we intend to create. Some of the available LaTeX classes +are, ``article``, ``proc``, ``report``, ``book``, ``slides``, ``letter``. +Each class has a few differences in how the content of the document is +typeset. + +The ``documentclass`` command also accepts a few optional parameters. For +example:: + + \documentclass[12pt,a4paper,oneside,draft]{report} + +``12pt`` specifies the size of the main font in the document. The relative +sizes of the various fonts is maintained, when the font size is changed. If +no size is specified, ``10pt`` is assumed by default. + +``a4paper`` specifies the size of the paper to be used for the document. + +``draft`` marks the hyphenation and justification problems in the document +with a small square in the right hand margin of the document, so that they +can be easily spotted. + +Top Matter +---------- + +Let us begin with adding the Title, Author's name and the date to the +document. + +:: + + \documentclass{article} + \title{A Glimpse at Scipy} + \author{FOSSEE} + \date{June 2010} + \begin{document} + \maketitle + SciPy is open-source software for mathematics, science, and engineering. + \end{document} + +We add the title, the author and the date to the document before the +``\begin{document}`` directive. We compile the document to see if the details +appear in the document, but they donot. These details do not appear in the +document until we use the ``\maketitle`` command with the document +environment to instruct LaTeX to place the top matter information into the +document. Now the document has these details, on compiling again. + +If no date is specified, LaTeX automatically inserts the current date. + +Abstract +-------- + +Next we shall add an abstract to our document. LaTeX provides an environment, +for adding an abstract to the document. + +:: + + \documentclass{article} + + \title{A Glimpse at Scipy} + \author{FOSSEE} + \date{June 2010} + + \begin{document} + + \maketitle + + \begin{abstract} + This document shows a glimpse of the features of Scipy that will be explored during this course. + \end{abstract} + + SciPy is open-source software for mathematics, science, and engineering. + \end{document} + +The abstract environment is placed at the location where we wish it to appear +in the document. + +Sections +-------- + +Now let's look at how to add (chapters,) sections and sub-sections to our +document. Let's add the section headings and sub headings present in our +sample document to the working copy of our document. + +``\section``, ``\subsection``, ``\subsubsection`` + +On compiling, we can see that the headings of the sections and the +sub-sections appear in the document. + +You may have noticed that LaTeX automatically numbers the sections. To +prevent a section from getting numbered, an asterix is appended to the +corresponding sectioning command. + +If the document was a longer document, we could have used a report or a book +class. (Note: Books donot have the abstract environment.) Let's look at what +happens to the document, when we change it to the report class. + +The numbering strangely begins from zero, now. This is because, chapters have +an additional sectioning command called ``\chapter``. The chapter is one +level above a section and since, our document does not have a ``\chapter`` +command, the sections are numbered from 0. To change this, we add a chapter +command before the first section. We say + +:: + + \chapter{One} + +Now, observe that we now have a chapter title appearing and the numbering +starting from 1. + +Also, note that the subsubsections donot get a numbering now. This is +controlled by a variable called the secnumdepth. By default it is set to 2. +We can now, change it to 3 and get numbering for subsubsections also. + +:: + + \setcounter{secnumdepth}{3} + +What do you expect to happen if we changed the secnumdepth to 1? What if it +is 0 or -1? + + +Appendix +-------- + +Notice that our document also has an appendix. Let's add an appendix +to our document. + +:: + + \appendix + \section{Plotting using Pylab} + +Table of Contents +----------------- + +Our sample document is not long enough to warrant a table of contents, but +let us learn to add a table of contents to a LaTeX document. If you ever +tried adding a table of contents, to a document in a wordprocessor, you would +know how much of a trouble it is. In LaTeX, it is a matter of just one +command and placing the command at the location where you would want to have +the table of contents. Let's now add a table of contents to our draft. Now, +compile the document and look at the output document. It does not have the +table of contents! + +On the first compilation only the "Contents" heading appears in the document, +but the actual table does not appear. You will need to compile your document +once more, for the actual table to appear in your document. On the first run, +LaTeX has gone through your document and generated a temporary file +(``.toc``), with the entries that should go into the table of contents. These +entries are made, when you compile your document for the second time. + +Note that any section/block that has been numbered automatically appears in +the table of contents. It is possible to get un-numbered sections, for +instance a Preface or a Foreword section to appear in the Table of Contents. + +Let's change our Introduction section to be an un-numbered one and try to +make it appear in the table-of-contents. :: + + \section*{Introduction} + \addcontentsline{toc}{section}{Intro} + +We shall talk about adding and managing bibliographies, later in the course. + +Now, that we have the basic structure of the document, let's get into the +content and the details of it. + +Typesetting Text +~~~~~~~~~~~~~~~~ + +Let's begin with adding the second paragraph to the introduction section. +Let's place the text of the second para, after the first line, that we +already have. Now, compile the document. + +As already discussed, we need to an insert an empty line, to insert a new +paragraph in LaTeX. Also, notice that the new paragraph is indented. + +Quotation Marks +--------------- + +Look at the quotation marks around the text, Sigh Pie. They are not formatted +properly. To place quotation marks in LaTeX, you should use ````` character +for the left quote & ``'`` character for the right quote. For double quotes, +they should be used twice. + +Fonts +----- + +The names of the software tools, Scilab, Matlab, etc. appear in italics or +emphasized as it is called in LaTeX. To emphasize text, the ``\emph`` command +is used. + +Let's also add the contents of the subsection "Sub-packages of Scipy". We +shall add the table as plain text, until we learn how to edit tables. + +Let's try and form a tabular structure by separating the left and right +columns using spaces. On compiling we find that LaTeX doesn't add multiple +spaces between words. Just like multiple empty lines, multiple spaces are +considered as a single space. + +Also, we notice that ``LaTeX`` starts a new paragraph at the beginning of the +table. To avoid this, we use the ``flushleft`` environment. + +The names of the sub-packages appear in a fixed width font in the sample +document provided to us. The headings of the columns appear in bold-face. +Let's make changes to this effect. + +``\textbf`` is used to change text to bold face and ``\texttt`` is used to +change text to fixed width font. + +We could also change the separating - (hyphen) to an em-dash (or en-dash) -- +is em-dash and --- is an em-dash, to improve the appearance of the document. + +Lists +===== + +The section on Use of Scipy in this course, contains lists. Let's now add +lists to our document. The ``enumerate`` environment adds numbered lists to +our document and the ``itemize`` environment adds un-numbered lists. +``\item`` command adds a new entry to a list. Note, that LaTeX can easily +handle nested lists. In fact most environments can be embedded within other +environments, without any problems. + +LaTeX also has a description list, which shall be an exercise, for you. + + +Footnotes, Labels and References +================================ + +Let's now add the footnote to pylab. LaTeX provides a footnote command to add +a footnote. + +We added the footnote with Appendix A, as plain text. But, in case we added +another Appendix before the section on using ``pylab``, the footnote will +have to be edited. To avoid this, LaTeX provides a handy system of labels and +referencing. + +We first add a label to the section that we want to refer in this +footnote. Then, we change the footnote, and add the reference to this +label instead of the character A. If you look at the output after +compiling the document once, you will see that the footnote has +question marks instead of the section number. You will have to +compile once again, for the section number to appear in the footnote. + + +Including code +============== + +In the footnote above, and in the table for the sub-packages list, we +used the ``\texttt`` command to get a fixed width font. But we could +instead use an environment provided by LaTeX to include pre-formatted +text or code. LaTeX by default provides the verbatim environment to +include pre-formatted text. You can try that out during the lab +session. We shall look at using the listings package, specifically +meant for including code in our document. + +First of all you need to tell LaTeX, that you want to use the listings +package in your document. We add the directive +``\usepackage{listings}`` to the preamble of our document. + +Then we set the language of the code that we are going to embed into +our document. For this we use the lstset command. :: + + \lstset{language=Python, + showstringspaces=false,} + +The listings package allows you to use color and do a lot of things +with your embedded code, but all that during a lab exercise. + +Now, to put a line of code, inline and not as a separate block, we use +the ``\lstinline`` command. We change the name pylab in the footnote +to use lstinline instead of the texttt. To embed a block of code, we +use the lstlisting environment (``\begin{lstlisting}`` and +``\end{lstlisting}``). For example, let's add the code to the Appendix +of our document. + +Figures, Tables and Floats +========================== + +Let's now add the figure, to the appendix. + +To include graphics in a LaTeX document, we need to use the graphicx +package. Add the ``\usepackage{graphicx}`` directive to the preamble +of the document. + +To add the graphic, use the ``includegraphics`` command. The relative +path of the image that we wish to include is passed as an argument to +includegraphics. It takes an optional argument of scaling the +image. We use a scale of 0.4 to scale our image. + +It takes other optional arguments. + + ``width=x``, ``height=x`` + If only the height or width is specified, + the image is scaled, maintaining the aspect ratio. + + ``keepaspectratio`` + This parameter can either be set to true or false. When set to + true, the image is scaled according to both width and height, + without changing the aspect ratio, so that it does not exceed both + the width and the height dimensions. + + ``angle=x`` + This option can be used to rotate the image by ``x`` degrees, + counter-clockwise. + +Figures (and tables) are treated specially because, they cannot be +broken across pages. They are "floated" across to the next page, if +they donot fit on the current page, filling the current page with +text. + +To make our graphic into a float, we should enlose it within a figure +environment. For a table, the table environment should be used. We now +move our graphic into a figure environment. The figure environment +takes an additional parameter for the location of the +float. ``\begin{figure}[hbtp!]``. The specifiers ``htbp`` are +permissions to place the float at various locations. ``t`` for top of +page, ``b`` for bottom of page, ``p`` for a separate page for floats +and ``h`` for here, as in the same place where the command appears in +the source. ``!`` mark overrides a few of LaTeX's internal parameters +for good position of floats. + +The figure environment also, allows us to add a caption to the graphic +using the ``\caption`` command. + +To place the graphic in the center aligned in the page, we use the +center environment. + +To label a figure, we just add a label with in the figure +environment. Note, that the label to a figure should be added after +the caption command. Also, note that tables are auto-numbered. + +Let us finish the appendix, by adding the content present at the +beginning of the appendix. The bibliographic citations will be dealt +with later. + +Tables +------ + +Now, let us look at the other kind of floats - Tables. We shall +convert the list of sub-packages in the sub-packages section to a +table. + +To begin a table, we use the tabular environment. And to make this a +float, it is enclosed in the table environment. The table environment +also allows us to add captions to the table and Tables are also auto +numbered. + +The tabular environment takes as arguments the columns and the +formatting of each column. The possible arguments to the tabular +environment are + ++---------------+------------------------------------+ +| ``l`` | left justified column content | ++---------------+------------------------------------+ +| ``r`` | right justified column content | ++---------------+------------------------------------+ +| ``c`` | centered column content | ++---------------+------------------------------------+ +| ``|`` | produces a vertical line. | ++---------------+------------------------------------+ + +It also takes an optional parameter that specifies the position of the +table; ``t`` for top, ``b`` for bottom, or ``c`` for center. + +Each column of a table is separated by an ``&`` symbol and each row is +separated by a new line. The ``\hline`` command allows you to draw +horizontal lines between two rows of the table. But it does not allow +you do draw partial lines. ``\cline{a-b}`` draws a horizontal line +from column ``a`` to column ``b``. + +We also add a label to the table and refer to it in the first line of +the section. + +You could also add a listoftables or listoffigures to the document, +similar to the way we added table of contents. + +Typesetting Math +================ + +Now we shall move to typesetting the Math in the sample document given +to us. We shall start with the Matrices subsection. + +In general, it is advised to use the AMS-LaTeX bundle to typeset +mathematics in LaTeX. AMS-LaTeX is a collection of packages and +classes for mathematical typesetting. + +We load ``amsmath`` by issuing the ``\usepackage{amsmath}`` in the +preamble. Through out this section, it is assumed that the ``amsmath`` +package has been loaded. + +Let's now typeset the matrix A. + +To typeset math, we just have to enclose it within ``\(`` and ``\)`` +or a pair of ``$`` signs. + +To typeset the matrix A, we use the ``bmatrix`` environment. It works +similar to a tabular environment - ``&`` is used to demarcate columns +and ``\\`` is used to add a new row. ``bmatrix`` environment gives the +``[`` ``]`` as delimiters. There are 5 other matrix environments +giving matrices with other delimiters - ``matrix`` (none), ``pmatrix`` +``(``, ``Bmatrix`` ``{``, ``vmatrix`` ``|`` and ``Vmatrix`` ``||``. + +To write the name of the matrix A, a bold-faced A is used. This is +obtained by using the ``\mathbf`` command. + +This subsection doesn't have much more math. The next section on +inverse doesn't have anything new except for writing inverse of A. + +To typeset superscripts in LaTeX, the ``^`` character is used. The +carat operator just acts on the next character. To have multiple +characters as superscript they must be enclosed in ``{ }``. Similarly +for typesetting text as subscripts the ``_`` character is used. + +To typeset the summation symbol, use the command ``\sum.`` The upper +and lower limits are specified using the ``^`` and ``_`` +characters. Similarly, the integral symbol is obtained using the +``\int`` command. + +Next, let us type in the equation present in the section on +Determinants. Note that it is different from all the math we've typed +until now, since it is not inline and is "displayed", in the LaTeX +lingo. LaTeX has a number of environments for displaying equations, +with minor subtle differences. In general use ``\[`` ``\]`` to typeset +displayed equations without numbering them. ``\begin{equation*}`` is +equivalent to it. To obtain numbered equations use +``\begin{equation}``. + +Next we wish to typeset a group of equations. The equation environment +does not accept ``\\`` to get a new line. For multiple equations +amsmath has a handful of environments with subtle differences. We +shall use the ``eqnarray`` environment. ``eqnarray*`` environment +gives unnumbered equations, as expected. The ``eqnarray`` environment +works similar to a table environment. The parts of the equation that +need to be aligned are indicated using an ``&`` symbol. The +``newline`` command is used to enter a every new equation after the +first one. We now typeset the equations in the section on linear +equations using the ``eqnarray`` environment. (The equations in the +determinants section use ``eqnarray*``) + +We next typeset the math in the section on polynomials. To typeset +fractions use the ``\frac`` command. To typeset surds, we use the +``\sqrt`` command with the optional paramter of ``[n]``. + +Inserting Greek letters into LaTeX is simple. ``\alpha``, ``\beta``, +``\gamma``, ... on for small letters and ``\Alpha``, ``\Beta``, +``\Gamma``, ... for capital. + +Also, math environments do not give extra spaces using the space or +tab characters. The following commands are available to specify the +spacing required. + ++---------+--------------------+---------+ +| Abbrev. | Spelled out | Example | ++---------+--------------------+---------+ +| ``\,`` | ``\thinspace`` | | ++---------+--------------------+---------+ +| ``\:`` | ``\medspace`` | | ++---------+--------------------+---------+ +| ``\;`` | ``\thickspace`` | | ++---------+--------------------+---------+ +| | ``\quad`` | | ++---------+--------------------+---------+ +| | ``\qquad`` | | ++---------+--------------------+---------+ +| ``\!`` | ``\negthinspace`` | | ++---------+--------------------+---------+ +| | ``\negmedspace`` | | ++---------+--------------------+---------+ +| | ``\negthickspace`` | | ++---------+--------------------+---------+ + +Bibliography +============ + +Let's now look at how to write bibliography and cite references. + +Writing bibliographies in LaTeX using the ``thebibliography`` +environment is pretty easy. You simply have to list down all the +bibliography items within the bibliography environment. + +Each entry of the bibliography begins with the command +``\bibitem[label]{name}``. The name is used to cite the bibliography +item within the document using ``\cite{name}``. The label option +replaces the numbers from the auto enumeration with the labels given. + +The ``9`` passed as an argument to ``thebibliography`` command +indicates the maximum width of the label that the references will +have. In our sample document, we have less than 10 items in the +Bibliography and therefore we use 9. + +Presentations with Beamer +========================= + +Using beamer for you presentations is a good idea, since you can use +the LaTeX that you have used for the report/document for the +presentation as well. + +To write a ``beamer`` presentation, it is recommended that we use one +of the templates that beamer provides. We shall use the +``speaker_introduction`` template to get started with beamer. + +As you can see, the document begins with the ``documentclass`` being +set to beamer. + +``\usetheme`` command sets the theme to be used in the presentation. + +``\usecolortheme`` command sets the color theme of the presentation. + +Notice that each slide is enclosed within ``\begin{frame}`` and +``\end{frame}`` commands. The ``\begin{frame}`` command can be passed +the Title and Subtitle of the slide as parameters. + +The title page of the presentation can be set like any other LaTeX +document. + +To do overlays, use the ``\pause`` command. It does sequential +overlays. Non sequential overlays can also be done. (Lab exercise.) + +If you have fragile environments like ``verbatim`` or ``lstlisting``, +you need to give the frame an optional parameter ``[fragile]``. + +To achieve more with beamer, it is highly recommended that you look at +the ``beameruserguide``. + +.. + Local Variables: + mode: rst + indent-tabs-mode: nil + sentence-end-double-space: nil + fill-column: 77 + End: diff --git a/lecture_notes/source/latex/images/latex_not_wp.png b/lecture_notes/source/latex/images/latex_not_wp.png Binary files differnew file mode 100644 index 0000000..1836d17 --- /dev/null +++ b/lecture_notes/source/latex/images/latex_not_wp.png diff --git a/lecture_notes/source/latex/index.rst b/lecture_notes/source/latex/index.rst new file mode 100644 index 0000000..cd0c36e --- /dev/null +++ b/lecture_notes/source/latex/index.rst @@ -0,0 +1,6 @@ +====== + LaTeX +====== + +.. include :: handout.rst +.. include :: lab-workbook.rst diff --git a/lecture_notes/source/latex/lab_workbook.rst b/lecture_notes/source/latex/lab_workbook.rst new file mode 100644 index 0000000..62eb78f --- /dev/null +++ b/lecture_notes/source/latex/lab_workbook.rst @@ -0,0 +1,112 @@ +Exercises +========= + +Lab-1 +----- + +#. Compile and produce a pdf output of ``example1.tex``. + +#. Modify ``example1.tex`` replacing ``LaTeX`` with {\\LaTeX}. + +#. Add a title, author and date to the document. + +#. What happens if {\\date} is replaced by {\\date{IIT, Bombay}} ? + +#. Debug and compile examples 2, 3, 4, 5 + +#. Provide a document (pdf and source) with a TOC, but has been compiled + only once. Exercise for Debugging. + +#. What happens when you add the following {} code to the document from + the previous question? + + :: + + \renewcommand{\contentsname}{What is Here?} + +#. Experiment with setting the secnumdepth counter to 1, 0, -1. + +#. Debug and compile example 6. + +#. Experiment with the options of {\\documentclass}. + + - 10pt, 11pt, 12pt sets the size of the text of the document. + + - onecolumn, twocolumn + + - draft — makes {} highlight problems in typesetting to be looked at + by a human. + +Lab-2 +----- + +#. {\\newpage} command adds a page break. Add some page breaks to + example 6 and see how the command works. + +#. Try out the commands {\\pagestyle} and {\\thispagestyle} with the + following parameters and look at the outputs obtained. + + - ``empty``, + + - ``plain``, + + - ``heading`` + +#. Add the following description list describing the options to + {\\includegraphics} command to a document and look at the output. + + :: + + \begin{description} + \item[{\texttt{width=x}, \texttt{height=x}}] + If only the height or width is specified, the image is scaled, maintaining the aspect ratio. + + \item[{\texttt{keepaspectratio}}] + This parameter can either be set to true or false. When set to true, the image is scaled according to both width and height, without changing the aspect ratio, so that it does not exceed both the width and the height dimensions. + + \item[{\texttt{angle=x}}] + This option can be used to rotate the image by \texttt{x} degrees, counter-clockwise. + + \end{description} + +#. {\\ldots} is used to get ellipsis in {} documents. + +#. Read the manual of listings package and learn how to include a set of + lines from a file into a {} document. Include a few lines from your + previous lab exercises of ULT. + +#. To change the line spacing of your document {\\usepackage{setspace}} + and then specify the line spacing of your document, using + {\\doublespace}, {\\onehalfspace}, etc. + +#. Debug and compile examples 9, 10 + +Lab-3 +----- + +#. Debug and compile example 7. + +#. BibTeX is another way of handling bibliography. Look at bibtex.rst + and change draft.tex to use BibTeX. + +#. As you would’ve already observed, {} compilation produces a lot of + other files along with the pdf output. + + - .log — gives a log of what happened during last compilation. + + - .toc — stores section headers. Edit this file and observe changes + in this document to see how the compilation of {} works and why + two compilations are required for table of contents to work. + + - .aux — used to share information between consecutive compiler + runs. + +#. Prepare a presentation in beamer with solutions to any 10 problems + from the Lab workbook. + +#. Debug and compile example 8. + +#. Finish the incomplete parts of the draft to obtain the complete + output of the sample document that we started out to prepare. + + diff --git a/lecture_notes/source/latex/module_plan.rst b/lecture_notes/source/latex/module_plan.rst new file mode 100644 index 0000000..d30539a --- /dev/null +++ b/lecture_notes/source/latex/module_plan.rst @@ -0,0 +1,74 @@ +LaTeX +===== + +Module Objectives +----------------- + +After completing this module, a participant will be successfully able to: + +- Produce professional documents in LaTeX. RBT Ap +- Typeset Mathematical equations. RBT Ap +- Include figures, tables and code samples. RBT Ap +- Add References and write BibTeX files. RBT Ap + +Suggested Reading +----------------- + +1. *LaTeX Wikibook* + +2. *The Not So Short Introduction to LaTeX2e* by Tobias Oetikar et. al. + + +Session Level Split-up +---------------------- + ++----------------------------------+--------+ +| Session Details | Time | ++----------------------------------+--------+ +| Introduction | 20 min | +| - TeX & LaTeX | | +| - Why LaTeX | | +| - LaTeX as a markup | | +| - Typesetting a minimal document | | +| - commands, environments | | +| - comments, special characters | | +| - Spacing | | +| | | +| Adding Structure | 25 min | +| - documentclass, top matter | | +| - abstract | | +| - sections | | +| - appendix | | +| - ToC | | +| | | +| Typesetting Text | 20 min | +| - quotation marks | | +| - emphasis | | +| - lists | | +| - footnotes | | +| - labels and references | | +| - verbatim, lstlisting | | ++----------------------------------+--------+ +| Figures, Tables & Floats | 20 min | +| - includegraphics | | +| - floats | | +| - captions & references | | +| - tabular | | +| - list of tables, figures | | +| | | +| Typesetting Math | 25 min | +| - amsmath | | +| - matrices | | +| - sub-scripts, superscripts | | +| - summation, integration | | +| - displayed math | | +| - groups of equations | | +| - fractions, surds | | +| - greek letters, spacing | | +| | | +| Bibliography | 5 min | +| | | +| Presentations - Beamer | 10 min | ++----------------------------------+--------+ + + |