OK, great, Sam, got it working after doing the following: 1. Put in the absolute path in the set tags line in .vimrc as you suggested:
set tags ~/.vim/drupal6.tags 2. Copied not just drupal6.tags but the drupal6 directory also to ~/.vim So: victork...@victorkane:~/.vim$ ls -l total 52 drwxr-xr-x 3 victorkane victorkane 4096 2006-10-24 08:08 after drwxr-xr-x 2 victorkane victorkane 4096 2006-10-24 21:59 colors drwxr-xr-x 2 victorkane victorkane 12288 2006-03-17 17:16 colors__ drwxr-xr-x 2 victorkane victorkane 4096 2006-10-24 17:41 doc *drwxr-xr-x 3 victorkane victorkane 4096 2009-08-01 11:05 drupal6 -rw-r--r-- 1 victorkane victorkane 19644 2009-08-01 08:38 drupal6.tags* drwxr-xr-x 2 victorkane victorkane 4096 2009-07-04 17:31 plugin victork...@victorkane:~/.vim$ Now, when I position my cursor within the phrase "hook_requirements" on the typical "Implementation of hook_requirements" comment in a file I am working on, and do "Ctrl-]" I am automagically taken to the function definition. I get back to where I was with "Ctrl-T". Once again, thanks a lot for this suggestion, and it opens the doors to doing even more with vim! Victor On Sat, Aug 1, 2009 at 10:44 AM, Sam Tresler <[email protected]> wrote: > My mistake Victor, .vimrc needs to take an absolute path change > > set tags .vim/drupal6.tags > > to > > set tags ~/.vim/drupal6.tags > > if that doesn't work, try manually loading the tags file in vim with > :set tags=/home/yourhome/.vim/drupal6.tags and see if it will work > > Good catch on the hooks/ dir, I re-wrote that to have the -d flag as I > wasn't keen on traversing the entire cvs download to get to the file. > > I'll add .inc files to the vim doc as well, as I believe they aren't there > currently. > > Let me know if that works for you. > > -S > > Victor Kane wrote: > >> OK, first of all, thanks so much for the fruits of an idle moment! I use >> vim all the time now, and this is great. >> >> Now, a problem and a solution. >> >> I executed the below cvs statement on the command line >> But since it includes "-d drupal6", it doesn't create a hooks directory, >> but rather a drupal6 directory. >> Error: >> $ ctags -R -o drupal6.tags hooks >> ctags: Warning: cannot open source file "hooks" : No such file or >> directory >> >> So the following does work: >> >> $ ctags -R -o drupal6.tags drupal6 >> >> Then, you probably want to include .inc files in the list, yielding: >> >> if has("autocmd") >> " Drupal *.module and *.install files. >> augroup module >> autocmd BufRead,BufNewFile *.module set filetype=php >> autocmd BufRead,BufNewFile *.install set filetype=php >> autocmd BufRead,BufNewFile *.inc set filetype=php >> set tags=.vim/drupal6.tags >> augroup END >> endif >> >> However, when editing a file, , Ctrl-] gives error: >> >> E433: No tags file >> E426: tag not found: drupal_get_form >> Am I missing something? >> >> Victor Kane >> http://awebfactory.com.ar >> >> On Fri, Jul 31, 2009 at 6:58 PM, Sam Tresler <[email protected]<mailto: >> [email protected]>> wrote: >> >> You know... it said that at the top of the api.drupal.org >> <http://api.drupal.org> page, but I guess it didn't occur to me to >> >> actually look... Thanks. >> >> Works like a charm. I'd really rather skip the first incarnation I >> had, and just have the hooks loaded. I'll update the vim docs here >> shortly, but for the record. >> >> >> $ cvs -z6 >> -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib co >> -r DRUPAL-6--1 -d drupal6 contributions/docs/developer/hooks >> $ ctags -R -o drupal6.tags hooks >> $ mv drupal.tags ~/.vim >> >> (make the .vim directory if you need to) >> >> Then add this to ~/.vimrc >> >> if has("autocmd") >> " Drupal *.module and *.install files. >> augroup module >> autocmd BufRead,BufNewFile *.module set filetype=php >> autocmd BufRead,BufNewFile *.install set filetype=php >> set tags=.vim/drupal6.tags >> augroup END >> endif >> >> And you have code-hinting for drupal core in vim. Just remember to >> update it as you change versions. But it sounds like in Drupal 7 >> this can scrape directly from .api.php files; I haven't even looked >> at those yet. >> >> Now what was I doing before this diversion.... >> >> -S >> >> >> >> >> Neil Drumm wrote: >> >> 6.x and lower: >> >> http://cvs.drupal.org/viewvc.py/drupal/contributions/docs/developer/hooks/?pathrev=DRUPAL-6--1 >> 7.x: *.api.php in module directories. >> >> -Neil >> >> On Fri, Jul 31, 2009 at 2:03 PM, Sam Tresler >> <[email protected] <mailto:[email protected]> >> <mailto:[email protected] <mailto:[email protected]>>> >> wrote: >> >> Thanks Neil, >> Some further digging and I found out that php code completion >> in >> vim can map to a ctags output file, which is pretty easy to >> generate. >> >> ctags -R -o drupal6.tags --langmap=php:.module * >> >> then load it in vim >> >> :set tags=drupal6.tags >> >> and you have code complete for every function in core. >> >> However, this unfortunately doesn't get code complete on >> hooks, as >> they aren't actually named in core, but constructed from >> modulename_function(). >> >> So, I guess my next question is where are the hook function >> definitions from api.drupal.org <http://api.drupal.org> >> <http://api.drupal.org> generated? >> >> >> Thanks in advance. >> >> -S >> >> >> >> >> Neil Drumm wrote: >> >> http://api.drupal.org/api/function_dump/6 might have >> worked at >> some point. I honestly haven't paid any attention to that >> page, >> which might integrate with IDEs; apparently no one else >> has either. >> >> This list is already available in JSON format in the >> development >> version of API module. That or another format should be >> present >> in the future for an api_filter module to provide an input >> format filter without running the api module. >> >> -Neil >> >> On Fri, Jul 31, 2009 at 12:26 PM, Sam Tresler >> <[email protected] <mailto:[email protected]> >> <mailto:[email protected] <mailto:[email protected]>> >> <mailto:[email protected] >> <mailto:[email protected]> <mailto:[email protected] >> <mailto:[email protected]>>>> >> >> wrote: >> >> I am working on a drupalcomplete.vim file and would >> like to >> generate >> an list of all of Drupal 6 (and eventually 5,7, etc) >> functions, >> objects, and anything else that might warrant code >> completion. >> >> I believe that api.drupal.org <http://api.drupal.org> >> <http://api.drupal.org> >> <http://api.drupal.org> scrapes this >> >> automatically from core. I can manipulate the data to >> match the >> format I need no problem, but I thought I would ask >> here before I >> went about finding my own way to scrape the data from >> a cvs >> checkout. >> >> This was broached before here >> >> http://lists.drupal.org/pipermail/development/2009-February/032090.html >> but appears stalled. >> >> yes, I have too much time on my hands currently. >> >> Cheers. -Sam >> >> >> >> >> -- Neil Drumm >> http://delocalizedham.com >> >> >> >> >> -- Neil Drumm >> http://delocalizedham.com >> >> >>
