40 lines
1008 B
VimL
Executable File
40 lines
1008 B
VimL
Executable File
"
|
||
" (c) Craig Emery 2017-2022
|
||
"
|
||
" Increment the number below for a dynamic #include guard
|
||
let s:autotag_vim_version=1
|
||
|
||
if exists("g:autotag_vim_version_sourced")
|
||
if s:autotag_vim_version == g:autotag_vim_version_sourced
|
||
finish
|
||
endif
|
||
endif
|
||
|
||
let g:autotag_vim_version_sourced=s:autotag_vim_version
|
||
|
||
" This file supplies automatic tag regeneration when saving files
|
||
" There's a problem with ctags when run with -a (append)
|
||
" ctags doesn't remove entries for the supplied source file that no longer exist
|
||
" so this script (implemented in Python) finds a tags file for the file vim has
|
||
" just saved, removes all entries for that source file and *then* runs ctags -a
|
||
|
||
if !has("python3")
|
||
finish
|
||
endif " !has("python3")
|
||
|
||
function! AutoTagDebug()
|
||
new
|
||
file autotag_debug
|
||
setlocal buftype=nowrite
|
||
setlocal bufhidden=delete
|
||
setlocal noswapfile
|
||
normal
|
||
endfunction
|
||
|
||
augroup autotag
|
||
au!
|
||
autocmd BufWritePost,FileWritePost * call autotag#Run ()
|
||
augroup END
|
||
|
||
" vim:shiftwidth=3:ts=3
|