Mercurial > vim-gutentags
view plugin/gutentags.vim @ 119:a66d90fd758b
expand() g:gutentags_ctags_executable
Allows "~/..." paths to work.
author | Justin M. Keyes <justinkz@gmail.com> |
---|---|
date | Sat, 14 May 2016 02:59:15 -0400 |
parents | 6bbed9e4c01e |
children | 5776acb079cf |
line wrap: on
line source
" gutentags.vim - Automatic ctags management for Vim " Maintainer: Ludovic Chabant <http://ludovic.chabant.com> " Version: 0.0.1 " Globals {{{ if v:version < 704 echoerr "gutentags: this plugin requires vim >= 7.4." finish endif let g:gutentags_debug = get(g:, 'gutentags_debug', 0) if (exists('g:loaded_gutentags') || &cp) && !g:gutentags_debug finish endif if (exists('g:loaded_gutentags') && g:gutentags_debug) echom "Reloaded gutentags." endif let g:loaded_gutentags = 1 let g:gutentags_trace = get(g:, 'gutentags_trace', 0) let g:gutentags_fake = get(g:, 'gutentags_fake', 0) let g:gutentags_background_update = get(g:, 'gutentags_background_update', 1) let g:gutentags_pause_after_update = get(g:, 'gutentags_pause_after_update', 0) let g:gutentags_enabled = get(g:, 'gutentags_enabled', 1) let g:gutentags_enabled_user_func = get(g:, 'gutentags_enabled_user_func', '') let g:gutentags_modules = get(g:, 'gutentags_modules', ['ctags']) let g:gutentags_project_root = get(g:, 'gutentags_project_root', []) let g:gutentags_project_root += ['.git', '.hg', '.svn', '.bzr', '_darcs', '_FOSSIL_', '.fslckout'] let g:gutentags_project_info = get(g:, 'gutentags_project_info', []) call add(g:gutentags_project_info, {'type': 'python', 'file': 'setup.py'}) call add(g:gutentags_project_info, {'type': 'ruby', 'file': 'Gemfile'}) let g:gutentags_exclude = get(g:, 'gutentags_exclude', []) let g:gutentags_resolve_symlinks = get(g:, 'gutentags_resolve_symlinks', 0) let g:gutentags_generate_on_new = get(g:, 'gutentags_generate_on_new', 1) let g:gutentags_generate_on_missing = get(g:, 'gutentags_generate_on_missing', 1) let g:gutentags_generate_on_write = get(g:, 'gutentags_generate_on_write', 1) if !exists('g:gutentags_cache_dir') let g:gutentags_cache_dir = '' else " Make sure we get an absolute/resolved path (e.g. expanding `~/`), and " strip any trailing slash. let g:gutentags_cache_dir = fnamemodify(g:gutentags_cache_dir, ':p') let g:gutentags_cache_dir = fnamemodify(g:gutentags_cache_dir, ':s?[/\\]$??') endif let g:gutentags_define_advanced_commands = get(g:, 'gutentags_define_advanced_commands', 0) if g:gutentags_cache_dir != '' && !isdirectory(g:gutentags_cache_dir) call mkdir(g:gutentags_cache_dir, 'p') endif if has('win32') let g:gutentags_plat_dir = expand('<sfile>:h:h:p') . "\\plat\\win32\\" let g:gutentags_res_dir = expand('<sfile>:h:h:p') . "\\res\\" let g:gutentags_script_ext = '.cmd' else let g:gutentags_plat_dir = expand('<sfile>:h:h:p') . '/plat/unix/' let g:gutentags_res_dir = expand('<sfile>:h:h:p') . '/res/' let g:gutentags_script_ext = '.sh' endif " }}} " Gutentags Setup {{{ augroup gutentags_detect autocmd! autocmd BufNewFile,BufReadPost * call gutentags#setup_gutentags() autocmd VimEnter * if expand('<amatch>')==''|call gutentags#setup_gutentags()|endif augroup end " }}} " Toggles and Miscellaneous Commands {{{ command! GutentagsUnlock :call gutentags#delete_lock_files() if g:gutentags_define_advanced_commands command! GutentagsToggleEnabled :let g:gutentags_enabled=!g:gutentags_enabled command! GutentagsToggleTrace :call gutentags#toggletrace() endif if g:gutentags_debug command! GutentagsToggleFake :call gutentags#fake() endif " }}}