rth: > When I used exuberant ctags I found no 'p' designation for the function > declarations - the 'f' was used instead. A small change on line 81 fixes > the problem:
I just downloaded the windows version of exuberant ctags 5.4.4 from http://ctags.sourceforge.net/ Moving to the scite/src directory and executing ctags.exe --excmd=number --c-types=pcdgstu *.h yields a file in which function prototypes are included. It looks like 'f' means function implementation and 'p' is for prototypes. You really only want one or the other so you don't see two entries in the API file. > if tagType[0] == "f": # Excuberant Ctags Function prototype is "f". Just adding this confuses the script as the 'f' line will look like void SciTEBase::StackMenuNext() { as contrasted with the 'p' line void StackMenuNext(); The script knows how to look at the second but doesn't remove the '{' from the first. Just adding 'f' to the branch currently used for 'p' doesn't look to be a good idea to me. > Perhaps a Python master could fix up the file for both, something like: > > if (tagType[0] == "p") || (tagType[0] == "f") : You would also need to drop the '{' if present. Normally the interface to a C or C++ module is defined with function prototypes, not function implementations so I think the current behaviour is correct although each user can modify the script for their own circumstances. Neil _______________________________________________ Scite-interest mailing list [email protected] http://mailman.lyra.org/mailman/listinfo/scite-interest
