atom / symbols-view

Jump to symbols in Atom
MIT License
163 stars 114 forks source link

Switch to Universal CTAGS? #171

Open grantstrotter opened 8 years ago

grantstrotter commented 8 years ago

Hey all, this is my first time creating an issue for Atom or on Github at all. I've tried to be thorough and go through the proper channels, but if I haven't, please let me know.

Prerequisites

Exuberant CTAGS has a bug that I find pretty inconvenient. The symbols view is cluttered with classes and functions that aren't actually classes or functions. They're from bits of comments that Exuberant CTAGS mistakes for functions or classes.

Steps to Reproduce

  1. Create a file with the following content: <?php // function blah ?>. Nothing there but a comment
  2. Save it as a php file.
  3. Do Ctrl+R to bring up the symbols view. You'll see that the comment text is mistakenly added in the list as a function.

    Suggested Solution

This is a known issue in Exuberant CTAGS, which hasn't been updated since 2009. But that project has been forked and is currently maintained as Universal CTAGS. It seems to me that it would be better to be using this maintained version instead of the one where development has stopped.

But I'm a little out of my depth here on what the pros and cons to switching are, and how much trouble it would be. So I just wanted to start that conversation. What do you all think?

Versions

Atom : 1.7.2 Electron: 0.36.8 Chrome : 47.0.2526.110 Node : 5.1.1 apm 1.9.2 npm 2.13.3 node 0.10.40

lee-dohm commented 8 years ago

I think it is worth investigating switching at some point. It looks like it would require potentially a lot of work to include the features that actually improves Universal ctags over Exuberant ctags though.

You should be able to have a global ctags configuration file that you can customize how ctags works when you execute a project-wide symbol search though. (The active file support will still use the built-in configuration.)

thomasjo commented 8 years ago

I definitely think this is something we should do. I've been contemplating starting this process for a while, but just haven't had time. It's on my TODO list.

grantstrotter commented 8 years ago

I'd like to contribute where I can. I'm fairly entry-level at this point, so there would be a learning curve. But the flight manual looks like it has some great info for digging in. So, if/when you start the process, let me know how I can help!