plugin for generating Ctags for vim omnicomplete in current directory recursively
##script for generate project tags
###Full Dependency: advantage:g++ complier will completely find all dependency as a list which ctags will use it to create project tag defect:tags to large,so much deep or useless information
command:
find . -regex '.*\.[ch]p*p*$' | xargs g++ -M | sed 's/[\\ ]/\n/g' | sed '/^$/d;/\.o:[ \t]*$/d' | sort -u | ctags -L - --sort=yes --c-kinds=defgpstux --fields=+liaS --extra=+q -I __attribute__,__attribute_malloc__,__attribute_pure__,__wur,__THROW
###Only Included headers: advantage:use sed to find all include headers in the current project defect:maybe some informations are ignored
command:
find . -regex '.*\.[ch]p*p*$' | xargs sed -n 's/.*\(#include.*[>"]\).*/\1/p' | sed 's/#include//g;s/[>< ]//g' | sort -u > myheaders
find . -regex '.*\.[ch]p*p*$' | xargs g++ -M | sed 's/[\\ ]/\n/g' | sed '/^$/d;/\.o:[ \t]*$/d' | grep -f myheaders | sort -u | ctags -L - --sort=yes --c-kinds=defgpstux --fields=+liaS --extra=+q -I __attribute__,__attribute_malloc__,__attribute_pure__,__wur,__THROW
rm myheaders
##key mapping for functions above
map <F10> :CtagsFileIncluded<CR>
map <C-F10> :CtagsFullDepend<CR>
##Reference