Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Leaderboard, Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 4d2061daf1a3f252f4000087

Solve the Sokoban

A wink for all Vimgolfers that play Nethack too.

Start file
-------- ------
|<|@...---....|
|^|-.00....0..|
|^||..00|.0.0.|
|^||....|.....|
|^|------0----|
|^|    |......|
|^------......|
|..^^^^0000...|
|??-----......|
----   --------
End file
-------- ------
|@|>...---....|
|.|-..........|
|.||..00|.....|
|.||....|.....|
|.|------.----|
|.|    |......|
|.------......|
|.............|
|..-----......|
----   --------

View Diff

2,10c2,10
< |<|@...---....|
< |^|-.00....0..|
< |^||..00|.0.0.|
< |^||....|.....|
< |^|------0----|
< |^|    |......|
< |^------......|
< |..^^^^0000...|
< |??-----......|
---
> |@|>...---....|
> |.|-..........|
> |.||..00|.....|
> |.||....|.....|
> |.|------.----|
> |.|    |......|
> |.------......|
> |.............|
> |..-----......|

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 51 remaining solutions by signing in and submitting your own entry
#52 Nándor Komzák / @rubymood - Score: 32 - 01/03/11 @ 00:09
:%s/[?^0]/./g<CR>2Glr@llr>4G6l2r0ZZ

0 comments

#53 Paul Tarjan / @ptarjan - Score: 32 - 01/08/11 @ 20:10
:%s/[0^?]/./g<CR>2Glr@llr>4G6l2r0ZZ

0 comments

#54 Paul King / @nrocy - Score: 32 - 01/10/11 @ 09:38
:%s/[0^?]/./g<CR>?<<CR>r@2lr>3l2j2r0ZZ

0 comments

#55 drio / @drio - Score: 32 - 01/16/11 @ 16:22
:%s/[0^?]/./g<CR>2Glr@2lr>4G6l2r0ZZ

0 comments

#56 Nomen Nescio / @vadtusan - Score: 32 - 04/14/11 @ 22:15
:%s/[0^?]/./g<CR>/<<CR>r@2lr>2j3l2r0ZZ

0 comments

#57 Dave / @zzdave13 - Score: 32 - 07/25/11 @ 14:59
jlR@|><Esc>:%s/[0^?]/./g<NL>4G4f.R00<Esc>ZZ

0 comments

#58 mightyfoo / @mightyfoo - Score: 33 - 05/26/11 @ 00:13
:%s/[^-|. ]/./g<CR>2GR|@|><C-O>2j..00<Esc>ZZ

0 comments

#59 Ryan / @devops_yeoman - Score: 33 - 09/11/12 @ 17:07
jlr@llr>:%s/[0?^]/./g<CR>:4<CR>6l2r0:x<CR>

0 comments

#60 kmymtksh / @kmymtksh - Score: 34 - 01/02/11 @ 12:10
:%s/[0^?]/./g<CR>2Glr@2lr>2j3lr0lr0ZZ

0 comments

#61 Josh Weinberg / @jcweinberg - Score: 34 - 01/02/11 @ 17:35
:%s/[0^?]/./g<CR>2Glr@2lr>2j3lr0lr0ZZ

0 comments

#62 Fer Enaf / @0x00C0FFEE - Score: 35 - 01/02/11 @ 11:38
:%s/[0^?]/./g<CR>6k6lvlc00<Esc>?@<CR>r>2hr@ZZ

0 comments

#63 Remy_D / @Remy_D - Score: 44 - 09/11/12 @ 17:16
:%s/[?0^]/./g<CR>/<<CR>r@wblllr>lljljr0lr0:wq<BS><BS><BS>ZZ

0 comments

#64 Solomon White / @rubysolo - Score: 53 - 01/03/11 @ 00:26
:%s/0/./g<CR>:%s!\^!.!g<CR>jls.<Esc>l.2Gls@<Esc>lls><Esc>jjlll2s00<Esc>:wq<CR>

0 comments

Created by: @0x00C0FFEE

64 active golfers, 139 entries

Leaderboard (lowest score wins):
25
#1 - Federico Galassi / @federicogalassi

10/02/2011 at 12:53PM

25
#2 - Conner McDaniel / @connermcd

11/29/2012 at 05:24PM

25
#3 - Zapata / @Incredible_JFP

03/21/2014 at 06:16PM

26
#4 - Urtica dioica / @udioica

12/12/2012 at 11:13AM

26
#5 - John Braxler / @braxler

08/22/2014 at 03:28PM

27
#6 - tmr / @tmr314

09/10/2012 at 02:29PM

27
#7 - Trevor Powell / @DoomedBunnies

03/20/2013 at 04:54AM

29
#8 - Kerson Hsiao / @KersonHsiao

07/24/2012 at 03:05PM

29
#9 - Matthieu Crapet / @mcr05

12/30/2014 at 09:39PM

30
#10 - dominique pellé / @vimgolfisto

01/02/2011 at 03:54PM

30
#11 - Balkoth / @_Balkoth_

01/02/2011 at 04:01PM

30
#12 - Ben Lenarts / @benlenarts

01/02/2011 at 09:56PM

30
#13 - Pete Johns / @johnsyweb

01/02/2011 at 11:44PM

30
#14 - Wei Dai / @clvv42

01/03/2011 at 12:24AM

30
#15 - derp derp / @derp__

01/06/2011 at 10:31AM

30
#16 - Ujjwol Lamichhane / @Ujjwol

01/07/2011 at 10:37AM

30
#17 - nicholas a. evans / @nick_evans

01/07/2011 at 07:27PM

30
#18 - Francisco Dibar / @frandibar

01/12/2011 at 01:45PM

30
#19 - Oleg Roshupkin / @jjjahson

01/19/2011 at 10:24AM

30
#20 - Stephen Morrow / @yawmark

01/31/2011 at 05:17PM

30
#21 - Brendan Taylor / @beect

04/26/2011 at 10:20PM

30
#22 - Dragan Cvetinovic / @kawkafi

05/22/2011 at 03:14PM

30
#23 - Jam / @jam00_bcn

06/18/2011 at 03:24PM

30
#24 - Hu Junfeng / @junfeng

07/26/2011 at 09:59AM

30
#25 - Justin Love / @wondible

08/13/2011 at 10:59PM

30
#26 - William Dunand / @wdunand

11/21/2011 at 02:16AM

30
#27 - You-Siang Lin / @yslinnctu

12/03/2011 at 12:29PM

30
#28 - Renat Aksitov / @Korvin79

02/22/2012 at 03:20AM

30
#29 - Kai Yuan / @kentyuan

05/22/2013 at 10:19PM

30
#30 - Joonas Pihlajamaa / @jokkebk

03/15/2014 at 11:28AM

31
#31 - Marian Schubert / @MarianSchubert

01/02/2011 at 02:36PM

31
#32 - Kyle Willmon / @kylewillmon

01/03/2011 at 05:53AM

31
#33 - Chris / @diracdelta

01/03/2011 at 06:03PM

31
#34 - David Pflug / @dpflug

01/09/2011 at 11:57PM

31
#35 - Thomas Schönwälder / @Masei1988

01/12/2011 at 07:16PM

31
#36 - Clive Evans / @swish_bob

01/17/2011 at 11:10PM

31
#37 - h_east (DDD ready) / @h_east

02/02/2011 at 03:35PM

31
#38 - Premium Ben / @muppling

03/13/2011 at 01:21AM

31
#39 - Jesús Espino / @jespinog

09/07/2011 at 12:26AM

31
#40 - Tara Bass / @tara_bass

12/23/2011 at 04:31PM

31
#41 - Xavier Nayrac / @lkdjiin

01/02/2012 at 10:16AM

31
#42 - 無ん垢の叫び / @john_ababa

02/24/2012 at 08:24AM

31
#43 - James / @Dronak

09/05/2013 at 08:59PM

32
#44 - Matthew Draper / @_matthewd

01/02/2011 at 12:47PM

32
#45 -  Ikhsan Maulana / @ixandidu

01/02/2011 at 12:54PM

32
#46 - Tim Chase / @gumnos

01/02/2011 at 01:03PM

32
#47 - Aurélien Delahaye / @alkove

01/02/2011 at 01:37PM

32
#48 - Mickael / @mickaelb

01/02/2011 at 01:54PM

32
#49 - Alain Gilbert / @alain_gilbert

01/02/2011 at 05:12PM

32
#50 - Peter Anselmo / @peter_anselmo

01/02/2011 at 06:35PM

32
#51 - Jordan Lewis / @JordanALewis

01/02/2011 at 08:42PM

32
#52 - Nándor Komzák / @rubymood

01/03/2011 at 12:09AM

32
#53 - Paul Tarjan / @ptarjan

01/08/2011 at 08:10PM

32
#54 - Paul King / @nrocy

01/10/2011 at 09:38AM

32
#55 - drio / @drio

01/16/2011 at 04:22PM

32
#56 - Nomen Nescio / @vadtusan

04/14/2011 at 10:15PM

32
#57 - Dave / @zzdave13

07/25/2011 at 02:59PM

33
#58 - mightyfoo / @mightyfoo

05/26/2011 at 12:13AM

33
#59 - Ryan / @devops_yeoman

09/11/2012 at 05:07PM

34
#60 - kmymtksh / @kmymtksh

01/02/2011 at 12:10PM

34
#61 - Josh Weinberg / @jcweinberg

01/02/2011 at 05:35PM

35
#62 - Fer Enaf / @0x00C0FFEE

01/02/2011 at 11:38AM

44
#63 - Remy_D / @Remy_D

09/11/2012 at 05:16PM

53
#64 - Solomon White / @rubysolo

01/03/2011 at 12:26AM