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 591903ff3060ed0b32000007

Adam's challenge

Change both normal to bold and 4 by 2. Adam Wathan challenge this on twitter . He did it in 11 keystrokes on Sublime.

Start file
<div>
    <span class="text-base text-dark wt-normal">
        @icon('line-graph', 'icon-sm text-dark-faint m-r-4') ${{ number_format($product->totalRevenue() / 100) }}
    </span>
    <span class="text-base text-dark wt-normal">
        @icon('users', 'icon-sm text-dark-faint m-r-4') {{ $product->totalPurchases() }}
    </span>
</div>
End file
<div>
    <span class="text-base text-dark wt-bold">
        @icon('line-graph', 'icon-sm text-dark-faint m-r-2') ${{ number_format($product->totalRevenue() / 100) }}
    </span>
    <span class="text-base text-dark wt-bold">
        @icon('users', 'icon-sm text-dark-faint m-r-2') {{ $product->totalPurchases() }}
    </span>
</div>

View Diff

2,3c2,3
<     <span class="text-base text-dark wt-normal">
<         @icon('line-graph', 'icon-sm text-dark-faint m-r-4') ${{ number_format($product->totalRevenue() / 100) }}
---
>     <span class="text-base text-dark wt-bold">
>         @icon('line-graph', 'icon-sm text-dark-faint m-r-2') ${{ number_format($product->totalRevenue() / 100) }}
5,6c5,6
<     <span class="text-base text-dark wt-normal">
<         @icon('users', 'icon-sm text-dark-faint m-r-4') {{ $product->totalPurchases() }}
---
>     <span class="text-base text-dark wt-bold">
>         @icon('users', 'icon-sm text-dark-faint m-r-2') {{ $product->totalPurchases() }}

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 47 remaining solutions by signing in and submitting your own entry
#48 eric & the a6 / EricAnti4r - Score: 23 - 05/15/17 @ 23:54
/no<CR>cwbold<Esc>n./4<CR>r2n.:x<CR>

0 comments

#49 Pablo / suspekt007 - Score: 23 - 05/17/17 @ 02:06
/no<CR>cwbold<Esc>n.<Esc>/4<CR>r2n.ZZ

0 comments

#50 blamitter / blamitter - Score: 23 - 05/17/17 @ 13:55
/o<CR>ciwbold<Esc>3j./4<CR>r2n.ZZ

0 comments

#51 Jeff Rimko / jeffrimko - Score: 23 - 05/18/17 @ 01:27
jfo*cwbold<C-C><C-C>n./4<CR>r2n.ZZ

0 comments

#52 Bjoern M. Wibben / bjoernwibben - Score: 23 - 05/18/17 @ 08:41
/no<CR>cwbold<Esc>n.:%s/4/2<CR>ZZ

0 comments

#53 almostdvs / almostdvs - Score: 23 - 05/23/17 @ 02:26
/no<CR>ciwbold<Esc>n./4<CR>r2n.ZZ

0 comments

#54 squid / zerosquid - Score: 23 - 05/26/17 @ 23:58
jfm*cwbold<Esc>n.jf4*r2n.ZZ

0 comments

#55 Edouard Piette / EdPiette - Score: 24 - 05/19/17 @ 13:00
/no<CR>ciwbold<Esc>n.?4<CR><C-A><C-A>n<C-A><C-A>ZZ

0 comments

#56 python-tweepy / python_tweepy - Score: 26 - 05/16/17 @ 03:55
:%s/normal/bold<CR>:%s/4/2<CR>ZZ

0 comments

#57 Juho Härme / jharme - Score: 29 - 05/22/17 @ 19:39
jfn;cebold<Esc>l/w<CR>fn.?4<CR>r2N.:wq<CR>

0 comments

#58 Jared Thomas / jthomas285 - Score: 39 - 05/15/17 @ 23:20
:%sera<BS><BS><BS>/normal/bold<CR>kkjk<C-A><C-A>jjj<C-A>0<C-A><C-A>:wq<CR>

0 comments

#59 Krystle / krystle_test - Score: 55 - 05/17/17 @ 06:32
:%s/t<BS>wt-normal/wt-bold<CR><Down><Right>i:w<BS><BS><Esc>:w%<BS><BS><BS>:%s/r-4/r-2<CR><Esc>:wq<CR>

0 comments

Created by: TresErresCo

59 active golfers, 188 entries

Leaderboard (lowest score wins):
18
#1 - Urtica dioica / udioica

05/15/2017 at 04:19AM

18
#2 - Smylers / Smylers2

05/15/2017 at 05:58AM

18
#3 - Chris Robertson / chrisxrobertson

05/15/2017 at 10:43AM

18
#4 - Valacar / valacar

05/15/2017 at 08:33PM

18
#5 - Craig Langford / cllangfo

05/15/2017 at 09:26PM

18
#6 - ЯRicardo / TresErresCo

05/15/2017 at 10:04PM

18
#7 - Vaughn Cato / vaughncato

05/16/2017 at 03:59AM

18
#8 - Saki Gw / Sakigw

05/16/2017 at 07:15AM

18
#9 - John Braxler / braxler

05/16/2017 at 03:39PM

18
#10 - Russell Ball / rtball2

05/16/2017 at 10:28PM

18
#11 - Rami Hovi / hacker_lawyer

05/19/2017 at 01:37PM

18
#12 - Nelson Zhang / Fasoters

05/19/2017 at 05:38PM

18
#13 - martin tourneboeuf / martintournebo1

05/21/2017 at 10:50AM

18
#14 - Domingue Justin / _jdomingue

05/21/2017 at 05:04PM

18
#15 - rahul bhola / theRahulBhola

05/21/2017 at 05:10PM

18
#16 - Rodrigo Dorantes G. / ruydg

05/21/2017 at 06:16PM

18
#17 - Petro Тrouq / zulolosi

05/21/2017 at 09:55PM

18
#18 - 梧桐王子 / WutongYujie

05/22/2017 at 01:15AM

18
#19 - Melvin Cheung / MelvinCheung

05/22/2017 at 05:37PM

18
#20 - Parker Vaughn / parker789

05/23/2017 at 01:38PM

18
#21 - Jason Villanueva / Json_V1

05/24/2017 at 07:52AM

18
#22 - Jan Fiser / dmmn082

05/25/2017 at 02:54AM

18
#23 - ybw / yossibenwolf

05/25/2017 at 09:53AM

18
#24 - Tomas Sikula / tomsmicroblog

05/26/2017 at 05:57PM

18
#25 - Simon / simonpaitu

05/28/2017 at 02:43PM

19
#26 - Assaf Lavie / AssafLavie

05/18/2017 at 06:24PM

19
#27 - some call me mattp / mattpep

05/22/2017 at 03:05PM

19
#28 - Léo Ercolanelli / ercolanellileo

05/23/2017 at 09:27PM

20
#29 - Durga Swaroop Perla / durgaswaroop

05/15/2017 at 12:11PM

20
#30 - Matt Cook / mattcook08

05/15/2017 at 09:04PM

20
#31 - jakeroberts / jakeroberts

05/19/2017 at 01:12PM

21
#32 - tPenguinLTG / tpenguinltg

05/15/2017 at 01:58AM

21
#33 - Daniel K. / lan4k

05/15/2017 at 06:27AM

21
#34 - PL / petrlaitoch

05/16/2017 at 10:04AM

21
#35 - Sylvia / SylvieLorxu

05/16/2017 at 09:18PM

21
#36 - Cristian Lupașcu / clupasq

05/18/2017 at 10:57AM

21
#37 - Yossi Zahn / yossi_zahn

05/21/2017 at 07:18PM

21
#38 - Brian Hall / _bruab_

05/22/2017 at 01:41PM

21
#39 - Utkrisht Dhankar / UtkrishtDhankar

05/24/2017 at 10:00AM

21
#40 - David / Revan4Vendetta

05/26/2017 at 10:59AM

22
#41 - Ryan Jarrett / texmexas

05/15/2017 at 03:51PM

22
#42 - Shriharsh / ShriharshMishra

05/15/2017 at 03:57PM

22
#43 - Bruce Horner / HerbConjurer

05/16/2017 at 01:06AM

22
#44 - Quatrix / Quatrix

05/23/2017 at 08:47PM

22
#45 - Nathan J Slaughter / NjSlaughter

05/24/2017 at 12:35AM

23
#46 - Bruno / ShadowDancer437

05/15/2017 at 04:16AM

23
#47 - mwatkward / AftrschoolSpe

05/15/2017 at 10:05PM

23
#48 - eric & the a6 / EricAnti4r

05/15/2017 at 11:54PM

23
#49 - Pablo / suspekt007

05/17/2017 at 02:06AM

23
#50 - blamitter / blamitter

05/17/2017 at 01:55PM

23
#51 - Jeff Rimko / jeffrimko

05/18/2017 at 01:27AM

23
#52 - Bjoern M. Wibben / bjoernwibben

05/18/2017 at 08:41AM

23
#53 - almostdvs / almostdvs

05/23/2017 at 02:26AM

23
#54 - squid / zerosquid

05/26/2017 at 11:58PM

24
#55 - Edouard Piette / EdPiette

05/19/2017 at 01:00PM

26
#56 - python-tweepy / python_tweepy

05/16/2017 at 03:55AM

29
#57 - Juho Härme / jharme

05/22/2017 at 07:39PM

39
#58 - Jared Thomas / jthomas285

05/15/2017 at 11:20PM

55
#59 - Krystle / krystle_test

05/17/2017 at 06:32AM