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 5d7f565deac0df000cfc2154

Line under headers

Put a line under each header, and remove the other markdown formatting.

Start file
## Headers

## To

## Underline
End file
Headers
-------

Are
---

Underlined
----------

View Diff

1c1,2
< ## Headers
---
> Headers
> -------
3c4,5
< ## To
---
> Are
> ---
5c7,8
< ## Underline
---
> Underlined
> ----------

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 471 remaining solutions by signing in and submitting your own entry
#472 Pavlo Hadzheha / @PHadzheha - Score: 133 - 02/19/21 @ 10:13
:<BS>?<BS>kjjwcwAre<Esc>kkjjjjAd<Esc>:%s/\(##\s\)\(.\+\)/\=submatch(2) . "\r" . rea<BS>peat(submatch(2)<C-Left><C-Left><C-Right><Right><Right><Right><Right><Right><Right><Right><Right><Right><Left>str_<BS><BS><BS><BS>'-', strchars*<BS>(<Right><C-Right>))/<CR>:wq<CR>

0 comments


Created by: @rax0m

472 active golfers, 1918 entries

Leaderboard (lowest score wins):
25
#31 - Arthur Goodman / @ArthurGoodman3

04/29/2020 at 09:31PM

25
#32 - 大矢元海 / @008Genkai

07/08/2020 at 11:28AM

25
#33 - PK / @pkeugine

07/10/2020 at 06:13PM

25
#34 - Ángel Durán / @AngeeelD

07/22/2020 at 05:31PM

25
#35 - fenn.stefan@gmail.com / @FennStefan

08/25/2020 at 09:10PM

25
#36 - 刘宏亮 / @CoyAkey

09/13/2020 at 12:47PM

25
#37 - hepebexè / @hepebexe

11/27/2020 at 07:01PM

25
#38 - roudens / @roudens2

12/05/2020 at 02:21PM

25
#39 - 영훈 / @odjfnrtm

12/28/2020 at 04:11AM

25
#40 - Nicolas Pagny / @NicolasPagny

01/08/2021 at 11:03AM

25
#41 - Youssef Magdy / @youssef_magdy29

05/01/2022 at 01:48AM

26
#42 - harmony_krieg / @harmony_krieg

10/20/2019 at 11:38AM

26
#43 - Melvin Cheung / @MelvinCheung

11/07/2019 at 01:58PM

26
#44 - Daniel Klepacki / @daniel_klepacki

11/11/2019 at 12:13PM

26
#45 - eshel / @EshelBM

11/16/2019 at 01:58PM

26
#46 - Hector Ricardo / @Hector_Ricardo3

11/29/2019 at 09:18PM

26
#47 - Lion de Bell / @CLGBamboo

12/01/2019 at 04:13PM

26
#48 - Adam Katz / @AdamKat01277576

12/10/2019 at 12:00PM

26
#49 - sapir malka / @sapir5522

12/26/2019 at 07:48AM

26
#50 - zqi / @zq11110320

12/27/2019 at 06:36AM

26
#51 - JimmyGymglish / @JGymglish

12/27/2019 at 03:44PM

26
#52 - hokonch / @hokonch

01/04/2020 at 05:47PM

26
#53 - caffeineism / @caffeineism

01/06/2020 at 02:38AM

26
#54 - hereforthepermission / @herefortheperm1

01/20/2020 at 02:22PM

26
#55 - く / @noblack_nolife

01/21/2020 at 08:49AM

26
#56 - KingYames / @JamesZeHunter

02/17/2020 at 05:55AM

26
#57 - golferN / @golferN3

02/28/2020 at 06:17PM

26
#58 - floyd / @floyd10086

03/01/2020 at 05:32PM

26
#59 - Paul Parker / @PaulDesmoParker

03/09/2020 at 12:13AM

26
#60 - 薛浩滎 / @iTPChbTeI4ZW9s3

03/15/2020 at 08:45PM