From 5e698582836e1c0f4363b1a116ceefcbfb2bc68e Mon Sep 17 00:00:00 2001 From: Henry Weller <http://cfd.direct> Date: Wed, 9 Nov 2016 11:07:29 +0000 Subject: [PATCH] foamTags: Rationalized tagging The best of the current options is to use the latest version of exuberant ctags (which has a new C++ parser) to generate both declaration and definition tags. gtags works to some extent and provides additional information about the function signatures but the C++ parser is not accurate and misses scope information. gtags can be used with the ctags parser which is effective but looses the primary advantage of gtags being able to provide function signatures so support has been switched-off by default. ebrowse does not appear to be very useful for traversing the OpenFOAM class tree and the support has been switched-off by default. --- bin/foamTags | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/bin/foamTags b/bin/foamTags index 070baec7fa8..ec881c5eb5c 100755 --- a/bin/foamTags +++ b/bin/foamTags @@ -46,7 +46,6 @@ then exit 1 fi - for cmd in etags ctags-exuberant do type $cmd >/dev/null 2>&1 || { @@ -55,28 +54,16 @@ do } done - cd $WM_PROJECT_DIR || exit 1 mkdir .tags 2>/dev/null - -etagsCmd="etags --declarations -l c++ -o .tags/etags -" -#etagsDefCmd="etags -l c++ -o .tags/etagsDef -" -#etagsDecCmd="etags --declarations -l c++ -o .tags/etagsDec -" - +#etagsCmd="etags --declarations -l c++ -o .tags/etags -" etagsCmd="ctags-exuberant -e --extra=+fq --file-scope=no --c-kinds=+p -o .tags/etags -L -" -etagsDefCmd="ctags-exuberant -e --extra=+fq --file-scope=no -o .tags/etagsDef -L -" -etagsDecCmd="ctags-exuberant -e --extra=+fq --file-scope=no --c-kinds=+p -o .tags/etagsDec -L -" - -ectagsDecCmd="ctags-exuberant -o .tags/ectagsDec --file-scope=no --c-kinds=+p --excmd=n --extra=+fq --fields=+afiKmnsSzt -L -" find -H $WM_PROJECT_DIR \( -name "*.[HC]" -o -name lnInclude -prune -o -name Doxygen -prune \) | $etagsCmd -find -H $WM_PROJECT_DIR \( -name "*.[HC]" -o -name lnInclude -prune -o -name Doxygen -prune \) | $etagsDefCmd -find -H $WM_PROJECT_DIR \( -name "*.H" -o -name lnInclude -prune -o -name Doxygen -prune \) | $etagsDecCmd -find -H $WM_PROJECT_DIR \( -name "*.H" -o -name lnInclude -prune -o -name Doxygen -prune \) | $ectagsDecCmd #gtags -i --gtagsconf bin/tools/gtagsrc .tags -foamEbrowse +#foamEbrowse #------------------------------------------------------------------------------ -- GitLab