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):
27
#91 - Oskar Fridell / @rax0m

09/16/2019 at 10:58AM

27
#92 - EL KESRI Othmane / @KesriOthmane

09/16/2019 at 01:02PM

27
#93 - Douglas Massolari / @dmassolari

09/16/2019 at 02:18PM

27
#94 - πšƒπš’πšπš˜πšžπšŠπš— πšƒπšŽπš’πšœπšœπš’πšŽπš› / @TitouanT_

09/16/2019 at 03:40PM

27
#95 - Dan / @dstein64

09/16/2019 at 06:51PM

27
#96 - Alexander L. / @Lexol4s

09/16/2019 at 09:00PM

27
#97 - Gasol Wu / @gasolwu

09/17/2019 at 02:55AM

27
#98 - Cassandra / @kascein

09/17/2019 at 07:22AM

27
#99 - garry quested / @GQuested

09/17/2019 at 08:52AM

27
#100 - "Smylers" / @Smylers2

09/17/2019 at 01:37PM

27
#101 - nefforr / @yayamip

09/17/2019 at 02:27PM

27
#102 - Tinko Minko / @tandikula

09/17/2019 at 08:19PM

27
#103 - Francisco Romero / @PanchoopRomero

09/17/2019 at 10:52PM

27
#104 - Iggy / @iggredible

09/18/2019 at 03:51AM

27
#105 - Viktor Styrud / @ViktorStyrud

09/18/2019 at 08:56AM

27
#106 - Ollin Boer Bohan / @madebyollin

09/18/2019 at 02:25PM

27
#107 - aα΅£α΅€hα΅’ / @aruhi_

09/20/2019 at 02:19PM

27
#108 - Ron Holt / @ron_holt

09/20/2019 at 05:40PM

27
#109 - MichaΕ‚ Łowicki / @mlowicki

09/20/2019 at 07:31PM

27
#110 - Bellator nobilis / @BNobilis

09/20/2019 at 08:39PM

27
#111 - Clmi / @c_decaf

09/21/2019 at 09:05AM

27
#112 - IronTiger Park / @IrontigerP

09/23/2019 at 05:06AM

27
#113 - Paul Yates / @PYates77

09/25/2019 at 06:20PM

27
#114 - AndrzejWasowski@scholar.social 🌻 πŸ•ŠοΈ / @AndrzejWasowski

09/27/2019 at 12:14PM

27
#115 - Jake / @thejakenixon

09/29/2019 at 05:34AM

27
#116 - Sebastien Baudray / @sbaudray

09/29/2019 at 03:33PM

27
#117 - dahan / @dahan74265266

10/08/2019 at 03:14AM

27
#118 - Stephen Westhead / @CraziCrow

10/08/2019 at 11:18AM

27
#119 - Madelyn Freed / @EcoBummer

10/10/2019 at 05:17PM

27
#120 - Emil Braserud / @Erdustiggen

10/10/2019 at 06:11PM