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 71 remaining solutions by signing in and submitting your own entry
#72 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

72 active golfers, 316 entries

Leaderboard (lowest score wins):
42
#31 - k1mosabe / @k1mosabe

12/02/2024 at 11:56PM

43
#32 - Diwakar Singh Parmar / @parmardiwakar150

09/14/2024 at 05:39AM

43
#33 - Chow Yue / @SpicyChickenFLY

09/27/2024 at 10:30AM

43
#34 - Abdelrahman Madkour / @a3madkour

03/28/2025 at 07:59PM

44
#35 - Gustav Kristensen / @gustavkrist

10/01/2024 at 03:03PM

45
#36 - rhasarub / @rhasarub

09/09/2024 at 09:03AM

45
#37 - Janusz Spatz / @janusz-anue

09/13/2024 at 08:00AM

45
#38 - ARK / @ARezaK

12/25/2024 at 06:33PM

45
#39 - mihkel55 / @mihkel55

04/23/2025 at 02:33PM

47
#40 - Anton Strand / @AntonStrand

10/30/2024 at 05:18PM

49
#41 - Vimgolf User / @VimgolfU

09/09/2024 at 06:40PM

49
#42 - Silver / @paradisehex

09/10/2024 at 06:15AM

50
#43 - Markus Lux / @mlux86

09/18/2024 at 06:06PM

50
#44 - guyontristan / @guyontristan

10/20/2024 at 01:09PM

52
#45 - MartnRamtin / @MartnRamtin

09/12/2024 at 08:04PM

53
#46 - Adi / @adi2004

09/30/2024 at 06:41AM

54
#47 - Michael Dick / @midick

09/08/2024 at 11:56AM

55
#48 - joachimnielandt / @joachimnielandt

09/20/2024 at 09:00AM

56
#49 - aaalllthrowaway2 / @aaalllthro59419

09/11/2024 at 04:46PM

57
#50 - Mingyuan Zhao / @MagentaManifold

09/23/2024 at 07:56PM

60
#51 - Sergey Valiev / @Valiev

02/21/2025 at 02:37PM

61
#52 - M S Dheeraj Murthy / @Dheeraj-Murthy

09/13/2024 at 01:09PM

61
#53 - DayuanX / @DayuanX

09/29/2024 at 08:16AM

62
#54 - fenec / @fenec

09/21/2024 at 03:41PM

63
#55 - Bader Almazmumi / @almazmumi

01/30/2025 at 12:14PM

64
#56 - BufferKong / @BufferKong

09/23/2024 at 07:14PM

69
#57 - ydc123 / @ydc123

09/17/2024 at 10:34AM

77
#58 - cgamiz / @cgamiz

09/18/2024 at 11:15PM

78
#59 - Evan Miao / @laomiao_

09/10/2024 at 06:28AM

79
#60 - Niil Öhlin / @niilohlin

09/20/2024 at 11:49AM