diff options
author | Teddy Wing | 2014-05-26 16:42:27 -0400 |
---|---|---|
committer | Teddy Wing | 2014-05-26 16:42:27 -0400 |
commit | 5f9e0aa4e524097c5e2428b96c21c4f92a2a3b9f (patch) | |
tree | 887cea36650b615013e1bf94256759d1df2c0d35 /bundle/set-tab | |
parent | 7b091cedf8d112a6e22e201c731829039f67a443 (diff) | |
download | dotvim-5f9e0aa4e524097c5e2428b96c21c4f92a2a3b9f.tar.bz2 |
Create custom vim plugin for Stab command
Take the `Stab` command from my vimrc and put it in a custom plugin.
This will keep my vimrc cleaner and since the the functions are
autoloaded it may ever so slightly improve performance.
Diffstat (limited to 'bundle/set-tab')
-rw-r--r-- | bundle/set-tab/autoload/set_tab.vim | 27 | ||||
-rw-r--r-- | bundle/set-tab/plugin/set_tab.vim | 3 |
2 files changed, 30 insertions, 0 deletions
diff --git a/bundle/set-tab/autoload/set_tab.vim b/bundle/set-tab/autoload/set_tab.vim new file mode 100644 index 0000000..c3bcec1 --- /dev/null +++ b/bundle/set-tab/autoload/set_tab.vim @@ -0,0 +1,27 @@ +" Set tabstop, softtabstop and shiftwidth to the same value +" http://vimcasts.org/episodes/tabs-and-spaces/ +function! set_tab#Stab() + let l:tabstop = 1 * input('set tabstop = softtabstop = shiftwidth = ') + if l:tabstop > 0 + let &l:sts = l:tabstop + let &l:ts = l:tabstop + let &l:sw = l:tabstop + endif + call s:SummarizeTabs() +endfunction + +function! s:SummarizeTabs() + try + echohl ModeMsg + echon 'tabstop='.&l:ts + echon ' shiftwidth='.&l:sw + echon ' softtabstop='.&l:sts + if &l:et + echon ' expandtab' + else + echon ' noexpandtab' + endif + finally + echohl None + endtry +endfunction diff --git a/bundle/set-tab/plugin/set_tab.vim b/bundle/set-tab/plugin/set_tab.vim new file mode 100644 index 0000000..4b58fa3 --- /dev/null +++ b/bundle/set-tab/plugin/set_tab.vim @@ -0,0 +1,3 @@ +" Set tabstop, softtabstop and shiftwidth to the same value +" http://vimcasts.org/episodes/tabs-and-spaces/ +command! -nargs=* Stab call set_tab#Stab() |