Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6691269
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T05:43:56+00:00 2026-05-26T05:43:56+00:00

I have just discovered the taglist plugin for vim, and read about how to

  • 0

I have just discovered the taglist plugin for vim, and read about how to use it with ctags.

However, disappointingly ctags is a very simple parser.

Is there an alternative that is more complete?

Specifically I’m looking for something that:

  • expands #define(x, y) x ## y style macros for function declarations

  • processes #include statements

  • allows include paths to be specified for dependencies

I see that clang provides a programatic api for accessing the c AST, so surely this isn’t terribly hard to do?

Has someone already done it?

—

Edit:

These ones don’t cut it:

  • clang_indexer – Doesn’t compile; when it does (after hacking), doesn’t work (endless errors).

  • clang_complete – Doesn’t seem any better than ctags. No context specific recommendations, no struct completion, no function arguments, no macro expansion; just a list of symbols and the file they came from.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T05:43:56+00:00Added an answer on May 26, 2026 at 5:43 am

    I’ve spent quite some time struggling with this myself.

    The closest I ever got was something called gccsense. Unfortunately, the project seems abandoned and moreover it was difficult setting it up because English was not the author’s first language.

    I ended up approaching the problem from another angle. I made the decision that intellisense/autocomplete was more important to my coding than having all the available features of vim, so I chose an IDE like Eclipse, and then found a plugin for Eclipse that emulates Vim. So far the best kind of plugin like that that I found was Viable.

    Here is the full list of options that I have tried and found unsatisfactory:

    • clang – requires you switch from gcc to a different and “better” compiler. The problem is gcc is much more mature [edit apparently you don’t need to switch compilers see comments below, I may give this another try in the future.]
    • gccsense – great idea (using gcc to give you the code completion) however work on the project is abandoned 🙁 and the version that is up is beta quality
    • xref in vim – xref is a great standalone tool and works great for parsing C. It can be made to work in vim with vxref, however from my experience xref lacks in parsing current C++ code and development on it has stopped (as well as development on vxref.)
    • eclim – seems to work great for Java support using eclipse, extremely slow and completely unreliable when parsing C++ or C code. What usually happens is everything works for a long while, but then suddenly, the parser stops parsing any new code that you write, and nothing short of loading up eclipse itself and forcing eclipse to reparse the project seems to help. Also, less of an important fact, but more of an annoyance is that eclim takes over handling errors, so it screws up the way vim usually parses errors from gcc meaning you have no access to the quickfix list which is annoying.
    • netbeans + jvi – alot of people swear by this, but I had all sorts of problems with jvi. One major problem I had was jvi would say I’m in normal mode, but really was in insert mode, nothing short of a restart would help.
    • eclipse + viplugin/vrapper – this was beginning to look like the best option; each had its own set of bugs + lacking features, but still was most attractive, until I found viable which seemed to be the most stable and have the most features.

    If you do find a solution you are happy with please share it in a comment, because I would be interested in it.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have just discovered PDO and I'm very excited about it, but I have
I just discovered the what c# knowledge should I have? question and wondered about
I have just discovered the command :sort n in vim (how did I not
I have just discovered LLVM and don't know much about it yet. I have
I'm newer to C# and have just discovered how to use yield return to
I'm forced to use IE7 at work, and have just discovered that the MiniProfiler
I have just discovered the nifty unhandled exception handler for cocoa-touch. Now that I
I have just discovered that if generating assemblies via Reflection.Emit, the .NET framework keeps
I have just discovered a variable name that is misspelled. If it were hidden
I have just recently discovered how much I enjoy developing code the TDD way:

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.