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 56421fb1603ec626ec000003

Angular naming conventions

In angular, a directive name follows the camelCase convention. When the directive is used in an HTML template, the words are instead separated by a dash. Go from to the other the fastest!

Start file
Before I don't care greatDanesAreMyFriends After I don't care either
End file
Before I don't care great-danes-are-my-friends After I don't care either

View Diff

1c1
< Before I don't care greatDanesAreMyFriends After I don't care either
---
> Before I don't care great-danes-are-my-friends After I don't care either

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 116 remaining solutions by signing in and submitting your own entry
#117 William Ott / @oddalot - Score: 41 - 11/19/15 @ 05:36
:%s/\(\S)<BS>\)\([A-Z}<BS>]\)/\1-\L\2/g<CR>:q<CR>:wq<CR>

0 comments


#118 lonerr / @LonerrOleg - Score: 41 - 11/22/15 @ 00:48
WWWW<Right><Right><Right><Right><Right>qq~<Left>i-<Esc>q<Right><Right><Right><Right><Right><Right>@q<Right><Right><Right><Right><Right><Left>@q<Right><Right><Right>@q:x<CR>

0 comments


Created by: @raxcoi

118 active golfers, 320 entries

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

11/10/2015 at 05:01PM

18
#2 - John Braxler / @braxler

11/10/2015 at 05:35PM

18
#3 - Quota / @Quotad

11/11/2015 at 09:41AM

18
#4 - Árpád Krejczinger / @krarpi

11/11/2015 at 12:26PM

18
#5 - Peter / @sunirbmag

11/11/2015 at 09:05PM

18
#6 - Dane Summers / @dsummersl

11/11/2015 at 09:29PM

18
#7 - Jonathan Lao-Kan / @JonLaokan

11/12/2015 at 08:48PM

18
#8 - Curt Matz / @sitrucz

11/12/2015 at 11:18PM

18
#9 - Robert Perce / @robertperce

11/13/2015 at 06:01AM

18
#10 - かんじ / @CENT_SIGMA

11/13/2015 at 07:57AM

18
#11 - "Smylers" / @Smylers2

11/13/2015 at 03:04PM

18
#12 - Petro Тrouq / @zulolosi

11/14/2015 at 09:28PM

18
#13 - herbage / @herbage2

11/16/2015 at 12:21PM

18
#14 - Ryuichiro / @ryuichiro44

11/19/2015 at 03:40PM

18
#15 - Valery / @MrComBin

11/20/2015 at 12:20PM

18
#16 - AD / @Lievr0

11/21/2015 at 04:27AM

18
#17 - chris nojima / @chrisnojima

11/23/2015 at 12:47AM

18
#18 - Faat / @i_faat

11/24/2015 at 12:54PM

18
#19 - Kaue Silveira / @kssilveira

11/26/2015 at 12:16AM

18
#20 - Casey Pearring / @StandardBias

11/27/2015 at 08:45PM

18
#21 - kleiduif / @bertwinwubs

11/29/2015 at 01:44AM

18
#22 - Matthew Desjardins / @Desjardins_M

12/11/2015 at 09:03PM

18
#23 - Jan Path / @jan_path

12/17/2015 at 10:48PM

18
#24 - DrHobo / @_DrHobo_

01/04/2016 at 06:06PM

18
#25 - Saki Gw / @Sakigw

01/06/2016 at 06:06PM

18
#26 - jackliusr / @jackliusr

01/09/2016 at 03:58PM

18
#27 - Roberto Carraretto / @robcarraretto

01/09/2016 at 10:35PM

18
#28 - Aleksey Zhidkov / @AlexeyZhidkov

01/21/2016 at 01:02PM

18
#29 - Austin Wood / @indiesquidge

01/22/2016 at 05:58PM

18
#30 - Ian Trophy / @prfrgg

01/30/2016 at 01:04PM