I have been using the Tufte-Style template for documents for a while, but found them to be restrictive on other document formats that I have been asked to produce. I make extensive use of 'asides' and footnotes, and so it is nice to define footnotes like his, but the regular Tufte style doesn't fit specifications for the rest of the document. I am mainly interested in redefining the footnote command as he did and implement this in a regular LaTeX article or book class.

Specifically, I wish to create a mini-style file that defines footnotes like this: Paper written by Jason Catena

but still allows me to work with regular LaTeX. Does anyone have a good method of creating these? Margin notes with a counter works but with multiple notes they tend to overlap when more than one note is used.

If it helps, I have found that it is implemented in tufte-common.def, but I am not knowledgeable on the subject to implement it otherwise.

  • 2
    Andy Thomas' sidenotes package may be useful to you. It can be used with the standard LaTeX document classes and provides Tufte-LaTeX-like \sidenote and \marginnote macros.
    – godbyk
    Nov 21, 2013 at 20:46
  • This package, geometry, and a redefinition of \footnote was exactly what I was looking for.
    – Mark
    Nov 21, 2013 at 21:28
  • 2
    The snotez package might be of interest to you
    – cgnieder
    Nov 21, 2013 at 22:39
  • @cgnieder, I wasn't aware of your snotez package. I'll have to check that out. Thanks!
    – godbyk
    Nov 22, 2013 at 1:44

1 Answer 1


As godbyk mentioned, we created the sidenotespackage for this purpose. Here is a minimal implementation of your example:


\usepackage[paperwidth=170mm, paperheight=240mm, left=42pt, top=40pt, textwidth=280pt, marginparsep=20pt, marginparwidth=100pt, textheight=560pt, footskip=40pt]{geometry}


I shall use the word programming to denote the whole activity of design and implementation of programmed solutions. What I am concerned with is the activity of matching some significant part and aspect of an activity in the real world to the formal symbol manipulation that can be done by a program running on a computer. With such a notion it follows directly that the programming activity I am talking about must include the development in time corresponding to the changes taking place in the real world activity being matched by the program execution, in other words program modifications.\sidenote{As a major result of these studies I described programming as a human activity: theory building.}

One way of stating the main point I want to make is that programming in this sense primarily must be the programmers building up knowledge of a certain kind, knowledge taken to be basically the programmers immediate possession, any documentation being an auxiliary, secondary product.


The marginfixpackage could be used, which distributes the marginals nicely and, in particular, avoids overlaps.

An example implementation with font size presets and such is caesar_book. You might be able to change it to your liking: Github sources.

To try it with an updated TeXLive, just change the first line to \documentclass{caesar_book} instead of book and delete the two \usepackages.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .