Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 9v0066dd4c360000000003c9

Markdown Blog Editing

Convert the given link text in start file to a markdown link list.

Start file
# Introduction
# Normal mode
# Command Line mode
# Visual mode
End file
* [Introduction](#introduction)
* [Normal mode](#normal-mode)
* [Command Line mode](#command-line-mode)
* [Visual mode](#visual-mode)

View Diff

1,4c1,4
< # Introduction
< # Normal mode
< # Command Line mode
< # Visual mode
---
> * [Introduction](#introduction)
> * [Normal mode](#normal-mode)
> * [Command Line mode](#command-line-mode)
> * [Visual mode](#visual-mode)

Solutions

The best way to learn is to practice. Below, you will find some of the solutions other golfers have entered. To unlock higher ranked solutions, submit your own entry which does as well or better than the solutions you can currently see - climb the ladder!

Check out these helpful resources to improve your Vim skills... Game on.

Unlock 85 remaining solutions by signing in and submitting your own entry
#86 Suraj Kumar / @kumarsuraj512 - Score: 182 - 09/23/24 @ 12:17
:%norm w<BS><BS> wy$A[)<BS><BS>}(#<C-V><Esc>OA<Down><BS><BS>A)^rxwi[<CR><Esc>u<Esc><Esc><Esc><Esc><Esc><Esc><Esc><Esc><Esc><Esc>0:%norm wy$ A](#<C-V><Esc>OC<BS><BS>pA)<C-V><Esc>OC<BS><BS>^rxwi{<BS>[<CR>u:$<BS>%o<BS>norm y$<BS><BS><BS> wy$ A](#<C-V><Esc>OC<BS><BS>pA)<C-V><Esc>OC<BS><BS>^r*wi[<CR>ggqaf#vi(guvi(:s/\%V /-/g<CR>^q:2,$norm @a<CR>:wq<CR>

0 comments


Created by: @Ajay-056

86 active golfers, 370 entries

Leaderboard (lowest score wins):
30
#1 - Peppa Pig / @PeppaPigSg

09/09/2024 at 04:55AM

30
#2 - John Braxler / @braxler

09/09/2024 at 06:04PM

30
#3 - Danilo J. S. Bellini 🥊🇧🇷 / @danilobellini

09/09/2024 at 11:11PM

30
#4 - echemoo's house / @echemoo

09/14/2024 at 03:33AM

30
#5 - Thomas David Baker / @bakert

09/15/2024 at 04:46PM

30
#6 - rasputins / @rasputins

10/16/2024 at 05:21AM

30
#7 - got_windy / @insomnight

10/22/2024 at 03:34AM

30
#8 - mtklar / @mtklar

10/22/2024 at 09:27AM

30
#9 - Chino / @MarcoMeinardi

02/18/2025 at 06:15PM

30
#10 - jimmymills / @jimmymills

05/15/2025 at 09:02PM

31
#11 - Casey O'Donnell / @CaseyOD15519082

09/15/2024 at 08:21PM

31
#12 - John Huynh / @huynh_j93

09/19/2024 at 04:31PM

31
#13 - Brett Collins / @brett-collins_cbhq

10/04/2024 at 04:00AM

31
#14 - winter-loo / @winter-loo

06/20/2025 at 05:32AM

35
#15 - Jean George / @JeanGeo20504212

09/13/2024 at 09:43AM

35
#16 - Tuan Tran / @mptnt1988

09/21/2024 at 04:29PM

35
#17 - JMTed / @JMTed

10/06/2024 at 06:34PM

35
#18 - Leon Kacowicz / @leonkacowicz

05/05/2025 at 03:42PM

36
#19 - ばやし / @shin5884_kt

09/10/2024 at 06:09AM

36
#20 - Jamie-505 / @Jamie-505

09/10/2024 at 03:22PM

36
#21 - mau-mauricelim / @mau-mauricelim

09/12/2024 at 06:50AM

36
#22 - aaay-aaay / @aaay-aaay

10/26/2024 at 01:25PM

37
#23 - Hemram Kumarapu / @H4-MM-3R

09/21/2024 at 09:39AM

37
#24 - Martin Knoller Stocker / @linuxswords

05/30/2025 at 03:00PM

38
#25 - Aurélien Boeuf / @aurelbof

09/12/2024 at 12:57PM

38
#26 - MatFriend / @MatFriend

09/19/2024 at 12:05AM

38
#27 - Simon / @hommels

09/29/2024 at 12:58PM

39
#28 - Cody-Soultz / @Cody-Soultz

10/02/2024 at 03:05PM

40
#29 - Roger Stoltz / @rogsto1

09/09/2024 at 02:21PM

41
#30 - _3tHeR_ / @3ther-joyboy

11/11/2024 at 11:00AM