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 4db0b1c8e8eb0f564b00001c

Case preserving word replacement

Half way through my project, my people turned into dogs. Now I have to change everything in my source.

Start file
function Human() {

}

Human.prototype = {
	humanStuff: function(){},
	doHumanStuff: function() {
		useDigitalWatch();
	}
}
End file
function Dog() {

}

Dog.prototype = {
	dogStuff: function(){},
	doDogStuff: function() {
		useDigitalWatch();
	}
}

View Diff

1c1
< function Human() {
---
> function Dog() {
5,7c5,7
< Human.prototype = {
< 	humanStuff: function(){},
< 	doHumanStuff: function() {
---
> Dog.prototype = {
> 	dogStuff: function(){},
> 	doDogStuff: function() {
10a11
> 

Solutions by @GavinKoeng:

Unlock 9 remaining solutions by signing in and submitting your own entry
Created by: @captain_morgan

186 active golfers, 477 entries

Solutions by @GavinKoeng:
19
#69 - Gavin / @GavinKoeng

07/10/2026 at 04:14AM

19
#>69 - Gavin / @GavinKoeng

07/10/2026 at 04:14AM

20
#>86 - Gavin / @GavinKoeng

07/10/2026 at 04:14AM

21
#>119 - Gavin / @GavinKoeng

07/10/2026 at 04:14AM

22
#>129 - Gavin / @GavinKoeng

07/10/2026 at 04:13AM

23
#>158 - Gavin / @GavinKoeng

07/10/2026 at 04:13AM

26
#>170 - Gavin / @GavinKoeng

07/10/2026 at 04:13AM

27
#>175 - Gavin / @GavinKoeng

07/10/2026 at 04:12AM

38
#>182 - Gavin / @GavinKoeng

07/10/2026 at 04:11AM