]> Sergey Matveev's repositories - dotfiles.git/blob - vim/.vim/pack/stargrave/start/align/autoload/align.vim
869fd50866781638bb805c7a95aecf908e24f8dd
[dotfiles.git] / vim / .vim / pack / stargrave / start / align / autoload / align.vim
1 " something that won't be met anywhere
2 let s:sep = "₀◎○ë"
3
4 function! align#do(first, last, sep) abort
5     let in = []
6     for n in range(a:first, a:last)
7         let in = add(in, substitute(getline(n), a:sep, "\t" . s:sep, "g"))
8     endfor
9     let out = systemlist("column -t -s \"\t\"", add(in, ""))
10     for n in range(a:first, a:last)
11         call setline(n, substitute(out[n - a:first], "  " . s:sep, a:sep, "g"))
12     endfor
13 endfunction