aboutsummaryrefslogtreecommitdiff
path: root/vim/bundle/tlib_vim/autoload/tlib/hook.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/bundle/tlib_vim/autoload/tlib/hook.vim')
-rwxr-xr-xvim/bundle/tlib_vim/autoload/tlib/hook.vim25
1 files changed, 25 insertions, 0 deletions
diff --git a/vim/bundle/tlib_vim/autoload/tlib/hook.vim b/vim/bundle/tlib_vim/autoload/tlib/hook.vim
new file mode 100755
index 0000000..07d0504
--- /dev/null
+++ b/vim/bundle/tlib_vim/autoload/tlib/hook.vim
@@ -0,0 +1,25 @@
+" @Author: Tom Link (micathom AT gmail com?subject=[vim])
+" @Website: http://www.vim.org/account/profile.php?user_id=4037
+" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
+" @Revision: 11
+
+
+" :def: function! tlib#hook#Run(hook, ?dict={})
+" Execute dict[hook], w:{hook}, b:{hook}, or g:{hook} if existent.
+function! tlib#hook#Run(hook, ...) "{{{3
+ TVarArg ['dict', {}]
+ if has_key(dict, a:hook)
+ let hook = dict[a:hook]
+ else
+ let hook = tlib#var#Get(a:hook, 'wbg')
+ endif
+ if empty(hook)
+ return 0
+ else
+ let world = dict
+ exec hook
+ return 1
+ endif
+endf
+
+