CTAN Comprehensive TeX Archive Network

Directory macros/latex/contrib/zebra

README.md

zebra

A writing revision toolkit for . The current release focuses on inline note-taking, providing macros (\todo, \comment, \fixed, \note, \placeholder) for collaborative writing. Notes are colour-coded, numbered, and marked in the margin. A summary table and clickable note list are appended at the end of the document. The final option suppresses all notes for clean output.

Migration: This package was previously distributed as zebra-goodies.
The old name still works but prints a deprecation warning.

Options

  • draft / final: show or suppress notes. Default: draft.
  •   \usepackage[final]{zebra}
      
  • sort: order of the detailed note list. none (default, document order) or type (grouped by note type).
  •   \usepackage[sort=type]{zebra}
      
  • pagelinks: enable or disable clickable page-number links in the detailed note list. Default: enabled. Set pagelinks=false to disable them. The alias nopagelinks is also accepted.
  •   \usepackage[pagelinks=false]{zebra}
      
  • font-expansion: control microtype font expansion, which usually improves the appearance of the document. Disable it if it conflicts with your engine or another package by setting font-expansion=false. The alias nofont-expansion is also accepted. Default: enabled. microtype remains loaded when expansion is disabled.
  •   \usepackage[font-expansion=false]{zebra}
      

Take Notes

\todo[<who>]{bla bla}
\fixed[<who>]{bla bla}
\comment[<who>]{bla bla}
\note[<who>]{bla bla}
\placeholder[<who>]{bla bla}

If a short name clashes with another package, use the prefixed form:

\zebratodo[<who>]{bla bla}
\zebrafixed[<who>]{bla bla}
\zebracomment[<who>]{bla bla}
\zebranote[<who>]{bla bla}
\zebraplaceholder[<who>]{bla bla}

Refer to Notes

Labels may be placed inside note bodies with the usual \label command. Standard \ref returns the note number, while \zebraref prints the note type together with the number.

\todo{\label{zebra:intro}revise the introduction}

See Todo~\ref{zebra:intro} on p.~\pageref{zebra:intro}.
See \zebraref{zebra:intro} for the full reference.

Labels inside notes are unavailable in final mode because the notes themselves are suppressed. For notes in moving arguments such as \section and \caption, add a \label inside the note for stable cross-references.

Define New Notes

\colorlet{mycyan}{cyan}
\zebranewnote{question}{mycyan}              % uses default symbol
\zebranewnote{question}{mycyan}[$\diamond$]  % custom symbol for this type

\question[who]{what's this?}

Customise Existing Types

Use \zebrasetup to change the colour or symbol of any note type after loading:

\zebrasetup{color/todo=red}                 % red todos
\zebrasetup{symbol/fixed=$\surd$}           % tick mark for fixed notes
\zebrasetup{color/todo=red, symbol/fixed=$\surd$}  % combine several keys

Author

Ruini Xue <xueruini@gmail.com>

License

Copyright (C) 2016-2026, Ruini Xue

This work may be distributed and/or modified under the conditions of the Project Public License (LPPL), version 1.3c. The latest version of this license is at:

http://www.latex-project.org/lppl.txt

This work is "maintained" (as per LPPL maintenance status) by Ruini Xue.

Download the contents of this package in one zip archive (700.8k).

zebra – A collection of handy macros for (paper) writing

This package provides inline note-taking macros (\todo, \comment, \fixed, \note, \placeholder) for collaborative paper writing. Notes are colour-coded, numbered, and marked in the margin for quick scanning. A summary table and clickable note list are appended at the end of the document. Custom note types and margin symbols are supported.

Note: This package was previously distributed as zebra-goodies. The old name still works, but prints a deprecation warning. — “zebra” is the name of the package author’s lab.

Packagezebra
Home pagehttps://github.com/xueruini/zebra
Developershttps://github.com/xueruini
Version1.5.0 2026-04-15
LicensesThe Project Public License 1.3c
Copyright2016–2026 Ruini Xue
MaintainerRuini Xue
Contained inTeX Live as zebra
MiKTeX as zebra
TopicsEditorial
Notes
Marginal
...
Guest Book Sitemap Contact Contact Author