tagbar icon indicating copy to clipboard operation
tagbar copied to clipboard

[feature request] open multiple files like taglist

Open Devric opened this issue 13 years ago • 9 comments

It don't seems theres an option to allow multiple files to be opened at the same time like taglist does. any plans for that?

Devric avatar Jul 03 '11 12:07 Devric

Not presently, at least not in the way that Taglist does it. I don't think that's really the best approach. I'll try to come up with a way to separate the current approach to show just the outline of the current file and a general class browser that shows all the classes of the current project. But at the moment I'm quite busy, so I'm not sure when I will have time to do that.

majutsushi avatar Jul 04 '11 08:07 majutsushi

This is essentially what I was trying to accomplish (in a very lazy way) with my pull request (18). I'll close that pull request against this.

mkomitee avatar Aug 14 '11 02:08 mkomitee

That idea is not forgotten, though, it's just not exactly trivial to come up with a general browser that's actually useful and usable.

majutsushi avatar Aug 14 '11 05:08 majutsushi

Oh understood, that wasn't meant to be taken as a complaint at all. The lazy way I went about implementing it wasn't acceptable and I understand that. There's no reason to keep that pull request open if we have this 'issue' (feature request) to track it.

mkomitee avatar Aug 16 '11 02:08 mkomitee

Well glad that you still remember the request. Just had an idea. Instead of listing the tags from opened buffers. Would it be possible to detect all the includes or require files within the current editing file and list the tags for those inc/req or even inherited from files.

Eg PHP: class test extends someparent. And it list all the functions in that parent from that parent file without open it That would be really cool and visually browse all classes and functions that can extend or use. Without manually opening these one by one.

Devric avatar Aug 16 '11 03:08 Devric

That would definitely be helpful, but it would also require quite a bit of knowledge about every supported language. So you would need some language-specific parsers that know more about the individual languages than ctags. For example I thought about using LLVM/clang for more C/C++ information, but at the moment I'm rather busy so I don't really have time for a big project like that. But it's definitely something I'd like to do at some point.

majutsushi avatar Aug 19 '11 03:08 majutsushi

I could see that being possible (though quite unsafe) for languages that are directly supported by vim which are capable of a good deal of introspection.

For example, we could probably write something up for python to leverage the compiler module and extract all of the Import statements of a given file, extracting those names. You could also extract all of the constants, functions, and classes, and all of the classes constants functions and subclasses, etc, building up something perhaps better than tags.

You'd then use sys.path to find the referenced modules, and parse them as well. Wash, rinse, repeat.

For other languages, you may have to actually execute code instead of just compiling it, so the danger increases.

This actually sounds like it could be a fun project, but unfortunately, wouldn't pay the bills.

All that said, this could get computationally expensive, so tags are probably "good enough"

mkomitee avatar Aug 22 '11 02:08 mkomitee

Listing all class will be excellent for development in large project. I have big monitor but I dont utilize it :(

Tagbar is excellent but it needs some improvement especially about large file manupulation. Listing all class would be great start point for this and I think this will push this plugin next level.

Thank you for this great plugin :)

ghost avatar Dec 02 '12 22:12 ghost

Has there been any progress on this feature? It would really help me :)

waltsims avatar Nov 22 '15 16:11 waltsims