I have few lines that each of them are colon separated values,abc:def:3Now I could do the reformat with printf plus IFS variable, while read line; do IFS=: printf %-20s  %-16s  %5d\n ${line[0]} ${line[1]} ${line[2]}; done < XXbut is it possible to do it within VIM?
Pretty print in VIM?
vim;printf
Well, in the vi spirit, you'd call a command to do it like::%!column -ts:(if you have column and it supports the -s option).Otherwise you could do::%s/[^:]\+/                                        &/g:%s/\v^ *([^:]{20}): *([^:]{16}): *([^:]{5})/\1:\2:\3/