aboutsummaryrefslogtreecommitdiff
path: root/vim/plugin/equalalways_resized.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/plugin/equalalways_resized.vim')
-rw-r--r--vim/plugin/equalalways_resized.vim27
1 files changed, 27 insertions, 0 deletions
diff --git a/vim/plugin/equalalways_resized.vim b/vim/plugin/equalalways_resized.vim
new file mode 100644
index 00000000..8865f0af
--- /dev/null
+++ b/vim/plugin/equalalways_resized.vim
@@ -0,0 +1,27 @@
+"
+" equalalways_resized: If 'equalalways' is set, extend it to VimResized
+" events.
+"
+" Author: Tom Ryder <tom@sanctum.geek.nz>
+" License: Same as Vim itself
+"
+if exists('g:loaded_equalalways_resized') || &compatible
+ finish
+endif
+if !has('autocmd') || !has('windows') || !exists('##VimResized')
+ finish
+endif
+let g:loaded_equalalways_resized = 1
+
+" If 'equalalways' is set, rebalance the windows
+function! s:Rebalance() abort
+ if &equalalways
+ wincmd =
+ endif
+endfunction
+
+" Add hook for VimResized event
+augroup equalalways_resized
+ autocmd!
+ autocmd VimResized * call s:Rebalance()
+augroup END