Latex: Make \listoffigures look like \listoftables or \lstlistoflistings - latex

I've got a list of listings at the end of my document following my list of tables and my list of figures. The thing that is really annoying me is that they look the same except the list of listings doesn't leave a line gap between chapters.
I've had a good google around and people have asked the same question but don't seem to have had any response.
Is their any reason why they don't look the same and it be made to look concise?

The reason for this is that the vertical spacing between chapters in the list of figures (lof) and list of tables (lot) is added by the \chapter command, and there simply is no such provision for the list of listings (lol).
How to fix this depends a bit on the document class you are using. If you are using the excellent memoir class, hooks for this purpose are already provided:
\renewcommand{\memchapinfo}[4]{%
\addtocontents{lol}{\protect\addvspace{10pt}}}
If your listings are appearing in the appendices, you'll hook \memappchapinfo instead of \memchapinfo. (Consult section 18.25 of the memoir manual for a list of hooks available.)
If you're not using memoir, you'll typically need to hook your class' \#chapter command. This could look like, for example:
\makeatletter
\let\my#chapter\#chapter
\renewcommand*{\#chapter}{%
\addtocontents{lol}{\protect\addvspace{10pt}}%
\my#chapter}
\makeatother
You can easily check what is used for generating the lol by checking the .lol file corresponding to your document. If your document is, for example, base.tex, look into base.lol. You should see something like:
\contentsline {lstlisting}{...}{...}
\contentsline {lstlisting}{...}{...}
\addvspace {10pt}
\contentsline {lstlisting}{...}{...}
Note the \addvspace separating the content lines from different chapters.
As the actual code used to insert spacing between chapters also depends on the document class, adapt the actual \addvspace command to be the same as in your .lof or .lot files.

Related

Latex template for quickly writing summaries of courses

For some courses I take, we are allowed to write a summary and to used it at the exam. The summary allowed is usually limited to something like ten A4 pages. I quickly googled for latex templatex, but I couldn't find anything useful so far.
The template should allow to used the full space available on an A4 paper, by default latex documents usually have large borders. I guess I'm not the first person looking for this kind of template, so please post any links if you know good templates.
You can setup your margins pretty easily using the geometry package (which should be part of most latex distributions I believe) http://ctan.org/tex-archive/macros/latex/contrib/geometry/
You'll probably also need one of the multiple column layouts and amsmath packages.
You can find a bunch of details on page layout here: http://en.wikibooks.org/wiki/LaTeX/Page_Layout
I'd probably use something like this:
\documentclass[a4paper]{article}
\usepackage[margin=1cm]{geometry}
\usepackage{amsmath}
\usepackage{multicol}
\begin{document}
\begin{multicols}{3}
... MY STUFF HERE ...
\end{multicols}
\end{document}
EDIT: Original version was trying to use the plain style, which seems to not exist. Also had the usepackages inside the document rather than the preamble, and had some spelling mistakes. Won't look useful until you fill it with some stub data... head over to lipsum.com for some filler text.

LaTex table numbering

How could I number the tables in my article chapter based ? So I want all the tables in the fifth section to be numbered like "Table 5.1", ..., "Table 5.n".
I tried
\usepackage{chngcntr}
\counterwithin{figure}{section}
\counterwithin{table}{section}
\counterwithin{equation}{section}
but I am having some problems (missing package I guess).
However, I need a simpler solution, without the need to use such packages.
The article class doesn't have chapters. Try the book or report classes - you'll find that the tables and figures are automatically numbered according to chapter.
Here is a solution without the use of any package (courtesy of "The Latex Companion", A1.4):
\makeatletter
\renewcommand{\thetable}{\thesection.\#arabic\c#table}
\#addtoreset{table}{section}
\makeatother
This resets the table counter whenever a new section is started, and formats it as sectionno.tableno instead of just tableno. You can change the figure and equation counters similarly.
If you are using the amsmath package (or an AMS class like amsart that loads it automatically), you can use
\numberwithin{table}{section}
This was created for equations, but works for any pair of counters though supposedly there might be tricky situations that it does not handle well.

Exclude entry from glossary?

I'm using the glossaries package in LaTeX. I've got \gls{foo} in my document, but I don't want the entry for "foo" to appear in the glossary. How can I keep a working (i.e. expanding) \gls{foo} in the body of my document, but exclude the entry for "foo" from the glossary?
EDIT: I want to use \gls{foo} to indicate "as used here, 'foo' has its specific meaning within this document." In a few cases, though, I've ended up with a "foo" whose definition is too obvious--or difficult--to articulate in the glossary.
So I want \gls{foo} to be expanded as usual, but I don't want the "foo" entry to appear in the glossary.
I hope this adds a little more information about what I'm trying to accomplish. It may be an abuse of glossaries, but I find it helpful to make sure I'm always using the same words and the right words while writing technical documents.
If you are using the glossaries package you can create an "ignored" glossary like
\documentclass{article}
\usepackage{glossaries}
\newglossary[glignoredl]{ignored}{glignored}{glignoredin}{Ignored Glossary}
\makeglossaries
\newglossaryentry{foofoo}{name={FOOFOO},description={foofoo stuff}}
\newglossaryentry{foo}{name={FOO},type={ignored},description={no good description}}
\newglossaryentry{bar}{name={BAR},description={bar of stuff}}
\begin{document}
Here is a \gls{foo} that is also a \gls{bar}, but of course it's also a \gls{foofoo}.
Why not consider buying a \gls{foo}?
\printglossary
% \printglossary[type={ignored}]
\end{document}
I have no idea why you'd want to do this, but the following should work:
\let\oldgls\gls% store the original meaning of \gls in a new command named \oldgls
\let\gls\relax$ make \gls do nothing
Some text with \gls{foo} no links to the glossary,
and no ``foo'' entry in the glossary.
\let\gls\oldgls% restore the original meaning of \gls
Some more text with \gls{bar} that links to the glossary,
and with a ``bar'' entry in the glossary.
This can be accomplished by adding the terms to a special common dictionary. It's actually a built-in feature of the glossaries package and it's even exemplified by the package author. From said example:
\documentclass{article}
\usepackage{glossaries}
\newignoredglossary{common}
\makeglossaries
\newglossaryentry{sample}{name={sample},description={an example}}
\newglossaryentry{commonex}{type=common,name={common term}}
\begin{document}
\gls{sample}. \gls{commonex}.
\printglossaries
\end{document}
Note the use of the \newignoredglossary command.

Why does LaTeX "Table of Contents" leave gaps for missing items?

I have set tocdepth to a lower number, so that other subsections are not included in the list. But instead of just removing these items, LaTeX leaves a gap. How does it happen? How could it be prevented?
We need details, including the document class, the exact tocdepth number, and the set of section headings actually used in your document. Two hypotheses:
You have not run LaTeX enough times for the TOC to stablize—possible but unlikely.
You have set the tocdepth to 1, and the document class you are using deliberately puts extra space between level 1 headings (\sections)—slightly more likely.
The table of contents may include a stretchable space in between each of the entries. If the style allows it, put a \vfill after the \tableofcontents but before any \newpages, and see if that makes a difference.
Usually I recommend one of the titletoc or tocloft packages to format ToC entries.
I can heartily recommend the memoir document class, which I use for everything from poetry to business cards. I'm very, very happy with the investment I made to learn it, even though it wasn't negligible.
In particular, to tinker at your TOC entry formatting, search for \cftbeforeKskip in memman.pdf.
The final solution will probably look something like this:
\setlength{\cftbeforechapterskip}{0pt}
or
\setlength{\cftbeforesectionskip}{0pt}
etc... (depending on which level of entry you want to adjust)

Excluding a chapter from TOC

In my LaTeX document I've got a table of contents that is automatically generated by collecting everything that is of the form \chapter.
However, I've got an acknowledgements chapter before the table of contents and I don't want it to be automatically labelled "Chapter 1" or captured in the table of contents. Should I be avoiding \chapter altogether and use \section instead? I want to keep the font/formatting that other chapters have though.
The usual way to handle that kind of thing is with the \frontmatter command. Put it after the \begin{document}, and then put \mainmatter right before the \chapter you want to correspond to chapter 1. This may only work in the book class. If you're using \chapter in a report, then \chapter* should also create a chapter that has no number and won't show up in the table of contents.
Indeed, as unknown (google) mentioned, using \frontmatter and \mainmatter is the best solution. This will also adjust your page numbering to lowercase roman numerals for the front matter. However, it works only on book and similar document classes.
In case you're using report, try \chapter*. This will create a chapter without a number that does not appear in the table of contents.
For articles \chapter* does not appear to work. Instead use \section*.

Resources