vim-auto-tabstop

A Vim plugin for automatically setting tabstop size
git clone https://git.ce9e.org/vim-auto-tabstop.git

commit
648103203b6a4fb7b64c0482804c624b405a2e3b
parent
b7206952b0e67fed67b9e4f529a13723760d4866
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2023-06-13 20:03
use vartabstop if available

Diffstat

M plugin/fets.vim 19 +++++++++++++++----

1 files changed, 15 insertions, 4 deletions


diff --git a/plugin/fets.vim b/plugin/fets.vim

@@ -13,6 +13,9 @@
   13    13 " at least you get proper alignment.  It might be useful in some specific
   14    14 " contexts, e.g. tab separated value files.
   15    15 "
   -1    16 " If vim was compiled with +vartabs, the first restriction does no longer
   -1    17 " apply.
   -1    18 "
   16    19 " Usage
   17    20 " -----
   18    21 "
@@ -53,12 +56,20 @@ function! FETS()
   53    56 		let &l:tabstop = &g:tabstop
   54    57 		let &l:shiftwidth = &g:shiftwidth
   55    58 		let &l:softtabstop = &g:softtabstop
   -1    59 		if has('vartabs')
   -1    60 			let &l:vartabstop = &g:vartabstop
   -1    61 		endif
   56    62 		let b:fets_active = 0
   57    63 	else
   58    -1 		let l:fets = max(s:CalcTS())
   59    -1 		let &l:tabstop = l:fets
   60    -1 		let &l:shiftwidth = l:fets
   61    -1 		let &l:softtabstop = -1
   -1    64 		let l:tabs = s:CalcTS()
   -1    65 		if has('vartabs')
   -1    66 			let &l:vartabstop = join(l:tabs, ',')
   -1    67 			let &l:softtabstop = 0
   -1    68 		else
   -1    69 			let &l:tabstop = max(l:tabs)
   -1    70 			let &l:shiftwidth = max(l:tabs)
   -1    71 			let &l:softtabstop = -1
   -1    72 		endif
   62    73 		let b:fets_active = 1
   63    74 	endif
   64    75 endfunction