# HG changeset patch # User Ludovic Chabant # Date 1458959551 25200 # Node ID 563fbba4328802eff7d37aa14e6dfa680da73627 # Parent efbe60d4865d2ed366cd5cd9a8c1a9bc70c9ff02# Parent f9f0f45d2bdb71b56c9db78b8199b79d0830e3cb Merge pull request #63 from GitHub. diff -r f9f0f45d2bdb -r 563fbba43288 autoload/gutentags.vim --- a/autoload/gutentags.vim Mon Feb 22 06:54:07 2016 +0300 +++ b/autoload/gutentags.vim Fri Mar 25 19:32:31 2016 -0700 @@ -262,6 +262,7 @@ for module in g:gutentags_modules call s:update_tags(module, a:bang, 0) endfor + silent doautocmd User GutentagsUpdated endfunction " (Re)Generate the tags file for a buffer that just go saved. @@ -271,6 +272,7 @@ call s:update_tags(module, 0, 2) endfor endif + silent doautocmd User GutentagsUpdated endfunction " Update the tags file for the current buffer's file. diff -r f9f0f45d2bdb -r 563fbba43288 autoload/gutentags/ctags.vim --- a/autoload/gutentags/ctags.vim Mon Feb 22 06:54:07 2016 +0300 +++ b/autoload/gutentags/ctags.vim Fri Mar 25 19:32:31 2016 -0700 @@ -198,13 +198,27 @@ let l:lines = readfile(a:path) let l:outlines = [] for line in l:lines - let l:exarg = matchend(line, '\v^\-\-exclude=') - if l:exarg < 0 + let l:exarg_idx = matchend(line, '\v^\-\-exclude=') + if l:exarg_idx < 0 call add(l:outlines, line) continue endif - let l:fullp = gutentags#normalizepath(l:proj_dir.'/'. - \strpart(line, l:exarg + 1)) + + " Don't convert things that don't look like paths. + let l:exarg = strpart(line, l:exarg_idx + 1) + let l:do_convert = 1 + if l:exarg[0] == '@' " Manifest file path + let l:do_convert = 0 + endif + if stridx(l:exarg, '/') < 0 && stridx(l:exarg, '\\') < 0 " Filename + let l:do_convert = 0 + endif + if l:do_convert == 0 + call add(l:outlines, line) + continue + endif + + let l:fullp = l:proj_dir . gutentags#normalizepath('/'.l:exarg) let l:ol = '--exclude='.l:fullp call add(l:outlines, l:ol) endfor