latex/handout.rst
changeset 30 3ca8ab883c13
child 36 4c4c8a9795b2
equal deleted inserted replaced
29:1a8a7bbc1b1f 30:3ca8ab883c13
       
     1 LaTeX
       
     2 =====
       
     3 
       
     4 Introduction
       
     5 ------------
       
     6 LaTeX is a typesetting program that is excellent for producting scientific and mathematical documents of high typographical quality. It is also suitable for producing all sorts of other documents, from simple letters to complete books. LaTeX uses TeX as its formatting engine.
       
     7 
       
     8 
       
     9 TeX & LaTeX
       
    10 ~~~~~~~~~~~
       
    11 
       
    12 TeX
       
    13 +++
       
    14 
       
    15 TeX is a typesetting system designed and mostly written by Donald Knuth. It was designed with two goals in mind-
       
    16   
       
    17 1. To allow anybody to produce high-quality books using a reasonable amount of effort. 
       
    18 2. To provide a system that would give the exact same results on all computers, now and in the future
       
    19 
       
    20 It’s also a Turing-complete programming language, in the sense that it supports the if-else construct, it can calculate (the calculations are performed while compiling the document), etc., but you would find it very hard to make anything else but typesetting with it. The fine control TeX offers makes it very powerful, but also difficult and time-consuming to use.
       
    21 
       
    22 TeX is renowned for being extremely stable, for running on many different kinds of computers, and for being virtually bug free. 
       
    23 
       
    24 The version number of TeX is converging to π and is now at 3.1415926.
       
    25 
       
    26 The characters T, E, X in the name come from capital Greek letters tau, epsilon, and chi, as the name of TeX derives from the Greek: τέχνη (skill, art, technique); for this reason, TeX's creator Donald Knuth promotes a /tɛx/ pronunciation
       
    27 
       
    28 LaTeX
       
    29 +++++
       
    30 LaTeX is a macro package based on TeX created by Leslie Lamport. It was intended to provide a high-level language that provides access to TeX. It essentially comprises a collection of TeX macros and a program to process LaTeX documents. For the end-users, it is much simpler to use than TeX. It has become the dominant method for using TeX (relatively few people write in TeX anymore).
       
    31 
       
    32 LaTeX is pronounced either as "Lah-tech" or "Lay-tech"
       
    33 
       
    34 WYSIWG vs. WYSIWM
       
    35 ~~~~~~~~~~~~~~~~~
       
    36 The Advantages-
       
    37 
       
    38   * It is free (both as in free-beer and free-speech)
       
    39   * It is platform independent. 
       
    40   * It is very stable. 
       
    41   * LaTeX is ASCII and any text editor of your choice can be used to view and edit the source.
       
    42   * The typesetting is better, especially the maths.
       
    43   * It encourages Authors to write well-structured texts, since specifying structure is an integral part of how LaTeX works.
       
    44   * LaTeX is extensible. If you want a new feature, you can look around for a free add-on or write one yourself. 
       
    45 
       
    46 and some Disadvantages - 
       
    47 
       
    48   * Font selection is difficult 
       
    49   * LaTeX's not good at flowing text around pictures.
       
    50   * LaTeX encourages (almost insists on) structured writing and the separation of style from content. This is not the way that many people (especially non-programmers) are used to working.
       
    51   * Without a WYSIWYG front end, it's not always easy to find out how to do things.
       
    52 
       
    53 LaTeX Source
       
    54 ~~~~~~~~~~~~
       
    55 
       
    56 ::
       
    57 
       
    58   %hello.tex - First LaTeX document
       
    59   \documentclass{article}
       
    60 
       
    61   \begin{document}
       
    62     Hello, World!
       
    63   \end{document}
       
    64 
       
    65 
       
    66 Spaces
       
    67 ++++++
       
    68 
       
    69 LaTeX ignores whitespaces. Multiple white spaces are treated as one space. An empty line between two lines of text is considered as a change of paragraphs. 
       
    70 
       
    71 Special Characters
       
    72 ++++++++++++++++++
       
    73 
       
    74 The characters ``~ # $ % ^ & _ { } \`` have special meanings associated with them.
       
    75 
       
    76 These characters can be used in your document by adding a prefix backslash. ``\~ \# \% \$ \^ \& \_ \{ \} \textbackslash``
       
    77 
       
    78 Comments
       
    79 ++++++++
       
    80 
       
    81 % character is used to insert comments into a LaTeX document. All the text from the % character to the end of that line is ignored by LaTeX.
       
    82 
       
    83 
       
    84 LaTeX Commands
       
    85 ++++++++++++++
       
    86 
       
    87 * LaTeX commands are case sensitive. 
       
    88 * They start with a backslash ``\``
       
    89 * They come in two formats
       
    90 
       
    91   - a backslash followed by a name consisting of letters only. These command names are terminated by any non-letter. 
       
    92   - a backslash followed by exactly one non-character. 
       
    93 
       
    94 * Some commands need to be given a parameter, which is enclosed in curly braces ``{ }``
       
    95 * Some command support optional parameters, which are added after the name in square brackets ``[ ]``
       
    96 
       
    97 LaTeX Environments
       
    98 ++++++++++++++++++
       
    99 
       
   100 Environments are similar in their role, to commands, except that they effect a larger part of the document.
       
   101 
       
   102 * They begin with a ``\begin`` and end with a ``\end``
       
   103 * Nested environments are generally supported
       
   104 
       
   105 Anything in LaTeX can be expressed in terms of Commands and Environments.
       
   106 
       
   107 Hello, World!
       
   108 ~~~~~~~~~~~~~
       
   109 
       
   110 ::
       
   111 
       
   112   %hello.tex - First LaTeX document
       
   113   \documentclass{article}
       
   114 
       
   115   \begin{document}
       
   116     Hello, World!
       
   117   \end{document}
       
   118 
       
   119 Now, look at what each line does. 
       
   120 
       
   121 
       
   122 ``%hello.tex - First LaTeX document``
       
   123 
       
   124   This line is a comment. Comments in LaTeX begin with a %
       
   125 
       
   126 ``\documentclass{article}``
       
   127 
       
   128   This line is a command and sets the documentclass to be used for this document to ``article``. If you want to change the appearance of the document, you simply have to change the documentclass. 
       
   129 
       
   130 
       
   131 ``\begin{document}``
       
   132 
       
   133   This line is the beginning of a LaTeX environment called ``document``. It informs LaTeX that the content of the document is beginning. Anything between the ``\documentclass`` line and this line is called the *preamble*
       
   134 
       
   135 ``Hello, World!``
       
   136 
       
   137   This is the text that is displayed in the document. 
       
   138 
       
   139 ``\end{document}``
       
   140 
       
   141   The ``document`` environment ends here. It tells LaTeX that the document is complete and anything written after this line will be ignored by LaTeX.
       
   142 
       
   143 Compiling & Output
       
   144 ~~~~~~~~~~~~~~~~~~
       
   145 ``latex`` command can be used to get ``dvi`` output. But, we shall be using ``pdflatex`` all through this document and producing ``pdf`` output.
       
   146 
       
   147 ::
       
   148 
       
   149   $pdflatex hello.tex
       
   150 
       
   151   Output written on hello.pdf (1 page, 5733 bytes).
       
   152   Transcript written on hello.log.
       
   153 
       
   154 .. .. image:: sample/hello.jpg
       
   155 
       
   156 
       
   157 
       
   158 Document Structure
       
   159 ------------------
       
   160 
       
   161 This section gives a basic idea about the general sturcture of a LaTeX document. LaTeX is different from other typesetting software in that, it requires the user to specify the logical and semantic structure of the text. Therefore, it helps (almost forces) the author to organize his text better and hence improving the structure and clarity of the document. 
       
   162 
       
   163 ``\documentclass``
       
   164 ~~~~~~~~~~~~~~~~~~
       
   165 
       
   166 The type of the document to be created is specified using the ``\documentclass`` command. 
       
   167 ::
       
   168 
       
   169   \documentclass[options]{class}
       
   170 
       
   171 Here, ``class`` defines the type of document that is to be created. The LaTeX distribution provides a variety of document class, that can be used for a variety of purposes. The ``options`` parameter customizes various properties of the document. The options have to be separated by commas. 
       
   172 
       
   173 For example ``\documentclass[11pt, twoside, a4paper]{article}`` produces a document of the article class with the base font size as eleven points, and to produce a layout suitable for double sided printing on A4 paper. 
       
   174 
       
   175 Some of the document classes that are available in LaTeX are ``article, report, book, slides, letter``
       
   176 
       
   177 
       
   178 The document environment
       
   179 ~~~~~~~~~~~~~~~~~~~~~~~~
       
   180 The text of the document is enclosed in between the commands ``\begin{document}`` and ``\end{document}`` which identify the beginning and the end of the document respectively. 
       
   181 
       
   182 The reason for marking off the beginning of your text is that LaTeX allows you to insert extra setup specifications before it. The reason for marking off the end of your text is to provide a place for LaTeX to be programmed to do extra stuff automatically at the end of the document, like making an index.
       
   183 
       
   184 A useful side-effect of marking the end of the document text is that you can store comments or temporary text underneath the \end{document} in the knowledge that LaTeX will never try to typeset them
       
   185 
       
   186 Preamble
       
   187 ~~~~~~~~
       
   188 Everything written in between the ``\documentclass`` command and the ``\begin{document}`` command is called the Preamble. It normally contains commands that effect the whole document. 
       
   189 
       
   190 Packages
       
   191 ~~~~~~~~
       
   192 
       
   193 While writing your document, you will probably find that there are some areas where basic LaTeX cannot solve your problem. If you want to include graphics, coloured text or source code from a file into your document, you need to enhance the capabilities of LaTeX. Such enhancements are called packages. Packages are activated with the  
       
   194 ::
       
   195 
       
   196   \usepackage[options]{package}
       
   197 
       
   198 command, where package is the name of the package and options is a list of keywords that trigger special features in the package. Some packages come with the LaTeX2e distribution and others are provided separately. You can even write your own packages, if and when required. 
       
   199 
       
   200 Top Matter
       
   201 ~~~~~~~~~~
       
   202 
       
   203 At the beginning of most documents there will be information about the document itself, such as the title and date, and also information about the authors, such as name, address, email etc. All of this type of information within Latex is collectively referred to as top matter. Although never explicitly specified (there is no \topmatter command) you are likely to encounter the term within Latex documentation.
       
   204 
       
   205 An example::
       
   206 
       
   207   \documentclass[11pt,a4paper,oneside]{report}
       
   208   \title{LaTeX - A Howto}
       
   209   \author{The FOSSEE Team}
       
   210   \date{August 2009}
       
   211   \maketitle
       
   212 
       
   213 The ``\title``, ``\author`` and ``\date`` commands are self-explanaotry. You put the title, author name, and date in curly braces after the relevant command. If no date command is used, today's date is insert by default. 
       
   214 
       
   215 Topmatter is always finished by the ``\maketitle`` command
       
   216 
       
   217 Abstract
       
   218 ~~~~~~~~
       
   219 
       
   220 As most research papers have an abstract, there are predefined commands for telling LaTeX which part of the content makes up the abstract. This should appear in its logical order, therefore, after the top matter, but before the main sections of the body. This command is available for the document class article and report, but not book. 
       
   221 ::
       
   222 
       
   223   \documentclass{article}
       
   224   \begin{abstract}
       
   225   Your abstract goes here...
       
   226   \end{abstract}
       
   227   \begin{document}
       
   228   ...
       
   229   \end{document}
       
   230 
       
   231 By default, LaTeX will use the word “Abstract” as a title for your abstract, if you want to change it into anything else, e.g. “Executive Summary”, add the following line in the preamble::
       
   232 
       
   233     \renewcommand{\abstractname}{Executive Summary}
       
   234 
       
   235 Sectioning Commands
       
   236 ~~~~~~~~~~~~~~~~~~~
       
   237 
       
   238 The commands for inserting sections are fairly intuitive. Of course, certain commands are appropriate to different document classes. For example, a book has chapters but an article doesn’t.
       
   239 
       
   240 Examples::
       
   241   
       
   242   \Chapter{LaTeX}
       
   243 
       
   244   \section{Introduction}
       
   245 
       
   246   \subsection{TeX & LaTeX}
       
   247   
       
   248   \subsubsection{TeX}
       
   249 
       
   250 Notice that you do not need to specify section numbers. LaTeX will sort that out for you! Also, for sections, you do not need to markup which content belongs to a given block, using \begin and \end commands, for example. 
       
   251 
       
   252 All the titles of the sections are added automatically to the table of contents (if you decide to insert one). But if you make manual styling changes to your heading, for example a very long title, or some special line-breaks or unusual font-play, this would appear in the Table of Contents as well, which you almost certainly don’t want. LaTeX allows you to give an optional extra version of the heading text which only gets used in the Table of Contents and any running heads, if they are in effect. This optional alternative heading goes in [square brackets] before the curly braces. 
       
   253 ::
       
   254 
       
   255   \section[Short Title]{This is a very long title and the Short Title will appear in the Table of Contents.}
       
   256 
       
   257 Section Numbering
       
   258 +++++++++++++++++
       
   259 
       
   260 You don't need to explicitly do any section numbering as LaTeX does it automatically. Parts get roman numerals, Chapters and Sections get decimal numbering and Appendices are lettered. You can change the depth to which section numbering occurs, which is set to 2 by default. 
       
   261 
       
   262 For example, if you want only the Parts, Chapters and Sections to be numbered and not the subsections, subsubsections etc., you can set the ``secnumdepth`` to 1 using the ``\setcounter`` command. 
       
   263 ::
       
   264 
       
   265   \setcounter{secnumdepth}{1}
       
   266 
       
   267 To get an unnumbered section heading which does not go into the Table of Contents, follow the command name with an asterisk before the opening curly brace.
       
   268 ::
       
   269 
       
   270   \subsection*{Introduction}
       
   271 
       
   272 All the divisional commands from ``\part*`` to ``\subparagraph*`` have this “starred” version which can be used on special occasions for an unnumbered heading when the setting of ``secnumdepth`` would normally mean it would be numbered.
       
   273 
       
   274 Appendices
       
   275 ~~~~~~~~~~
       
   276 
       
   277 The separate numbering of appendices is also supported by LaTeX. The \appendix macro can be used to indicate that following sections or chapters are to be numbered as appendices.
       
   278 ::
       
   279 
       
   280   \appendix
       
   281   \chapter{First Appendix}
       
   282 
       
   283   \appendix
       
   284   \section{First Appendix}
       
   285 
       
   286 Table of Contents
       
   287 ~~~~~~~~~~~~~~~~~
       
   288 
       
   289 All auto-numbered headings get entered in the Table of Contents (ToC) automatically. Just add the command ``\tableofcontents`` at the point where you want it placed. 
       
   290 
       
   291 The counter ``tocdepth`` specifies what depth to take the ToC to. It can be set using the ``\setcounter`` command as shown below. 
       
   292 ::
       
   293 
       
   294   \setcounter{tocdepth}{3}
       
   295 
       
   296 If you want the unnumbered section to be in the table of contents anyway, use the ``\addcontentsline`` command like this.
       
   297 ::
       
   298 
       
   299   \section*{Introduction}
       
   300   \addcontentsline{toc}{section}{Introduction}
       
   301 
       
   302 Entries for the ToC are recorded each time you process your document, and re- produced the next time you process it, so you need to re-run LaTeX one extra time to ensure that all ToC pagenumber references are correctly calculated. We’ve already seen how to use the optional argument to the sectioning commands to add text to the ToC which is slightly different from the one printed in the body of the document. It is also possible to add extra lines to the ToC, to force extra or unnumbered section headings to be included.
       
   303 
       
   304 
       
   305 Bibliography
       
   306 ~~~~~~~~~~~~
       
   307 Any good research paper will have a whole list of references. LaTeX, therefore, has a sane way to manage your references. There are two ways to insert references into your LaTeX document:
       
   308 
       
   309 1. You can embed them within the doucment itself. It's simpler, but it can be time consuming if you are writing several papers about similar subjects so that you often have to cite the same references
       
   310 2. You can store them in an external BibTeX file and then link them to your current document. You can also use a BibTeX style to define how they should appear. This way you create a small databases of the references you might need, and use them as and when you need to cite them. 
       
   311 
       
   312 We shall discuss this in more detail in the Bibliography section. 
       
   313 
       
   314 Including files
       
   315 ~~~~~~~~~~~~~~~
       
   316 When you are working on a large document, you might want to split the input files into multiple files. LaTeX has three methods for inserting one file into another when compiling. 
       
   317 
       
   318 1. ``\input``
       
   319 
       
   320   It is equivalent to an automatic cut-paste just before compiling. To include ``file1.tex`` in our document, we just say
       
   321   ::
       
   322   
       
   323     \input{file1}
       
   324 
       
   325 
       
   326 2. ``\include``
       
   327 
       
   328   It is similar to the ``\input`` command, except that it inserts a new page, each time it is executed. So, it is useful for inserting large blocks like new chapters. To inlcude chapter1.tex in our document, we say
       
   329   ::
       
   330     
       
   331     \include{chapter1}
       
   332 
       
   333 3. ``\includeonly``
       
   334 
       
   335   This command is useful in restricting the ``\include`` commands that we wish to be executed. For example, if we have ``\include{chapter1}``, ``\include{chapter2}`` and ``\include{chapter3}`` in the document, but we wish to just verify the changes made to ``chapter1.tex`` and ignore the other chapters for a while, we could add the following command to the preamble.
       
   336   ::
       
   337 
       
   338     \includeonly{chapter1}
       
   339 
       
   340 A note on filenames
       
   341 +++++++++++++++++++
       
   342 
       
   343 Never use filenames or directories that contain spaces. Make filenames as long or short as you would like, but strictly avoid spaces. Stick to upper or lower case letters (without accents), the digits, the hyphen and the full stop or period.
       
   344 
       
   345 Typesetting Text
       
   346 ----------------
       
   347 
       
   348 Line and Page Breaks
       
   349 ~~~~~~~~~~~~~~~~~~~~
       
   350 
       
   351 Books are often typeset with each line having the same length. LaTeX inserts the necessary line breaks and spaces between words by optimizing the con- tents of a whole paragraph. If necessary, it also hyphenates words that would not fit comfortably on a line. How the paragraphs are typeset depends on the document class.
       
   352 
       
   353 In special cases it might be necessary to order LaTeX to start a newline. 
       
   354 
       
   355 ``\\`` or ``\newline`` starts a newline without starting a new paragraph. 
       
   356 
       
   357 ``\\*`` additionally prohibits a page break after the line break. 
       
   358 
       
   359 [Optional material::
       
   360 
       
   361   \linebreak[n], \nolinebreak[n], \pagebreak[n], \nopagebreak[n]
       
   362 
       
   363   \hyphenation
       
   364 
       
   365   \mbox
       
   366 
       
   367 ]
       
   368 
       
   369 Symbols & More Special Characters
       
   370 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   371 
       
   372 Quotation Marks
       
   373 +++++++++++++++
       
   374 
       
   375 You should not use the " for quotation marks as you would on a typewriter. In publishing there are special opening and closing quotation marks. In  A LaTeX, use two ` (grave accent) for opening quotation marks and two ' (vertical quote) for closing quotation marks. For single quotes you use just one of each.
       
   376 ::
       
   377 
       
   378   `` Here is an example of putting `text' in quotes ''
       
   379 
       
   380 “ Here is an example of putting ‘text’ in quotes ”
       
   381 Need to include an image as example. ?
       
   382 
       
   383 Dashes and Hyphens
       
   384 ++++++++++++++++++
       
   385 
       
   386 LaTeX has four kinds of dashes. Three of them can be accessed with different number of consecutive dashes. The fourth one is a mathematical symbol, the minus sign. 
       
   387 ::
       
   388 
       
   389   The names of these dashes are: `-' hyphen, `--' en-dash, `---' em-dash and `$-$' minus sign.
       
   390 
       
   391 The names for these dashes are: ‘‐’ hyphen, ‘–’ en-dash, ‘—’ em-dash and ‘−’ minus sign.
       
   392 
       
   393 Tilde(~)
       
   394 ++++++++
       
   395 
       
   396 A character often seen in web addresses is the tilde. To generate this in LaTeX you can use ``\~`` but the result ˜ is not really what you want. Try ``$\sim$`` instead.
       
   397 ::
       
   398 
       
   399   http://www.rich.edu/\~{}bush\\
       
   400   http://www.clever.edu/$\sim$demo
       
   401 
       
   402 
       
   403 http://www.rich.edu/˜bush
       
   404 
       
   405 http://www.clever.edu/~demo
       
   406 
       
   407 Ellipsis
       
   408 ++++++++
       
   409 
       
   410 On a typewriter, a comma or a period takes the same amount of space as any other letter. In book printing, these characters occupy only a little space and are set very close to the preceding letter. Therefore, you cannot enter ‘ellipsis’ by just typing three dots, as the spacing would be wrong. Instead, there is a special command for these dots. It is called ``\ldots``
       
   411 
       
   412 Emphasized Words
       
   413 ~~~~~~~~~~~~~~~~
       
   414 
       
   415 If a text is typed using a typewriter, important words are emphasized by underlining them.
       
   416 ::
       
   417 
       
   418   \underline{text}
       
   419 
       
   420 In printed books, however, words are emphasized by typesetting them in an *italic* font. LaTeX provides the command
       
   421 ::
       
   422 
       
   423  \emph{text}
       
   424 
       
   425 to emphasize text. If you use emphasizing inside emphasized text, LaTeX uses normal font for emphasizing. 
       
   426 ::
       
   427 
       
   428   \emph{This is emphasized text, and \emph{this is emphasized text with normal font}, within emphasized text.}
       
   429 
       
   430 *This is emphasized text, and* this is emphasized text with normal font, *within emphasized text.*
       
   431 
       
   432 
       
   433 Cross References
       
   434 ~~~~~~~~~~~~~~~~
       
   435 
       
   436 In books, reports and articles, there are often cross-references to figures, tables and special segments of text. LaTeX provides the following commands for cross referencing::
       
   437 
       
   438   \label{marker}, \ref{marker} and \pageref{marker} 
       
   439 
       
   440 where ``marker`` is an identifier chosen by the user. LaTeX replaces ``\ref`` by the number of the section, subsection, figure, table, or theorem after which the corresponding ``\label`` command was issued. ``\pageref`` prints the page number of the page where the ``\label`` command occurred. 
       
   441 
       
   442 As with the section titles, the numbers from the previous run are used. Therefore, to get the correct numbering, you will need to compile twice. 
       
   443 
       
   444 
       
   445 Footnotes
       
   446 ~~~~~~~~~
       
   447 
       
   448 With the command::
       
   449 
       
   450   \footnote{footnote text}
       
   451 
       
   452 a footnote is printed at the foot of the current page. Footnotes should always be put after the word or sentence they refer to. Footnotes referring to a sentence or part of it should therefore be put after the comma or period.
       
   453 
       
   454 [optional::
       
   455 
       
   456   \marginpar - Margin notes. 
       
   457 
       
   458 ]
       
   459 
       
   460 
       
   461 Itemize, Enumerate, and Description
       
   462 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   463 ::
       
   464 
       
   465   \begin{enumerate}
       
   466     \item You can mix the list   environments to your taste:
       
   467 
       
   468     \begin{itemize}
       
   469       \item But it might start to look silly.
       
   470       \item[-] With a dash.
       
   471     \end{itemize}
       
   472 
       
   473   \item Therefore remember:
       
   474 
       
   475     \begin{description}
       
   476       \item[Stupid] things will not become smart 
       
   477        because they are in a list.
       
   478       \item[Smart] things, though, can be
       
   479        presented beautifully in a list
       
   480     \end{description}
       
   481 
       
   482   \end{enumerate}
       
   483 
       
   484 1. You can mix the list environments to your taste:
       
   485 
       
   486    * But it might start to look silly
       
   487 
       
   488    - With a dash. 
       
   489 
       
   490 2. Therefore remember:
       
   491 
       
   492   **Stupid** things will not become smart because they are in a list
       
   493 
       
   494   **Smart** things, though, can be presented beautifully in a list. 
       
   495 
       
   496 
       
   497 
       
   498 Flushleft, Flushright, and Center
       
   499 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   500 
       
   501 The environments ``flushleft`` and ``flushright`` generate paragraphs that are either left- or right-aligned. The ``center`` environment generates centered text.
       
   502 
       
   503 
       
   504 Quote, Quotation, and Verse
       
   505 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   506 
       
   507 The ``quote`` environment is useful for quotes, important phrases and examples.
       
   508 ::
       
   509 
       
   510   A typographical rule of thumb for the line length is:
       
   511   \begin{quote}
       
   512   On average, no line should
       
   513   be longer than 66 characters.
       
   514   \end{quote}
       
   515   This is why LaTeX pages have
       
   516   such large borders by default
       
   517   and also why multicolumn print
       
   518   is used in newspapers.
       
   519 
       
   520 A typographical rule of thumb for the line length is:
       
   521 
       
   522   On average, no line should be longer than 66 characters.
       
   523 
       
   524 This is why LaTeX pages have such large borders by default and also why multicolumn print is used in newspapers.
       
   525   
       
   526 
       
   527 There are two similar environments: the quotation and the verse environments. The quotation environment is useful for longer quotes going over several paragraphs, because it indents the first line of each paragraph.
       
   528 
       
   529 The verse environment is useful for poems where the line breaks are important. The lines are separated by issuing a \\\\ at the end of a line and an empty line after each verse.
       
   530 
       
   531 
       
   532 
       
   533 Abstract
       
   534 ~~~~~~~~
       
   535 In scientific publications it is customary to start with an abstract which gives the reader a quick overview of what to expect. LaTeX provides the abstract environment for this purpose. Normally abstract is used in documents typeset with the article document class. 
       
   536 ::
       
   537 
       
   538   \begin{abstract}
       
   539   The abstract abstract.
       
   540   \end{abstract}
       
   541 
       
   542 Verbatim
       
   543 ~~~~~~~~
       
   544 Text that is enclosed between ``\begin{verbatim}`` and ``\end{verbatim}`` will be directly printed, as if typed on a typewriter, with all line breaks and spaces, without any LaTeX command being executed.     
       
   545 ::
       
   546 
       
   547   \begin{verbatim}
       
   548   10 PRINT "HELLO WORLD ";
       
   549   20 GOTO 10
       
   550   \end{verbatim}
       
   551 
       
   552 
       
   553 10 PRINT "HELLO WORLD ";
       
   554 
       
   555 20 GOTO 10
       
   556 
       
   557 
       
   558 Within a paragraph, similar behavior can be accessed with
       
   559 ::
       
   560   
       
   561   \verb+text+ 
       
   562 
       
   563 The + is just an example of a delimiter character. You can use any character except letters, * or space.
       
   564 
       
   565 The starred verstion of the verbatim environment emphasizes the spaces in the text. 
       
   566 ::
       
   567 
       
   568   \begin{verbatim*}
       
   569   10 PRINT "HELLO WORLD ";
       
   570   20 GOTO 10
       
   571   \end{verbatim*}
       
   572 
       
   573 10␣PRINT␣"HELLO␣WORLD␣";
       
   574 
       
   575 20␣GOTO␣10
       
   576 
       
   577 Tables, Figures and Captions
       
   578 ----------------------------
       
   579 
       
   580 The ``\tabular`` environment
       
   581 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   582 
       
   583 The tabular environment can be used to typeset beautiful tables with optional horizontal and vertical lines. LaTeX determines the width of the columns automatically.
       
   584 ::
       
   585 
       
   586   \begin{tabular}[pos]{table spec}
       
   587 
       
   588 The table spec argument defines the format of the table. Use an ``l`` for a column of left-aligned text, ``r`` for right-aligned text, and ``c`` for centred text; ``p{width}`` for a column containing justified text with line breaks, and ``|`` for a vertical line.
       
   589 
       
   590 If the text in a column is too wide for the page, LaTeX won’t automatically wrap it. Using ``p{width}`` you can define a special type of column which will wrap-around the text as in a normal paragraph.
       
   591 
       
   592 The pos argument specifies the vertical position of the table relative to the baseline of the surrounding text. Use either of the letters ``t`` , ``b`` and ``c`` to specify table alignment at the top, bottom or center.
       
   593 
       
   594 Within a tabular environment, ``&`` jumps to the next column, ``\\`` starts a new line and ``\hline`` inserts a horizontal line. You can add partial lines by using the ``\cline{i-j}``, where ``i`` and ``j`` are the column numbers the line should extend over.
       
   595 
       
   596 ::
       
   597 
       
   598   \begin{tabular}{|r|l|}
       
   599   \hline
       
   600   7C0 & hexadecimal \\
       
   601   3700 & octal \\ \cline{2-2}
       
   602   11111000000 & binary \\
       
   603   \hline \hline
       
   604   1984 & decimal \\
       
   605   \hline
       
   606   \end{tabular}
       
   607 
       
   608 [include an image of a table, as example]
       
   609 
       
   610 Importing Graphics
       
   611 ~~~~~~~~~~~~~~~~~~
       
   612 
       
   613 Strictly speaking, LaTeX cannot manage pictures directly: in order to introduce graphics within documents, LaTeX just creates a box with the same size of the image you want to include and embeds the picture, without any other processing. This means you will have to take care that the images you want to include are in the right format to be included. This is not such a hard task because LaTeX supports the most common picture formats around.
       
   614 
       
   615 We need to load the ``graphicx`` package in the preamble of the document to be able to include images. 
       
   616 ::
       
   617 
       
   618   \usepackage{graphicx}
       
   619 
       
   620 When compiling with ``pdflatex`` command, (which we assume is being used all through this course) you can insert **jpg**, **png** and **pdf** files. 
       
   621 
       
   622 ::
       
   623 
       
   624   \includegraphics[optional arguments]{imagename}
       
   625 
       
   626 A few ``optional arguments``:
       
   627 
       
   628   ``width=xx``
       
   629     specify the width of the imported image to ``xx``. 
       
   630 
       
   631   ``height=xx``
       
   632     specify the height of the imported image to ``xx``. 
       
   633     Specifying only the width or height of the image will scale the image whilst maintaining the aspect ratio. 
       
   634 
       
   635   ``keepaspectratio``
       
   636     This can be either set to true or false. When set to true, it will scale the image according to both width and height, without distorting the image so that it does not exceed both the width and the height dimensions. 
       
   637 
       
   638   ``scale=xx``
       
   639     Scale the image by a factor of ``xx``. For eg. ``scale=2``, will double the image size. 
       
   640 
       
   641   ``angle=xx``
       
   642     This option can be used to rotate the image by ``xx`` degrees, anti-clockwise. 
       
   643 
       
   644 
       
   645 Floats
       
   646 ~~~~~~
       
   647 
       
   648 Figures and Tables need special treatment, because they cannot be broken across pages. One method would be to start a new page every time a figure or a table is too large to fit on the present page. This approach would leave pages partially empty, which looks very bad.
       
   649 
       
   650 The solution to this problem is to ‘float’ any figure or table that does not fit on the current page to a later page, while filling the current page with body text. LaTeX offers two environments for floating bodies; one for tables and one for figures. To take full advantage of these two environments it is important to understand approximately how LaTeX handles floats internally. 
       
   651 
       
   652 Any material enclosed in a figure or table environment will be treated as floating matter. 
       
   653 ::
       
   654 
       
   655   \begin{figure}[placement specifier] or 
       
   656   \begin{table}[placement specifier]
       
   657 
       
   658 Both float environments support an optional parameter called the placement specifier. This parameter is used to tell LaTeX about the locations to which the float is allowed to be moved. A placement specifier is constructed by building a string of float-placing permissions.
       
   659 
       
   660 +-----------+-------------------------------------------------------------------+
       
   661 | Specifier | Permission                                                        |
       
   662 +-----------+-------------------------------------------------------------------+
       
   663 |   h       |  Place the float here                                             |
       
   664 |           |  (approximately at the same point it occurs in the source text)   |
       
   665 +-----------+-------------------------------------------------------------------+
       
   666 |   t       |  Position at the top of the page.                                 |
       
   667 +-----------+-------------------------------------------------------------------+
       
   668 |   b       |  Position at the bottom of the page.                              |
       
   669 +-----------+-------------------------------------------------------------------+
       
   670 |   p       |  Put on a special page for floats only.                           |
       
   671 +-----------+-------------------------------------------------------------------+
       
   672 |   !       |  Override internal parameters Latex uses for determining “good”   | 
       
   673 |           |  float positions.                                                 |
       
   674 +-----------+-------------------------------------------------------------------+
       
   675 |   H       |  Places the float at precisely the location in the LaTeX code.    | 
       
   676 |           |  Requires the float package. ``\usepackage{float}``.              |
       
   677 |           |  This is somewhat equivalent to h!                                |
       
   678 +-----------+-------------------------------------------------------------------+
       
   679 
       
   680 Examples::
       
   681 
       
   682   \begin{table}[!hbp]
       
   683   \begin{tabular}{...}
       
   684   ... table data ...
       
   685   \end{tabular}
       
   686   \end{table}
       
   687 
       
   688   \begin{figure}[b]
       
   689     \includegraphics[scale=0.5]{image1.jpg}
       
   690   \end{figure}
       
   691 
       
   692 
       
   693 Captions
       
   694 ~~~~~~~~
       
   695 
       
   696 It is always good practice to add a caption to any figure or table. All you need to do is use the ``\caption{text}`` command within the float environment. LaTeX will automatically keep track of the numbering of figures, so you do not need to include this within the caption text.     
       
   697 
       
   698 The location of the caption is traditionally underneath the float. However, it is up to you to therefore insert the caption command after the actual contents of the float (but still within the environment). If you place it before, then the caption will appear above the float.
       
   699 ::
       
   700 
       
   701   \begin{figure}[b]
       
   702     \caption{This is a caption at the top of the image}
       
   703     \includegraphics[scale=0.5]{image1.jpg}
       
   704   \end{figure}
       
   705 
       
   706   \begin{figure}[b]
       
   707     \includegraphics[scale=0.5]{image1.jpg}
       
   708     \caption{This is a caption at the bottom of the image}
       
   709   \end{figure}
       
   710 
       
   711 
       
   712 List of Figures, Tables
       
   713 ~~~~~~~~~~~~~~~~~~~~~~~
       
   714 
       
   715 Captions can be listed in a “List of Tables” or a “List of Figures” section by using the ``\listoftables`` or ``\listoffigures`` commands, respectively. The caption used for each table or figure will appear in these lists, along with the table or figure numbers, and page numbers that they appear on.
       
   716 
       
   717 The ``\caption`` command also has an optional parameter, ``\caption[short]{long}`` which is used for the List of Tables or List of Figures. Typically the short description is for the caption listing, and the long description will be placed beside the figure or table. This is particularly useful if the caption is long, and only a “one-liner” is desired in the figure/table listing. 
       
   718 
       
   719 Typesetting Math
       
   720 ----------------
       
   721 
       
   722 If you wish to typset advanced mathematics, it is best to use the AMS-LaTeX bundle, which is a collection of packages and classes for mathematical typsetting. Note that LaTeX does, provide some basic features and environments for mathematical typsetting, but they are limited and in some cases even inconsistent. We shall stick to using the ``amsmath`` package from the AMS-LaTeX bundle, throughout this course. 
       
   723 
       
   724 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. 
       
   725 
       
   726 Math Mode
       
   727 ~~~~~~~~~
       
   728 
       
   729 There are a few differences between the *math mode* and the *text mode*:
       
   730 
       
   731 1. Most spaces and line breaks do not have any significance, as all spaces are either derived logically from the mathematical expressions, or have to be specified with special commands such as ``\,``, ``\quad`` or ``\qquad``
       
   732 
       
   733 2. Empty lines are not allowed.  
       
   734 
       
   735 3. Each letter is considered to be the name of a variable and will be typeset as such. If you want to typeset normal text within a formula, then you have to enter the text using the \text{...} command
       
   736 
       
   737 Single Equations
       
   738 ~~~~~~~~~~~~~~~~
       
   739 
       
   740 There are two ways to typeset mathematical equations in LaTeX - inline within a paragraph (*text style*), or the paragraph can be broken to typeset it separately (*display style*). 
       
   741 
       
   742 A mathematical equation within a paragraph is entered between ``$`` and ``$``.
       
   743 
       
   744 If you want the larger equations to be set apart from the paragraph, it is better to use the display style. To do this, you enclose the equations within ``\begin{equation}`` and ``\end{equation}``. You can then \label an equation number and refer to it somewhere else in the text by using the ``\eqref`` command. If you want to name the equation something specific, you ``\tag`` it instead. You can’t use ``\eqref`` with ``\tag``. If you donot want LaTeX to number a particular equation, use the starred version of equation using an ``\begin{equation*}`` and ``\end{equation*}``
       
   745 
       
   746 [need to include images as examples?]
       
   747 
       
   748 Building Blocks of a Mathematical Formula
       
   749 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   750 
       
   751 Greek Letters can are entered as ``\alpha, \beta, \gamma, \delta, ...`` for lowercase letters and ``\Alpha, \Beta, \Gamma, ...`` for uppercase ones. 
       
   752 
       
   753 Exponents and Subscripts can be specified using the ^ and the _ character. Most math mode commands act only on the next character, so if you want a command to affect several characters, you have to group them together using curly braces: {...}.
       
   754 
       
   755 The square root is entered as ``\sqrt``; the nth root is generated with ``\sqrt[n]``. The size of the root sign is determined automatically by LaTeX. If just the sign is needed, use ``\surd``.
       
   756 
       
   757 To explicitly show a multiplication a dot may be shown. \cdot could be used, which typesets the dot to the centre. \cdots is three centered dots while \ldots sets the dots on the baseline. Besides that, there are \vdots for vertical and \ddots for diagonal dots.
       
   758 
       
   759 A fraction can be typeset with the command ``\frac{...}{...}``
       
   760 
       
   761 The integral operator is generated with ``\int``, the sum operator with ``\sum``, and the product operator with ``\prod``. The upper and lower limits are specified with ``^`` and ``_`` like subscripts and superscripts.
       
   762 
       
   763 If you put ``\left`` in front of an opening delimiter and ``\right`` in front of a closing delimiter, LaTeX will automatically determine the correct size of the delimiter. Note that you must close every ``\left`` with a corresponding ``\right``.
       
   764 
       
   765 
       
   766 
       
   767 Vertically Aligned Material
       
   768 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   769 
       
   770 Multiple Equations
       
   771 ++++++++++++++++++
       
   772 
       
   773 For formulae running over several lines or for equation systems, you can use the environments ``align`` and ``align*`` instead of ``equation`` and ``equation*``. With ``align`` each line gets an equation number. The ``align*`` does not number anything. 
       
   774 
       
   775 The ``align`` environments center the single equation around the ``&`` sign. The ``\\`` command breaks the lines. If you only want to enumerate some of equations, use ``\nonumber`` to remove the number. It has to be placed before the ``\\``.
       
   776 
       
   777 Arrays and Matrices
       
   778 +++++++++++++++++++
       
   779 
       
   780 
       
   781 Bibliography
       
   782 ------------
       
   783 
       
   784 You can produce a bibliography with the ``thebibliography`` environment.
       
   785 
       
   786 
       
   787 --------------------------------------------------------
       
   788 
       
   789 Acknowledgements, Attributions
       
   790 ------------------------------
       
   791 
       
   792 1. *LaTeX Wikibook*
       
   793 
       
   794 2. *The Not So Short Introduction to LaTeX2e* by Tobias Oetikar et. al. 
       
   795