>>604
コマンド一発でやる方法は思いつかなかったわ
関数作るならもちろんできる

function! AAA() range
let i = a:firstline
let n = 1
for l in getline(i, a:lastline)
let line = l
while match(line, 'c') + 1
if match(line, 'c')
let line = substitute(line, 'c', printf('[%d]', n), '')
let n += 1
endif
endwhile
cal setline(i, line)
let i += 1
endfor
endfunction