A very brief starting guide to LaTeX for philosophers

Every now and then LaTeX comes up in conversation. And while there are plenty of good reasons to use it, as well as some good guides, I have not been able to find any short guides. I have not found anything to get someone started quickly and easily. So in this post I will do just that. For brevity, I will exclude things like explanations for why things are the way that they are, alternative ways of doing things, and things that aren’t immediately useful. Instead I will focus on one way to be able to typeset basic papers in a matter of minutes.

Basic Setup

First, go to overleaf.com and make an account. Then, using the link in the top right of the page, go to the My Projects page. Click New Project. A list of templates comes up. Choose a Blank Paper. Now the editor should be up. In the center pane is the space to edit. In the right pane is a preview of your document. In the left pane is some document info. Clicking Project on the top bar will open or close the left pane. So far in the editing space you have this:

\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
(Type your content here.)
\end{document}

If your document is just plain text, you could just copy and paste it over “(Type your content here.)” and then you would be done. If you do this, you’ll see in the preview pane what your document will look like.

Setting up a title

Add a blank line above \begin{document}. In that line, input \title{} and put your title in the squiggle brackets. Then add a line below \title{} with \author{} and then another with \date{}. If you just want the current date put in, put \today in the brackets. Then in the line following \begin{document}, type \maketitle. So, a document at this point might look like this:

\documentclass{article}
\usepackage[utf8]{inputenc}
\title{Kant vs. Berkeley Cage Match}
\author{Nichole Smith}
\date{\today}
\begin{document}
\maketitle
(Type your content here.)
\end{document}

Content

Sections

If your text is longer, you may want to have sections. You add a section break, type \section{} on its own line with the title of the section in the brackets. If you want a subsection, do the same with \subsection{}. And if you want to go a level deeper, \subsubsection{} will add a subsubsection break.

Paragraphs

For paragraph breaks, just include an empty line. For example:

Cage matches are the best way to compare writers.
First, this paper will provide an analysis of cages.

will be interpreted as one paragraph while

Cage matches are the best way to compare writers.

First, this paper will provide an analysis of cages.

will show up as two. Don’t worry about indenting; LaTeX handles that on its own.

Quotes

For short quotes, bound by quotation marks, use “ for double left, ` for single left, ‘ for single right, and ” for double right. (` is on the top left of most keyboards. ‘ is the apostrophe key.)

For longer quotes, type \begin{quote} before the quote and \end{quote} after the quote. This will create a block quote.

Bold, italics, lists, footnotes, and dashes

For bold, type \textbf{} and put the bold text in the brackets. Italics work the same with \textit{}. In Overleaf, you can also highlight the text and press ctrl+B or ctrl+I (in Windows or Linux, at least).

For a list, start with a line that says \begin{enumerate}. For each item in the list, add a line starting with \item. The end the list with \end{enumerate}. If you want bullets instead of a numbered list, replace “enumerate” with “itemize”. Example:

\section{Reasons Berkeley would win in the cage match}
\begin{itemize}
\item He actually left his hometown and so would be more fit.
\item All that time in America rubbed off.
\item Dialogues are more indicative of a fighting spirit than critiques.
\end{itemize}

(Go ahead and paste that into the content area of your document if you want to see what it looks like.)

For a footnote, type \footnote{} wherever you want the superscript. Put the text of the footnote in the brackets.

For a hyphen, type -. For an en-dash, type –. For an em-dash, type —. (One hyphen, two hyphens, and three hyphens, respectively.)

Bibliography

Open up the project pane if it’s not already open. Click Files, then Blank File. Name it sample.bib. Now in your document, above the title stuff, add a line with \usepackage[notes,backend=biber]{biblatex-chicago} and then another line with \bibliography{sample}.

In the project pane, click on sample.bib so you can edit it. Any time you want to add a source, put it in here. To add a source, first type @book if it’s a book or @article if it’s an article. Then a {. Then give the source a name. Then add a comma and a line break. Then you want lines with the content of the reference. An example illustrates this more clearly than I could in the abstract:

@book{COPR,
Address = {New York},
Author = {Immanuel Kant},
Translator = {Norman Kemp Smith},
Publisher = {St. Martin’s Press},
Title = {Critique of Pure Reason},
Year = {1933}}

This page in section 4.1 has a handy list of entry types (instead of book or article) and what kinds of things you can put under each entry. If you get an error, you probably forgot a comma at the end of a line. If you have multiple authors, put and between each author’s name. If an author’s last name has a space in it, add brackets around the name. E.g. “Author = {Christian {von Wolfius}}”.

Now use the project pane to return to main.tex. At the line above \end{document} (at the end of the document) type \printbibliography.

In the body of your text, if you want to cite something, just type \autocite{} with the name you gave your source in the brackets. So if I wanted to cite the first Critique with the previous example in the sample.bib file, then I just type \autocite{COPR}. If I wanted to cite page 42, I would type \autocite[42]{COPR} (note the square brackets around 42).

Margins, font, spacing, and generating the PDF

If you want to make the font size 12pt, then change the first line from \documentclass{article} to \documentclass[12pt]{article}. You can change the 12 to other numbers, too.

If you want single-inch margins, add a line after the first line. Input \usepackage[margin=1in]{geometry}. You can change 1in to other sizes.

If you want double spacing, add another line to say \usepackage{setspace}. Then type \doublespacing anytime after \begin{document} to switch to double spacing. And \singlespacing to switch to single spacing.

When you are done, click the PDF button at the top of the page.

Further Resources

LaTeX is popular, so asking a search engine your question will often give you what you want. TeX Stack Exchange has a wealth of information. You can also ask questions there.

For logic, I have written a similar post for doing that.

Comment section is open. I welcome any suggestions for the guide, or questions anyone has. I plan on writing more quick guides for things that are useful after this but not essential to getting started, and there will be pingbacks in the comments here.

 

Advertisements

Enough LaTeX for basic logic typesetting

I’m currently taking a (meta)logic class. There are assigned problem sets. A lot of people either don’t know how to type logical symbols or else cannot be bothered to fight with Word. I’m a fan of LaTeX. I like it for several reasons, one of them being easy use of logical symbols.

There are a lot of guides to using LaTeX. To my knowledge, none start from nothing and end with just what’s needed for a logic class. So here I fill in that void. My goal is to be comprehensive enough to cover what’s needed to type up assignments for a logic class while not including anything else so someone can be up and running with just this guide in a few minutes.

Setting Up

First, you need something to edit your text and something to compile it to a PDF or whatever other format you like. I personally use Overleaf. It’s a free, online application that lets you type in one column with live updates to what it looks like on the page in the other column. It also has templates, allows collaboration, and has some other nice features that are not important to our purposes here. (Full disclosure: The link is a referral link. If you refer people, you get extra storage space and pro features for free. The default free features and space are fine, though.)

There are other popular options. If you need to compile offline, I suggest TeXmaker. If you go this route, you need to download MiKTeX. If you want to write something very long, you may want to type into a text editor and then copy and paste into Overleaf or TeXmaker. (By “long” I mean over fifty pages, give or take based on things like included pictures.)

Onto the actual typing process. If you’re using Overleaf, go to the “My Projects” page and then create a new project. Choose “blank paper”. Then you’ll have this code:

\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
(Type your content here.)
\end{document}

If you’re not using Overleaf, go ahead and put that code into your document.

There is a bit of tweaking to the basic template to make this better. Before the \begin{document} line, add a line containing just \usepackage{amsmath}. Then add lines with add \title{TITLE} and \author{NAME}. Then after the \begin{document} line, add a line saying \maketitle. If you want it to not be huge, type \small\maketitle\normalsize. (The \small makes it small. The \normalsize makes the stuff after it normal size.) At this point my document looks like this.

\documentclass{article}
\usepackage[utf8]{inputenc}
\title{Phil 125 Homework Set 2}
\author{Nichole Smith}
\begin{document}
\small\maketitle\normalsize
(Type your content here.)
\end{document}

Typing the Document

Everything after this replaces “(Type your content here.)”.

  • Typing letters and numbers works as you would expect. Certain symbols are used by the code so typing them is not straightforward. (The & and squiggle brackets are the most notable here.)
  • Single line breaks are ignored. So if you type some stuff, hit return/enter, and then type some more, it will show up as one paragraph. (This can be useful. I like to type every step of a proof in a new line. Then it compiles into a paragraph.)
  • Double line breaks give you a new paragraph.
  • If you want extra space, use \vspace{1cm} as its own paragraph. You can choose lengths other than 1cm if you want.

Onto the logic specific stuff. Of critical importance is math mode. Whenever you surround text with dollar signs ($) LaTeX treats it as mathematical symbols. So, if you type $x$ it will be italicized like a variable should be. Math mode does not have spaces. So $two words$ will not have a space between them. (If you need a space while in math mode for some reason, “\ ” gives you a space. That is a backslash with a space after it.)

Note all logical symbols have to be typed in math mode. The logical symbols:

  • \land gives you the and symbol
  • \lor gives you the or symbol
  • \lnot gives you the not symbol
  • \rightarrow gives you the material conditional arrow
  • \Rightarrow gives you the logical implication arrow
  • \leftrightarrow gives you the biconditional arrow
  • \Leftrightarrow gives you the logical equivalence arrow (So, capitalizing the arrow tags makes them the bigger arrows)
  • = is the equal sign
  • Parentheses are parentheses
  • \subset gives you the strict subset symbol
  • \subseteq gives you the subset symbol
  • In general, typing \not immediately before another symbol puts a slash through it. E.g. \not\subseteq gives you the not a subset symbol
  • \in gives you the element symbol
  • \times gives you the times sign
  • \neq gives you the not equal sign
  • > and < can be typed directly. To get the or equal to versions, type \geq or \leq
  • \emptyset gives you the empty set symbol
  • \{ and \} give you squiggle brackets
  • \& gives you the & symbol
  • \top and \bot give you the tautology and contradiction symbols.
  • \Alpha and \alpha give you upper and lower case alpha. The other Greek letters are similar.
  • | gives you the Sheffer stroke and \downarrow gives you the Peirce dagger.
  • An underscore gives you subscript. A caret gives you superscript. E.g. p sub 1 is typed $p_1$.
  • \hdots gives you a nice ellipsis. Use \cdots if you want them elevated to the middle of the line.
  • Anything on a line after % will not be compiled. So if you want to make a note to self, you can.

I think this covers it. Most of them are pretty straightforward. If you do need more, this webpage has a nifty list. Or, detexify lets you just draw what you want, and it gives you the code. At this point you’re ready to type stuff.

I will provide an example now. Say problem 2 asks you to symbolize “neither both p and q, nor q only if p” with the and, material conditional, and nor operators. Then you type:

2. The sentence “neither both $p$ and $q$, nor $q$ only if $p$” symbolized with the and, material conditional, and nor operators is $(p\land q)\downarrow(q\rightarrow p)$.

Truth Tables

LaTeX can also handle tables very nicely. If you’re lazy, there are online tools to make tables. They have quite a few options. You’re probably fine using that.

I prefer more control for my truth tables. Again, you’re fine without. But in case anyone is interested, I’ll explain. Maybe you’ll want to be able to edit the code the generator spits out. (I often use a generator to start and then tweak as needed.) First, here’s the code for the truth table for p_1 or not p_1:

\begin{tabular}{c|cccc}
$p_1$ & $p_1$ & $\lor$ & $\lnot$ & $p_1$ \\
\hline
T & & \textcolor{red}{T} & F & \\
F & & \textcolor{red}{T} & T & \\
\end{tabular}

How do you construct this thing? First set up the tabular environment:

\begin{tabular}{}
\end{tabular}

The second set of squiggle brackets after \begin let you set up the columns. Each c gives a center aligned column. If you want left or right aligned columned, use l or r instead of c. Yes, you can mix the three. The | gives a vertical line going down the entire table. Note for truth tables you want a column for every single symbol. That way nothing is under the variables and you can have a straight line of Ts and Fs under the connectives. So, for p_1 or not p_1 we want a column for p_1, a bar, then columns for each of p_1, or, not, and p_1. That’s four more. So, we have:

\begin{tabular}{c|cccc}
\end{tabular}

We have the table set up. Now to fill it in. The first line of the table has the atomic sentences on the left and then the sentence in question on the right. Type the content of each column, separated by &. Then end the line with \\. So, to have the first line of the truth table:

\begin{tabular}{c|cccc}
$p_1$ & $p_1$ & $\lor$ & $\lnot$ & $p_1$ \\
\end{tabular}

To have the horizontal line, type \hline on its own line. Then more on to the next row, doing the same thing you did for the first row. Note that if you want nothing in a certain spot, just leave the space between the two &s empty. So, for the second row, you want a T under the first p_1 (The one on the left side of the table), then nothing under the first one on the right, then a T under the and sign, an F under the not sign, and then nothing under the last p_1. The third line is similar.  Now we have:

\begin{tabular}{c|cccc}
$p_1$ & $p_1$ & $\lor$ & $\lnot$ & $p_1$ \\
\hline
T & & T & F & \\
F & & T & T & \\
\end{tabular}

This is a fine truth table. But, maybe you want to bold the truth values for the main connective. To make T bold, type \textbf{T}. You can replace “T” with other text, of course. If you’re using Overleaf, highlighting the text and pressing Ctrl+B will put the tag in automatically.

This brings us to the complete table as quoted in the beginning of this section.

The comment section is open. Questions and suggestions are welcome.

(Edit notes: As Soren pointed out, I originally put the wrong symbol for commenting. I also realized the amsmath package is not needed, so I removed that. Since these are usually printed in black and white anyway, I got rid of color in favor of boldface type. This has the added benefit of avoiding the need for packages entirely. In the third edit I added the \leq and \geq tags as well as \hdots because I realized they’re needed for indexing variables. \hdots requires the amsmath package, so I added that line back in. Using bold instead of color still seems to be better.)