I think these modes are useful for me in Alexott's setup:
- global-semanticdb-minor-mode: it's good to have a cache of what already parsed to speed up future sessions.
- global-semantic-idle-scheduler-mode: it's nice if CEDET always follows my changes.
- global-semantic-highlight-func-mode: having a special highlight of my first tag (which is usually variable declaration) is good
- (require 'semantic/bovine/c) and (require 'semantic/bovine/clang) and (require 'cedet-files): I think this is required for CEDET working
- (require 'eassist): its function for switching between .h and .cpp is useful. I used to use eassist-list-methods, but I am using helm--semantic-or-imenu these days.
- semantic-complete-analyze-inline: Nice stand-alone completion function. However, with auto-complete, it is less required, also sometimes the there's a lot of completion candidates, it would be better to have a separate buffer to see all the candidates.
- semantic-ia-fast-jump: yes, this is useful. I can jump to tag definition and included files.
- semantic-ia-show-doc: this function is nice if it can correctly parsed the comments of template functions.
- semantic-ia-show-summary: it is always useful to quickly see function interface without going to its declaration in another file. However, this function, like semantic-ia-show-doc, should be updated to list multiple overloaded functions.
Those are the features I frequently used. For key binding, I propose "C-c s" prefix for CEDET; s stands for semantic:
- "C-c s j" : semantic-ia-fast-jump
- "C-c s d" : semantic-ia-show-doc