Ну, это может не быть решением для vim, но я думаю, что awk может помочь:
cat testscript | LC_ALL=C awk '{printf "%s %s %s %s %.3f\n", $1,$2,$3,$4,$5+1.567 }'
и тест
this is a number 1.56
this is a number 2.56
this is a number 3.56
Мне нужно было LC_ALL = C для правильного преобразования разделителя с плавающей запятой, и, возможно, есть более элегантное решение для печати начала / конца строки. И результат выглядит так:
this is a number 3.127
this is a number 4.127
this is a number 5.127