However, it’s always difficult to remember the things you should not do, when there are so many things to remember that you really must do: some automation is useful….
nag allows you to apply a configurable set
of checks to your document, as you run it through LaTeX; you get
Package nag Warning: Command \bf is an old LaTeX 2.09 command. (nag) Use \bfseries or \textbf instead on input line 30.
(the package provides a demo file which contains most of the sorts
of errors you might make — the example is one of them).
nag alert you to possible
programming errors, you should not forget that they are merely
commenting on style; don’t assume that a
nag error is
going to damn your code — rather, note the issue and try to train
your fingers not to do the same “next time”.
lacheck program analyses your source and comments on
it; its view of what is “bad” is very subjective (the
documentation says), but it can be useful.