Hello, Lev Lvovsky <[EMAIL PROTECTED]> wrote:
> how can I align text under and after the cursor position to a > specific column number? and probably just as important, how can I > find out which column number a cursor is at ;)? In an unreleased plugin, I have the following definitions ----- >% ----- " take the cursor wherever you want and type "42,\mc" nnoremap <leader>mc :<c-u>call <sid>MoveToCol()<cr> function! s:MoveToCol() let d = v:count - col('.') if d > 0 exe 'normal! '.d."i \<esc>" endif endfunction " use repeat() with vim7 instead function! RepeatNChar(times, char) let r = '' let i = 0 while i != a:times let r = r . a:char let i = i + 1 endwhile return r endfunction function! CompleteWithUpToCol(with, column) return RepeatNChar( a:column-col('.'), a:with) endfunction ----- >% ----- The last function can be used with: - Align the arguments that follow the first comma :%s#,\zs#\=CompleteWithUpToCol('~', 42) - Align the the equal signs :%s#\ze=#\=CompleteWithUpToCol(' ', 50) HTH, -- Luc Hermitte