Difference between revisions of "LaTeX"

From PrattWiki
Jump to navigation Jump to search
(FAQ)
 
(25 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
image=[[File:LaTeX logo.png|200 px]]|
 
image=[[File:LaTeX logo.png|200 px]]|
 
caption=|
 
caption=|
version=pdfeTeX 3.141592-1.21a-2.2|
+
version=pdfTeXk 3.141592-1.40.3|
 
dlocation=On Unix|
 
dlocation=On Unix|
 
manufacturer=|
 
manufacturer=|
 
webpage=[http://www.latex-project.org/ <math>LaTeX</math> Project]|
 
webpage=[http://www.latex-project.org/ <math>LaTeX</math> Project]|
 
label_color=|Color value_color=|
 
label_color=|Color value_color=|
update=8/19/2012}}  
+
update=8/26/2019}}  
  
 
'''LaTeX''' is a document preparation system written by Don Knuth (TeX) and extended by Leslie Lamport.  It is a powerful, and free, way to generate professional, dynamic documents.
 
'''LaTeX''' is a document preparation system written by Don Knuth (TeX) and extended by Leslie Lamport.  It is a powerful, and free, way to generate professional, dynamic documents.
Line 14: Line 14:
 
==LaTeX on Pratt Pundit==
 
==LaTeX on Pratt Pundit==
 
===The Basics===
 
===The Basics===
Pratt Pundit can process most basic LaTeX structures by using <code>math</code> tags.  For example,  
+
 
 +
Pratt Pundit can process most basic \(\LaTeX\) structures by using <code><nowiki>\(</nowiki></code> and <code><nowiki>\)</nowiki></code> or math tags around \(\LaTeX\) code.  For example,  
 
<center>
 
<center>
<math>q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\,\!</math>
+
<math>q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau</math>
 
</center>
 
</center>
 
can be created using
 
can be created using
<source lang="latex">
+
<source lang="bash">
 
<center>
 
<center>
<math>q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\,\!</math>
+
<math>q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau</math>
 
</center>
 
</center>
 
</source>
 
</source>
  
Note that the <code>\,\!</code> part '''forces''' Pundit to create a PNG graphic out of the equation.  Otherwise, it may try to render the equation using text:
+
Equations can also be inline - for instance,  <math>c^2=a^2+b^2-2ab\cos(\theta)</math> is an equation.  The code for that is:
<center>
+
<source lang="latex">
<math>q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau</math>
+
Equations can also be inline - for instance,  <math>c^2=a^2+b^2-2ab\cos(\theta)</math> is an equation.
</center>
+
</source>
which is not nearly as...cool - though apparently if you are *not* logged in the graphic gets rendered regardless...  Some equations will not need the <code>\,\!</code> part:
+
 
<center>
 
<math>a=\left(\frac{dv}{dt}\right)</math>
 
</center>
 
though putting it in will not hurt.  As time goes on, the default setting for Pundit may be to always render math as a graphic. The advantage of ''not'' doing that is, in text mode, you can have something like <math>c^2=a^2+b^2-2ab\cos(\theta)</math> as opposed to something like <math>c^2=a^2+b^2-2ab\cos(\theta)\,\!</math> which is not quite as smooth.
 
 
===Equation Lists===
 
===Equation Lists===
 
For multiple equations one after the other, use the <code>\begin{align}</code> environment.  This will allow you to line equations up by placing an ampersand just before the symbol on each line you want as the alignment character.  Use \\ to go to the next equation.  For example,  
 
For multiple equations one after the other, use the <code>\begin{align}</code> environment.  This will allow you to line equations up by placing an ampersand just before the symbol on each line you want as the alignment character.  Use \\ to go to the next equation.  For example,  
Line 78: Line 75:
 
\end{array}
 
\end{array}
 
</math></center>
 
</math></center>
 +
 
== Known Issues ==
 
== Known Issues ==
* LaTeX on Pundit does not know "unnumbered" versions of things.  That is to say, trying to use <code>\begin{align*}</code>, for example with:
+
* RESOLVED: LaTeX on Pundit didn't know "unnumbered" versions of things, but know it does - behold!
 
<source lang="latex">
 
<source lang="latex">
 
<center><math>
 
<center><math>
Line 93: Line 91:
 
\end{align*}
 
\end{align*}
 
</math></center>
 
</math></center>
which is bad... Use the "unstarred" version:
+
which is correct! Note that using the unstarred version produces:
 
<source lang="latex">
 
<source lang="latex">
 
<center><math>
 
<center><math>
Line 107: Line 105:
 
\end{align}
 
\end{align}
 
</math></center>
 
</math></center>
* LaTeX on Pundit does not know the <code>\renewcommand</code> command - so arrays cannot be stretched.
+
* LaTeX on Pundit does not process changes to the <syntaxhighlight lang=latex inline>\arraystretch</syntaxhighlight> variable - so arrays cannot be stretched or contracted.
  
 
==FAQ==
 
==FAQ==
 +
<!--
 
===What's the 15-second summary of using LaTeX?===
 
===What's the 15-second summary of using LaTeX?===
 
# Use '''emacs blah.tex &''' to generate the source code.
 
# Use '''emacs blah.tex &''' to generate the source code.
 
# Use '''latex blah.tex''' to process the file.  If successful, among other things, you will have a new blah.dvi file.
 
# Use '''latex blah.tex''' to process the file.  If successful, among other things, you will have a new blah.dvi file.
# Use '''kdvi blah.dvi &''' to look at (and eventually print) the file.
+
# Use '''dvipdf blah.dvi''' to create a PDF file from the DVI file.
 +
# Use '''evince blah.pdf &''' to look at (and eventually print) the file.
  
Note - if you have a \tableofcontents, or a \listoffigures, or any \label and \ref commands, you will want to run the latex step three times before progressing to the kdvi step.  Also, once you have run kdvi, you won't need to re-run it each time; kdvi will always look at the most current version of the dvi file.  That is to say, a typical command history might be:
+
Note - if you have a \tableofcontents, or a \listoffigures, or any \label and \ref commands, you will want to run the latex step three times before progressing to the evince step.  Also, once you have run evince, you won't need to re-run it each time; evince will always look at the most current version of the pdf file - meaning you '''will'' have to run both latex and dvipdf to get a new version of the PDF file to view.  That is to say, a typical command history might be:
 
<source lang="text">
 
<source lang="text">
 
emacs lab1.tex &
 
emacs lab1.tex &
 
latex lab1.tex
 
latex lab1.tex
kdvi lab1.dvi &
+
dvipdf lab1.dvi
 +
evince lab1.pdf &
 
latex lab1.tex
 
latex lab1.tex
 +
dvipdf lab1.dvi
 
latex lab1.tex
 
latex lab1.tex
 +
dvipdf lab1.dvi
 
latex lab1.tex
 
latex lab1.tex
 +
dvipdf lab1.dvi
 
latex lab1.tex
 
latex lab1.tex
 +
dvipdf lab1.dvi
 
latex lab1.tex
 
latex lab1.tex
 +
dvipdf lab1.dvi
 
</source>
 
</source>
  
 
===What do I do if LaTeX just sits there?===
 
===What do I do if LaTeX just sits there?===
This depends on what kind of error you have.  If you just typed <code>latex</code> ''or'' you spelled the name of the file you were trying to process incorrectly, you need to hit CTRL-D to get out of it.  For all other errors, hitting CTRL-C, then x and return, will always get out of LaTeX regardless of the error  
+
If LaTeX hits an error, hit x and return for almost all errors (CTRL-D if it is a file missing error) to get out of LaTeX, then search above for the error, its location, and its probably cause.
 +
-->
 
===What did I do wrong?===
 
===What did I do wrong?===
 
Generally, LaTeX will try to tell you - look closely at the error message LaTeX gives you  
 
Generally, LaTeX will try to tell you - look closely at the error message LaTeX gives you  
Line 163: Line 170:
  
 
===How do I get a $ Symbol===
 
===How do I get a $ Symbol===
For the characters that LaTeX uses as code ($ and { or }) you need to issue the command to print those - in other words, \$ \{ and \} are the commands to print those individual characters.  For example, the code:
+
For the characters that LaTeX uses as code ($ and { or }) you need to issue the command to print those - in other words, \\$ \{ and \} are the commands to print those individual characters.  For example, the code:
 
<source lang="latex">
 
<source lang="latex">
 
\$\{10,000\}
 
\$\{10,000\}
Line 171: Line 178:
 
\$\{10,000\}
 
\$\{10,000\}
 
</math>
 
</math>
 
=== Why is kdvi saying it can't open zerosize things? ===
 
kdvi can only open valid .dvi files; if your last LaTeX run failed, you will not be able to look at the dvi version of that file until you successfully create one.
 
  
 
==Questions==
 
==Questions==
Line 182: Line 186:
 
*[http://en.wikibooks.org/wiki/Programming:LaTeX Wikibook on LaTeX] - a wiki devoted to LaTeX!  ''All kinds'' of good stuff here.
 
*[http://en.wikibooks.org/wiki/Programming:LaTeX Wikibook on LaTeX] - a wiki devoted to LaTeX!  ''All kinds'' of good stuff here.
 
*[[wikipedia:LaTeX|LaTeX]] on Wikipedia - includes several tutorials and references
 
*[[wikipedia:LaTeX|LaTeX]] on Wikipedia - includes several tutorials and references
*Tobias Oetiker's "[http://www.ctan.org/tex-archive/info/lshort/english/lshort-letter.pdf  The Not So Short Introduction to LaTeX2e]" - great guide for beginning (and not so beginning) users. Should be version 5.01 (as of 4/6/2011).  If that link doesn't work, try
+
*Tobias Oetiker's "[https://tobi.oetiker.ch/lshort/lshort-letter.pdf  The Not So Short Introduction to LaTeX2e]" - great guide for beginning (and not so beginning) users.  
**[http://tobi.oetiker.ch/lshort/lshort-letter.pdf Mirror] in Switzerland
+
*Andrew Roberts' [http://www.andy-roberts.net/writing/latex "Getting to grips with LaTeX"] tutorial  
 
+
*The Comprehensive LaTeX Symbol List, Scott Pakin ([http://www.ctan.org/tex-archive/info/symbols/comprehensive/symbols-letter.pdf PDF], over 100 pages! from 1/19/2017
*Andrew Roberts' [http://www.andy-roberts.net/misc/latex/index.html "Getting to grips with LaTeX"] tutorial  
+
** [[http://www.ams.org/publications/authors/tex/amslatex AMS-LaTeX]] page
*The Comprehensive LaTeX Symbol List, Scott Pakin ([http://www.ctan.org/tex-archive/info/symbols/comprehensive/symbols-letter.pdf PDF], over 100 pages!)
 
*Short Math Guide for LaTeX, Michael Downes ([ftp://ftp.ams.org/pub/tex/doc/amsmath/short-math-guide.pdf PDF], 17 pages)
 
 
*A more "visual" version of LaTeX:  [http://www.lyx.org LyX].
 
*A more "visual" version of LaTeX:  [http://www.lyx.org LyX].
 
*[http://www.tug.org/texshowcase/ LaTeX Showcase]
 
*[http://www.tug.org/texshowcase/ LaTeX Showcase]
*[http://www.tug.org/mactex/ LaTeX for Macintosh Users]
+
*[http://www.tug.org/mactex/ MacTeX]- LaTeX for Macintosh Users with OS 10.5 or higher|
 +
*[https://www.tug.org/texlive/ TeX Live]
  
 
== References ==
 
== References ==
Line 196: Line 199:
  
 
[[Category:Software]]
 
[[Category:Software]]
[[Category:ECE 54]]
+
[[Category:ECE 280]]
[[Category:ECE 141]]
+
[[Category:ECE 382]]
 
[[Category:EGR 103]]
 
[[Category:EGR 103]]
[[Category:EGR 119]]
+
[[Category:EGR 224]]
[[Category:ME 125]]
+
[[Category:ME 344]]
  
 
[[Category:Semester Update]]
 
[[Category:Semester Update]]

Latest revision as of 20:08, 13 September 2022

LaTeX
Document Preparation System
LaTeX logo.png
Version pdfTeXk 3.141592-1.40.3
Download On Unix
Web Page \(LaTeX\) Project
Pundit Updated 8/26/2019


LaTeX is a document preparation system written by Don Knuth (TeX) and extended by Leslie Lamport. It is a powerful, and free, way to generate professional, dynamic documents.

LaTeX on Pratt Pundit

The Basics

Pratt Pundit can process most basic \(\LaTeX\) structures by using \( and \) or math tags around \(\LaTeX\) code. For example,

\(q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\)

can be created using

<center>
\(q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\)
</center>

Equations can also be inline - for instance, \(c^2=a^2+b^2-2ab\cos(\theta)\) is an equation. The code for that is:

Equations can also be inline - for instance,  \(c^2=a^2+b^2-2ab\cos(\theta)\) is an equation.

Equation Lists

For multiple equations one after the other, use the \begin{align} environment. This will allow you to line equations up by placing an ampersand just before the symbol on each line you want as the alignment character. Use \\ to go to the next equation. For example,

<center>\(
\begin{align}
q(t)&=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\\
a&=\left(\frac{dv}{dt}\right)
\end{align}
\)</center>

produces:

\( \begin{align} q(t)&=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\\ a&=\left(\frac{dv}{dt}\right) \end{align} \)

You can also have multiple equations in the same row:

<center>\(
\begin{align}
L_1&=10~\mbox{mH} & R_1&=15~\mbox{k}\Omega & C_1&=22~\mu\mbox{F}\\
L_2&=18~\mbox{mH} & R_2&=22~\mbox{k}\Omega & C_2&=17~\mu\mbox{F}
\end{align}
\)</center>

produces:

\( \begin{align} L_1&=10~\mbox{mH} & R_1&=15~\mbox{k}\Omega & C_1&=22~\mu\mbox{F}\\ L_2&=18~\mbox{mH} & R_2&=22~\mbox{k}\Omega & C_2&=17~\mu\mbox{F} \end{align} \)

Arrays

Arrays work perfectly well in Pundit - as long as you don't try to stretch them:

\( \begin{array}{|c|c|c|}\hline \mbox{Singularity Function} & \mbox{Name} & \mbox{Alternate Symbol} \\ \hline \hline <t-a>^0 & \mbox{unit step function} & u(t) \\ \hline <t-a>^1 & \mbox{unit ramp function} & r(t)=t~u(t) \\ \hline \frac{1}{2}<t-a>^2 & \mbox{unit parabola function} & p(t)=\frac{1}{2}t^2~u(t) \\ \hline \end{array} \)

Known Issues

  • RESOLVED: LaTeX on Pundit didn't know "unnumbered" versions of things, but know it does - behold!
<center>\(
\begin{align*}
e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!}
\end{align*}
\)</center>

will cause:

\( \begin{align*} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align*} \)

which is correct! Note that using the unstarred version produces:

<center>\(
\begin{align}
e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!}
\end{align}
\)</center>

to get:

\( \begin{align} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align} \)
  • LaTeX on Pundit does not process changes to the \arraystretch variable - so arrays cannot be stretched or contracted.

FAQ

What did I do wrong?

Generally, LaTeX will try to tell you - look closely at the error message LaTeX gives you

What is Underfull hbox -10000?

It's a warning that something is a bit thin - generally a table or a figure. Don't worry about these at all.

Why does LaTeX think my align or align* environment is messed up?

To continue: "I have checked it thousands of time and it looks good to me!" Make sure there are no blank lines within the environment. For some reason align hates those. The following, for example, causes problems:

\begin{align}
a\\

b
\end{align}

Also - it may be in a line above the end of the align environment. You can use % in front of a line of LaTeX code to turn that whole line into a comment - doing that, you can find which line is having a bad day and correct it.

My \pagebreak doesn't...page...break Why?

Make sure there is a blank line after the \pagebreak command; that is:

blah
\pagebreak

more blah

How can I double space?

Basically, include the following two lines between the \documentclass and the \begin{document}[1]:

\usepackage{setspace}
\setstretch{2.0}

The MIT page has more options, including adding different spacing to sections of a document.

How do I get a $ Symbol

For the characters that LaTeX uses as code ($ and { or }) you need to issue the command to print those - in other words, \\$ \{ and \} are the commands to print those individual characters. For example, the code:

\$\{10,000\}

will produce \( \$\{10,000\} \)

Questions

Post your questions by editing the discussion page of this article. Edit the page, then scroll to the bottom and add a question by putting in the characters *{{Q}}, followed by your question and finally your signature (with four tildes, i.e. ~~~~). Using the {{Q}} will automatically put the page in the category of pages with questions - other editors hoping to help out can then go to that category page to see where the questions are. See the page for Template:Q for details and examples.

External Links

References