I'm looking for tagging of constants, classes, modules, and methods, and particularly for qualified tags (so MyClass#to_s and YourClass#to_s are different tags). I know about the rtags reference in the Pickaxe books, that program has vanished from the net. I also know about exhuberant ctags, it only tags classes, module, and methods, and doesn't have qualified tags, which is a killer in any project with more than a few classes. Does anybody have a copy of the pre-merged-with-ruby irb-tools project hanging around? I'd really, really like to get a hold of that rtags.rb mentioned in the pickaxe, if I had a copy I might be able to get tags working! Cheers, Sam For those not familiar with how tags works with languages that are supported really well, like C++, here is an example. --- module Foo class Aclass ACONST = 1 def to_s end end end module Bar class Aclass ACONST = 1 def to_s end end end --- Exhuberant ctags generates this for the above example: --- tags --- ... !_TAG_PROGRAM_VERSION 5.5.4 // Aclass ex.rb /^ class Aclass$/;" c Bar ex.rb /^module Bar$/;" m Foo ex.rb /^module Foo$/;" m to_s ex.rb /^ def to_s$/;" f --- I want all the tags: --- tags --- Aclass ... Aclass.to_s ACONST Bar ... Bar.Aclass ... Bar.Aclass.to_s ... Bar.ACONST Foo ... Foo.Aclass ... Foo.Aclass.to_s ... Foo.ACONST to_s ... --- So I can do a tag jump to Aclass.to_s and go the right one. In case you wonder, you can get the above for C++ and Java using "ctags --extra=+q", but not for ruby.
on 2006-04-29 03:42