# emerge life

Adding line numbers to a list in Vim with awk

I have finally found a good way of adding line numbers to a list in Vim. Most tips I’ve found so far has been overly complicated and with various success, this option uses awk and it’s in return a bit simpler.

:'<,'>%!awk '{print NR".",$0}'

It works by you selecting the lines with Ctrl+v and then execute the command, it will then transform your list from this:


To this

1. One
2. Two
3. Three

And because I don’t want to manually type it every time, I decided to map it to \n:

map \n :'<,'>%!awk '{print NR".",$0}'<CR>

Source: Stackoverflow


I don't have a commenting system on my blog since there's no good solutions that works without JavaScript, is user friendly and respects both the users freedom and privacy. So for now, all feedback and hellos can be done via either e-mail, XMPP or Mastodon.