[plt-scheme] Emacs tags for MzScheme modules

From: Bill Clementson (bill_clementson at yahoo.com)
Date: Sat Nov 1 19:05:10 EST 2003

I'm learning MzScheme with Emacs and would like to
produce an etags file of all the collects modules so
that I can easily jump to the source of a function (or
other definition) as I'm learning MzScheme. I've
written an elisp script that iterates over the
collects modules and runs the etags file over each
subdirectory. However, etags doesn't generate tags
properly for MzScheme files that contain module
definitions :-( 

The command that I run on each directory is: 
etags -a --language=scheme *.s*

This produces no tag definitions when the scheme file
is enclosed in a module definition.

I have also tried the following:
etags -a --language=scheme --regex="/[
\t]*[\(]def[a-z\-]+[ \t]+\((+.*)\)/\1/" *.s*

This produces tags for scheme definitions regardless
of whether they're in a module or not; however, I'm
not a regex/etags guru so this only sorta works - it
doesn't position accurately and it doesn't take into
account the module for the definiton. So, if there are
multiple definitions with the same name in multiple
modules, you just have to keep cycling through the
alternatives. For Java classes that are part of
packages, etags does the right thing, including
package information with the class definitions. Has
anyone been able to create tag files for MzScheme
modules that work properly?

Thanks for any ideas or help with this.

Bill Clementson

Do you Yahoo!?
Exclusive Video Premiere - Britney Spears

Posted on the users mailing list.