2008-03-26  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * update doc, CHANGES

        * release version 3.09.3.3

        * warning (instead of abort) on stale symlinks

2007-08-23  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * update doc, CHANGES

        * release version 3.09.3.2

        * fixed various problems with identifiers not occuring in the
          source (because they are camlp4 generated), bug reported by
          Andrew I. Schein, to reproduce install sexplib and 
          use -pa pa_sexp_conv.cmo with

                SEXP_CONV_PATH "Conv_test"

                open Sexplib;;

                type intwithsexp = {
                  hereisint : int;
                }  with sexp;;

                Printf.printf "made it to the end of dim.ml\n";;

        * obfuscated email addresses in README


2007-08-10  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * changed tests

2007-08-09  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * bugfix: otags supplied tags.cmxa with -camlp4 switch
        * revision 3.09.3.1

2007-04-18  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * fixed broken link

2007-04-06  Hendrik Tews  <tews@gromit>

        * added --ocaml configure option
        * let configure check, search and substiture camlp4o

2007-03-30  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * fixed typo

2007-03-28  Hendrik Tews  <tews@gromit>

        * rename otags.html into index.html

        * fix config option processing bug
        * let configure output ocaml version
        * adjust README, add troubleshooting section
        * adjusted make-distibution
        * added web page 

2007-03-26  Hendrik Tews  <tews@gromit>

        * fixed make-distibution, test-distribution
        * test-distribution passes!
        * wrote CHANGES

        * removed assumption that first dir entries are "." and "..",
        which is not true on this machine
        * changed testcases to current ccsl compiler and lablgtk-2.6
        * removed old testcase files

2007-03-24  Hendrik Tews  <tews@gromit>

        * revert Roy's patch, also ctags adds a $ in the regexp

        * patch from Roy <roy@cs.hmc.edu>: fix vi search command

2007-03-23  Hendrik Tews  <tews@gromit>

        * ignore special files (with a warning)

2007-03-15  Hendrik Tews  <tews@gromit>

        * cleaned for ocaml 3.09: all the source directory crap can
        finally go!
        * fix make depend to not include site specific path's

2007-03-14  Hendrik Tews  <tews@gromit>

        * merged with 3.09.0.1 branch

2007-03-14  Hendrik Tews  <tews@tandem.cs.ru.nl>

        * change Makefile for ocaml 3.09 where no source trees are
        necessary any more

2005-11-17  Hendrik Tews  <tews@ithif59.inf.tu-dresden.de>

        * fix configure bug for ocaml cvs
        * new configure option --no-version-check
        * release 3.09.0.1

2005-11-04  Hendrik Tews  <tews@ithif59.inf.tu-dresden.de>

        * release version 3.09.0
        * distribution testing for bytecode, native and native with source
          directory 
        
        * changed to ocaml 3.09
        * more tests with CCSL Compiler, labgtk
        * make-distibution script, cleanup

        * added -libdir, -bindir options 
        * binaries are not any longer selected via $PATH
        * changed test infrastructrure: new dir test with permanent
          testfiles



===========================================================================
                 old HISTORY file appended below        
===========================================================================
Subject: Re: TAGS file format
Date: Thu, 26 Nov 1998 11:32:35 +0100 (CET)
From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>
Organization: CNUCE-CNR, Via S.Maria 36, Pisa - Italy +39-50-593211
To: Cuihtlauac ALVARADO <Cuihtlauac.Alvarado@cnet.francetelecom.fr>

Take for example this line:

# define getopt_long(^?getopt_long^A105,2697

The first string, followed by DEL, is the part of the line used to
look for the place where the tag is. The second string, followed by
SOH, is optional. It is the tag itself. You are advised to build such
a string if the first one would be ambiguous (many similar ones) or if
the tag is not contained in the first string. Even when none of the
above conditions are met, building a tag string speeds up search in
the TAGS file, at the expense of its size. The following numbers are
line and character positions.

===========================================================================
From: John Eikenberry <jae@zhar.net>
To: Cuihtlauac ALVARADO <cuihtlauac.alvarado@rd.francetelecom.com>
Date: Thu, 12 Jul 2001 01:55:54 -0700
Subject: Re: [Caml-list] ocaml/vim/tags
  
Cuihtlauac ALVARADO wrote:
  
> > I'm looking for a tagging program for use with ocaml and vim. I dug through
> > the archives and found references to 3 different tag programs; otags,
> > ocamltags and mletags. Otags' tag files don't seem to be compatible with
> > vim,
>
> Yes that's true, since i wasn't using vi a the time i wrote otags i
> didn't feel the need of vi tags. Now, i would love to have vi tags
> generated by otags. If you have an idea of the syntax of those tags we
> might do something.
  
Ok. Comparing python functions with tags generated for each emacs and vim
using the standard etags dist gives us something like this... (using the
string module's lower function as our example):
  
--emacs version--
^L
string.py,996
...
def lower(s):^?lower^A45,1700
  
--vim version--
...
lower   string.py       /^def lower(s):$/;"     f
  
The emacs version keeps the filename at the top of the file while the vi
version has no 'header' like info. Assuming you know what the emacs version
consists of, the vim version should seem obvious. Its the function name,
file name, a simple regex used to locate the line and that it is a function
(the f - there are bunch of other such letter codes). The last part is one
of the extensions to the original spec. The 'fields' are delimited by tabs.

Oh and instead of regex you can use a line number which ctags will generate
with the -n option. Vim will accept this. And the tag names (the first
field) have to be sorted.

So, the only diff between the 2 (besides formatting) is the sorting and the
letter code. The letter code isn't used that extensively (I've never used
it for anything)... so it can probably be left off.  That means all the
same info is used, just need to reformat it and sort it.

I see the formatting code in the etags.ml file, but am extremely green when
it comes to ocaml. Mind giving a quick lessen and walking me through the
relevant parts of that module so I can work on it. Or if you'd rather just
do it yourself, I can at least help by testing.

Thanks.

--

John Eikenberry
[jae@zhar.net - http://zhar.net]
______________________________________________________________
"A society that will trade a little liberty for a little order
 will deserve neither and lose both."
                                          --B. Franklin
===========================================================================

---------------------------------------------------------------------------
December 4 1998: otags 0.1 for O'Caml 1.07 released by Cuihtlauac ALVARADO
Mimimum functions for generating *.etags files from *.ml files.
---------------------------------------------------------------------------
January 4 1999: otags 0.2 for O'Caml 2.01 released by Cuihtlauac ALVARADO
Upgrade to O'Caml 2.01
---------------------------------------------------------------------------
January 5 1999: otags 0.3 by Cuihtlauac ALVARADO
Added recursive directory search
---------------------------------------------------------------------------
February 26 1999: otags 0.4 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Working with camlp4 printers (pr_etags.ml) and splay trees
---------------------------------------------------------------------------
March 5 1999: otags 0.5 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Integration of cattags.
---------------------------------------------------------------------------
March 8 1999: otags 0.6 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Better installation procedure.
---------------------------------------------------------------------------
April 1 1999: otags 0.7 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Adapted to splay-0.3.
---------------------------------------------------------------------------
April 4 1999: otags 0.8 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Adapted to splay-0.4.
line_number.ml based on the new function floor of splay instead of
splayInterv.
make test compares the result of test.etags with the previous version
in test_result
---------------------------------------------------------------------------
April 19 2000: otags 1.0 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Adapted to Ocaml-2.04 : change in pr_etags.ml
---------------------------------------------------------------------------
May 05 2000: otags 1.0 by Cuihtlauac ALVARADO & Jean-Francois MONIN
  for O'Caml 2.04 and 3.00
No more shell scripts, except at compile time. Otags 1.1 generates
TAGS files directly. Only one single command : otags, see otags -help
for (minimal) help.
---------------------------------------------------------------------------
October 22 2001: otags 1.9 by Cuihtlauac ALVARADO & Jean-Francois MONIN
Adapted to Ocaml-3.02 : 
  - installation procedure made simpler (splay trees are included)
  - tags for a directory can be computed without write access; 
  - regular cat + /tmp files used instead of catags + .etags files
  - an option for vi tags (experimental)
  - the version used for splay trees does not use Obj.magic any longer
  - option -pa for parsers (not extensively tested)
---------------------------------------------------------------------------
January 2002: otags 3.04 
Ocaml 3.04 port
---------------------------------------------------------------------------
January 2002: otags 3.04.1 -> otags 3.04.3
Added Hendrik Tews patch
---------------------------------------------------------------------------
February 2004: otags 3.06.7 -> otags 3.07.0
Small patches by JFM
---------------------------------------------------------------------------
June 2004: 3.07.1
Backed accidentally removed patch by H. Tews.
---------------------------------------------------------------------------
Summer 2004: 3.08.0.2
Ocaml 3.08 + various things by CA
---------------------------------------------------------------------------
September 2005: 3.08.3.3
"make depend" in configure by JFM
        