I have automated the procedure described in(Comments #1 and #4). Now, I can generate new tags files without looking up all the options I need to use, and YOU can create a tags file customized to your Drupal installation, including all installed modules.
This is my first attempt at a drush command. Suggestions for style, conformance, efficiency, etc. are welcome.
To use, save the attached file as
drush/vimrc.drush.inc inside your vimrc folder and run the command
drush --include=./drush tags --ctags=/usr/local/bin/ctags --tag-file=d6.tags /tmp/drupal-6.22
(substituting appropriate paths for your system). You need to have Exuberant Ctags installed; the GNU ctags is not good enough. For details, read the error message you will get if it is not installed.
The tags file can be used for navigating your code and for omni-completion. Try using
--tag-file=/absolute/path/to/drupal/tags (so you will get a tags file in your Drupal root directory) and then
to use this tags file. See our documentation for using tags in code navigation and automatic completion.
Tested on Mac OS X. Should work on Linux. Probably needs some work on Windows (see #1 below).
If you use Drupal 6.22, then you should get a file identical to
drupal6.tags, distributed as part of this project, if you use the version attached to this issue summary. The version attached to #2 will produce smaller tags files, since it removes many bogus tags. It also adds options
--include-js=[yes|no] (default yes). You can set them to "no" to get even smaller tags files.