From a1ca7458f1b622293bed1881366ddcc05de19f9e Mon Sep 17 00:00:00 2001 From: Chris Morgan Date: Fri, 20 Dec 2013 01:31:38 +1100 Subject: [PATCH] Remove many false positives from the ctags results Anchoring the keyword as the first non-whitespace on a line may mean that the occasional genuine-but-unconventionally-formatted tag is missed, but it avoids a large number of false positives. I changed the type descriptive texts about a bit too. That part's purely cosmetic. I also changed the ignored file list to use a filename matching the make rule, `TAGS.vi` instead of `TAGS.vim`. --- .gitignore | 2 +- src/etc/ctags.rust | 23 ++++++++++++----------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 00dfeede99c..c7e83518db3 100644 --- a/.gitignore +++ b/.gitignore @@ -52,7 +52,7 @@ lexer.ml TAGS TAGS.emacs -TAGS.vim +TAGS.vi version.ml version.texi /Makefile diff --git a/src/etc/ctags.rust b/src/etc/ctags.rust index 5c2f4f82566..ee6f863aa50 100644 --- a/src/etc/ctags.rust +++ b/src/etc/ctags.rust @@ -1,11 +1,12 @@ ---langdef=rust ---langmap=rust:.rs ---regex-rust=/[ \t]*fn[ \t]+([a-zA-Z0-9_]+)/\1/f,function/ ---regex-rust=/[ \t]*type[ \t]+([a-zA-Z0-9_]+)/\1/T,types/ ---regex-rust=/[ \t]*enum[ \t]+([a-zA-Z0-9_]+)/\1/T,types/ ---regex-rust=/[ \t]*struct[ \t]+([a-zA-Z0-9_]+)/\1/m,types/ ---regex-rust=/[ \t]*mod[ \t]+([a-zA-Z0-9_]+)/\1/m,modules/ ---regex-rust=/[ \t]*static[ \t]+([a-zA-Z0-9_]+)/\1/m,consts/ ---regex-rust=/[ \t]*trait[ \t]+([a-zA-Z0-9_]+)/\1/m,traits/ ---regex-rust=/[ \t]*impl[ \t]+([a-zA-Z0-9_]+)/\1/m,impls/ ---regex-rust=/[ \t]*macro_rules![ \t]+([a-zA-Z0-9_]+)/\1/m,macros/ +--langdef=Rust +--langmap=Rust:.rs +--regex-Rust=/^[ \t]*(pub[ \t]+)?fn[ \t]+([a-zA-Z0-9_]+)/\2/f,functions,function definitions/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?type[ \t]+([a-zA-Z0-9_]+)/\2/T,types,type definitions/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?enum[ \t]+([a-zA-Z0-9_]+)/\2/g,enum,enumeration names/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?enum[ \t]+([a-zA-Z0-9_]+)/\2/g,enum,enumeration names/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?struct[ \t]+([a-zA-Z0-9_]+)/\2/s,structure names/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?mod[ \t]+([a-zA-Z0-9_]+)/\2/m,modules,module names/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?static[ \t]+([a-zA-Z0-9_]+)/\2/c,consts,static constants/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?trait[ \t]+([a-zA-Z0-9_]+)/\2/t,traits,traits/ +--regex-Rust=/^[ \t]*(pub[ \t]+)?impl([ \t\n]+<.*>)?[ \t]+([a-zA-Z0-9_]+)/\3/i,impls,trait implementations/ +--regex-Rust=/^[ \t]*macro_rules![ \t]+([a-zA-Z0-9_]+)/\2/d,macros,macro definitions/