aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim')
-rw-r--r--dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim29
1 files changed, 29 insertions, 0 deletions
diff --git a/dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim b/dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim
new file mode 100644
index 0000000..5ef531e
--- /dev/null
+++ b/dotfiles/.local/share/nvim/site/autoload/airline/extensions/windowswap.vim
@@ -0,0 +1,29 @@
+" MIT License. Copyright (c) 2013-2018 Bailey Ling et al.
+" vim: et ts=2 sts=2 sw=2
+
+scriptencoding utf-8
+
+if !exists('g:loaded_windowswap')
+ finish
+endif
+
+let s:spc = g:airline_symbols.space
+
+if !exists('g:airline#extensions#windowswap#indicator_text')
+ let g:airline#extensions#windowswap#indicator_text = 'WS'
+endif
+
+function! airline#extensions#windowswap#init(ext)
+ call airline#parts#define_function('windowswap', 'airline#extensions#windowswap#get_status')
+endfunction
+
+function! airline#extensions#windowswap#get_status()
+ " use new tab-aware api if WS is up to date
+ let s:mark = exists('*WindowSwap#IsCurrentWindowMarked') ?
+ \WindowSwap#IsCurrentWindowMarked() :
+ \(WindowSwap#HasMarkedWindow() && WindowSwap#GetMarkedWindowNum() == winnr())
+ if s:mark
+ return g:airline#extensions#windowswap#indicator_text.s:spc
+ endif
+ return ''
+endfunction