TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I aim to create some .sty files for themes that I need to distribute to colleagues. I'm using a standard .sty file as a template, and I've noticed that the command

\ProvidesPackageRCS $Header: path/filename.sty, v (what might be hex) (date) (time) (a username?) $

if nothing else, raises a warning if the file name in the header doesn't match the actual file name. It appears that I can't compile if the ,v, hex string, or date is missing. I can put in my own date, but does it matter what hex-looking string I use?


I presume we all have an example of one that works normally, wherever you installed Beamer, perhaps /usr/share/texmf/tex/latex/beamer/themes/theme/beamerthemeAnnArbor.sty on a *nix system. There, the command reads

\ProvidesPackageRCS $Header: /cvsroot/latex-beamer/latex-beamer/themes/theme/beamerthemeAnnArbor.sty,v 1.4 2007/01/28 20:48:30 tantau Exp $

and when I copy that file and edit it to say

\ProvidesPackageRCS $Header: /cvsroot/latex-beamer/latex-beamer/themes/theme/beamerthemeannarbor.sty,v 1.4 2007/01/28 20:48:30 tantau Exp $

it compiles but gives a warning, and with something like

\ProvidesPackageRCS $Header: /cvsroot/latex-beamer/latex-beamer/themes/theme/beamerthemeAnnArbor.sty,v 1.4 20:48:30 tantau Exp $

it doesn't compile because of a runaway argument.

But since the document compiles if the command is left out entirely, I think I'm going to go that route. I'm not using version control or distributing this en masse.

share|improve this question
i've looked at the rcs-related packages on ctan, and i haven't found one that provides the command \ProvidesPackageRCS -- an MWE would be welcome here. (MWE being "minimum nonworking example", here) – wasteofspace Mar 10 '12 at 10:26
up vote 12 down vote accepted

RCS is an old source control system which predated CVS (which predated SVN) If you are using RCS or CVS then that $Header....$ magic comment causes the dates and version number to be updated automatically every time the file is checked in. Presumably the (non standard) \ProvidesPackageRCS is extracting those dates and typesetting them or writing them to the log file like a standard \ProvidesPackage.

If you are not using RCS or CVS source control you don't want this at all.

share|improve this answer
awesome. and just like that, it's gone. – aeroNotAuto Mar 10 '12 at 23:26

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.