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

507 active golfers, 2059 entries

Leaderboard (lowest score wins):
28
#241 - vimmac / @vimmac13823

06/14/2023 at 10:17AM

28
#242 - philikarus / @philikarus

02/11/2024 at 11:04AM

29
#243 - Baine Wedlock / @BaineWedlock

09/16/2019 at 12:29PM

29
#244 - Marco💾 / @markomannux

09/18/2019 at 05:29PM

29
#245 - Miko / @_m_ik_o_

09/24/2019 at 02:37PM

29
#246 - lofoneax / @lofoneax

09/24/2019 at 08:19PM

29
#247 - arsi arola / @mos_kiitto

10/18/2019 at 11:25AM

29
#248 - Winston Smith / @winstonCodes

10/30/2019 at 09:36PM

29
#249 - Ebi / @ehan6

11/08/2019 at 09:09PM

29
#250 - Gianluca Scacco / @gscacco

11/10/2019 at 01:46PM

29
#251 - bassnecter / @lothedr

11/23/2019 at 03:48PM

29
#252 - Roger Bongers / @RogerBongers

12/01/2019 at 03:15AM

29
#253 - 990 / @nisibasi990

12/03/2019 at 02:15PM

29
#254 - tomo@D2S / @e_2_718281828

12/06/2019 at 01:58PM

29
#255 - Jonathan Jeffrey / @jonrjeffrey

12/06/2019 at 08:49PM

29
#256 - Wim Stockman / @StockmanWim

01/09/2020 at 03:39PM

29
#257 - Łukasz / @_pixsll

01/22/2020 at 07:44AM

29
#258 - Ali Kero / @stochastist

02/13/2020 at 10:36PM

29
#259 - 廖彥智 / @JeffYenchih

03/09/2020 at 09:54AM

29
#260 - majo senf / @majo_senf

03/23/2020 at 02:39PM

29
#261 - bluemartian / @bluemartianz59

03/26/2020 at 06:24PM

29
#262 - RaylanFox / @RaylanFox

04/11/2020 at 04:28PM

29
#263 - John Sumner / @rjsumner

04/28/2020 at 12:19PM

29
#264 - Laurent Atlan / @laurentatlan1

05/11/2020 at 12:14PM

29
#265 - Quentin Leroy / @qnleroy

05/13/2020 at 06:17AM

29
#266 - Kevin Keefe / @KevinKeefe5

05/15/2020 at 04:41PM

29
#267 - pady. 🇪🇺 @hundertzwoelf@sueden.social / @hundertzwoelf_

05/26/2020 at 02:34PM

29
#268 - Super User / @WayanLW

06/21/2020 at 07:02AM

29
#269 - vito / @vito49999722

08/01/2020 at 07:20AM

29
#270 - Brendan Schaenzer / @bschaenzer

09/29/2020 at 10:08PM