Impressão bonita no VIM?

1

Eu tenho poucas linhas que cada uma delas são valores separados por dois pontos,

abc:def:3

Agora eu poderia fazer a reformatação com printf mais a variável IFS,

while read line; do IFS=":" printf "%-20s %-16s %5d\n" ${line[0]} ${line[1]} ${line[2]}; done < XX

mas é possível fazê-lo dentro do VIM?

    
por daisy 28.12.2012 / 07:55

1 resposta

4

Bem, no espírito vi , você chamaria um comando para fazer isso:

:%!column -ts:

(se você tem column e suporta a opção -s ).

Caso contrário, você poderia fazer:

:%s/[^:]\+/                                        &/g
:%s/\v^ *([^:]{20}): *([^:]{16}): *([^:]{5})/::/
    
por 28.12.2012 / 10:22

Tags