Otags generates TAGS files suitable for emacs and vi/vim from OCaml sources. Otags III relies on the standard OCaml parser from the compiler-libs library (in contrast to previous otags reloaded versions that employed camlp4).
Previous versions: 4.03.1, 4.02.2, 4.02.1, 4.01.1, 4.00.2, 4.00.1, 3.12.5, 3.12.4, 3.12.3, 3.12.2, 3.12.1, 3.11.3, 3.11.2, 3.11.1
Optionally use --prefix, --bindir or --mandir if you don't like the default installation directories.
You might need to become superuser before make install.
otags -r .to generate an Emacs TAGS table for all .ml and .mli files in the current directory tree. For more details consult the man page.
Around 2005 I released a few versions for OCaml 3.09. All these old otags versions require the original camlp4 from Daniel de Rauglaudre, which is now available as camlp5. My latest release for the old camlp4 was otags 3.09.3.3 for OCaml 3.09.3. The debian maintainers developed some patches to make this version compile with later OCaml versions and camlp5.
For 3.11 I rewrote otags from scratch for the new camlp4 and released several versions under the name otags reloaded. The modular structure of camlp4 made it possible to switch the parsing engine at runtime between files and to parse all syntax supported by camlp4 at full native speed without external camlp4 processes. However, the increasing incompatibility between camlp4 and OCaml and camlp4's sloppiness on parsing locations created more and more difficulties. For instance, otags 4.02 failed on the OCaml standard library because camlp4 was unable to digest the attribute annotations in there.
Starting from 4.03, otags is based on the standard OCaml parser from the compiler-libs library and has been renamed to otags III.