aboutsummaryrefslogtreecommitdiff
path: root/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim
diff options
context:
space:
mode:
authorxero <x@xero.nu>2014-05-05 15:09:26 -0400
committerxero <x@xero.nu>2014-05-05 15:09:26 -0400
commit89a2b67f2427d961bb2f0de771a0290d85e379f9 (patch)
treea30fa26360b7c3cf442689650da54865ac0f6fc3 /.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim
parent53b47ce8258f7efe380cc9dab09826b1f0e9bc27 (diff)
downloaddotfiles_ascii-89a2b67f2427d961bb2f0de771a0290d85e379f9.tar.xz
dotfiles_ascii-89a2b67f2427d961bb2f0de771a0290d85e379f9.zip
add vim configs -- yes i have joined the cult of vim
Diffstat (limited to '')
-rw-r--r--.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim27
1 files changed, 27 insertions, 0 deletions
diff --git a/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim b/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim
new file mode 100644
index 0000000..e4a790d
--- /dev/null
+++ b/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/unique_tail.vim
@@ -0,0 +1,27 @@
+" MIT License. Copyright (c) 2013-2014 Bailey Ling.
+" vim: et ts=2 sts=2 sw=2
+
+function! airline#extensions#tabline#unique_tail#format(bufnr, buffers)
+ let duplicates = {}
+ let tails = {}
+ let map = {}
+ for nr in a:buffers
+ let name = bufname(nr)
+ if empty(name)
+ let map[nr] = '[No Name]'
+ else
+ let tail = fnamemodify(name, ':t')
+ if has_key(tails, tail)
+ let duplicates[nr] = nr
+ endif
+ let tails[tail] = 1
+ let map[nr] = airline#extensions#tabline#default#wrap_name(nr, tail)
+ endif
+ endfor
+
+ for nr in values(duplicates)
+ let map[nr] = airline#extensions#tabline#default#wrap_name(nr, fnamemodify(bufname(nr), ':p:.'))
+ endfor
+
+ return map[a:bufnr]
+endfunction