aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Odding <peter@peterodding.com>2011-06-26 22:41:02 +0200
committerPeter Odding <peter@peterodding.com>2011-06-26 22:41:02 +0200
commit67616b25971ff0f4d785d67592128909ef5a5e49 (patch)
tree89c09ffa389c583a03f0f238e9a3b2dc6cda0fdc
parent4cf1efd96f9788e3221234cf14fa9e3ac89cedb9 (diff)
downloadvim-easytags-67616b25971ff0f4d785d67592128909ef5a5e49.tar.gz
Add easytags_auto_update/auto_highlight options
-rw-r--r--README.md20
-rw-r--r--autoload/xolox/easytags.vim38
-rw-r--r--doc/easytags.txt28
-rw-r--r--plugin/easytags.vim4
4 files changed, 71 insertions, 19 deletions
diff --git a/README.md b/README.md
index 870c928..32538b4 100644
--- a/README.md
+++ b/README.md
@@ -96,6 +96,26 @@ As I explained above the plug-in by default doesn't update or highlight your tag
Note: Like the `g:easytags_always_enabled` option, if you change this option it won't apply until you restart Vim, so you'll have to set this option in your [vimrc script][vimrc].
+### The `g:easytags_auto_update` option
+
+By default the plug-in automatically updates and highlights your tags when you stop typing for a moment. If you want to disable automatic updating while keeping automatic highlighting enabled you can set this option to false:
+
+ :let g:easytags_auto_update = 0
+
+If you want to disable automatic updating for a single file you can execute the following command while editing the file:
+
+ :let b:easytags_auto_update = 0
+
+### The `g:easytags_auto_highlight` option
+
+By default the plug-in automatically updates and highlights your tags when you stop typing for a moment. If you want to disable automatic highlighting while keeping automatic updating enabled you can set this option to false:
+
+ :let g:easytags_auto_highlight = 0
+
+If you want to disable automatic highlighting for a single file you can execute the following command while editing the file:
+
+ :let b:easytags_auto_highlight = 0
+
### The `g:easytags_autorecurse` option
When the `:UpdateTags` command is executed automatically or without arguments, it defaults to updating just the tags for the current file. If you'd rather have it recursively scan everything below the directory of the current file then set this option to true (1):
diff --git a/autoload/xolox/easytags.vim b/autoload/xolox/easytags.vim
index 75a2679..88a7562 100644
--- a/autoload/xolox/easytags.vim
+++ b/autoload/xolox/easytags.vim
@@ -1,6 +1,6 @@
" Vim script
" Author: Peter Odding <peter@peterodding.com>
-" Last Change: June 24, 2011
+" Last Change: June 26, 2011
" URL: http://peterodding.com/code/vim/easytags/
" Public interface through (automatic) commands. {{{1
@@ -35,26 +35,30 @@ endfunction
function! xolox#easytags#autoload() " {{{2
try
" Update entries for current file in tags file?
- let pathname = s:resolve(expand('%:p'))
- if pathname != ''
- let tags_outdated = getftime(pathname) > getftime(xolox#easytags#get_tagsfile())
- if tags_outdated || !xolox#easytags#file_has_tags(pathname)
- call xolox#easytags#update(1, 0, [])
+ if xolox#misc#option#get('easytags_auto_update', 1)
+ let pathname = s:resolve(expand('%:p'))
+ if pathname != ''
+ let tags_outdated = getftime(pathname) > getftime(xolox#easytags#get_tagsfile())
+ if tags_outdated || !xolox#easytags#file_has_tags(pathname)
+ call xolox#easytags#update(1, 0, [])
+ endif
endif
endif
" Apply highlighting of tags to current buffer?
- if &eventignore !~? '\<syntax\>'
- if !exists('b:easytags_last_highlighted')
- call xolox#easytags#highlight()
- else
- for tagfile in tagfiles()
- if getftime(tagfile) > b:easytags_last_highlighted
- call xolox#easytags#highlight()
- break
- endif
- endfor
+ if xolox#misc#option#get('easytags_auto_highlight', 1)
+ if &eventignore !~? '\<syntax\>'
+ if !exists('b:easytags_last_highlighted')
+ call xolox#easytags#highlight()
+ else
+ for tagfile in tagfiles()
+ if getftime(tagfile) > b:easytags_last_highlighted
+ call xolox#easytags#highlight()
+ break
+ endif
+ endfor
+ endif
+ let b:easytags_last_highlighted = localtime()
endif
- let b:easytags_last_highlighted = localtime()
endif
catch
call xolox#misc#msg#warn("easytags.vim %s: %s (at %s)", g:easytags_version, v:exception, v:throwpoint)
diff --git a/doc/easytags.txt b/doc/easytags.txt
index 3269541..7579a9c 100644
--- a/doc/easytags.txt
+++ b/doc/easytags.txt
@@ -199,6 +199,34 @@ it won't apply until you restart Vim, so you'll have to set this option in
your |vimrc| script.
-------------------------------------------------------------------------------
+The *g:easytags_auto_update* option
+
+By default the plug-in automatically updates and highlights your tags when you
+stop typing for a moment. If you want to disable automatic updating while
+keeping automatic highlighting enabled you can set this option to false:
+>
+ :let g:easytags_auto_update = 0
+
+If you want to disable automatic updating for a single file you can execute
+the following command while editing the file:
+>
+ :let b:easytags_auto_update = 0
+
+-------------------------------------------------------------------------------
+The *g:easytags_auto_highlight* option
+
+By default the plug-in automatically updates and highlights your tags when you
+stop typing for a moment. If you want to disable automatic highlighting while
+keeping automatic updating enabled you can set this option to false:
+>
+ :let g:easytags_auto_highlight = 0
+
+If you want to disable automatic highlighting for a single file you can
+execute the following command while editing the file:
+>
+ :let b:easytags_auto_highlight = 0
+
+-------------------------------------------------------------------------------
The *g:easytags_autorecurse* option
When the |:UpdateTags| command is executed automatically or without arguments,
diff --git a/plugin/easytags.vim b/plugin/easytags.vim
index 85fb8c6..96155ae 100644
--- a/plugin/easytags.vim
+++ b/plugin/easytags.vim
@@ -1,6 +1,6 @@
" Vim plug-in
" Author: Peter Odding <peter@peterodding.com>
-" Last Change: June 24, 2011
+" Last Change: June 26, 2011
" URL: http://peterodding.com/code/vim/easytags/
" Requires: Exuberant Ctags (http://ctags.sf.net)
@@ -12,7 +12,7 @@ if &cp || exists('g:loaded_easytags')
finish
endif
-let g:easytags_version = '2.4.6'
+let g:easytags_version = '2.4.7'
" Configuration defaults and initialization. {{{1