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

Reverse characters in a line

You have everything you need, just not in the right order. Mastermind would give you 26 white pegs.

Start file
abcdefghijklmnopqrstuvwxyz
End file
zyxwvutsrqponmlkjihgfedcba

View Diff

--- in	2010-12-28 19:41:39.000000000 -0800
+++ out	2010-12-28 19:41:59.000000000 -0800
@@ -1 +1 @@
-abcdefghijklmnopqrstuvwxyz
+zyxwvutsrqponmlkjihgfedcba

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 150 remaining solutions by signing in and submitting your own entry
#151 Adam Pohorecki / @apohorecki - Score: 21 - 12/29/10 @ 14:00
o<Esc>kqaxjPkq25@addZZ

0 comments

#152 Stephen Mann / @thanthese - Score: 21 - 12/29/10 @ 14:08
o<Esc>kqaxjPkq25@addZZ

0 comments

#153 Andrew McDonough / @andrewmcdonough - Score: 21 - 12/29/10 @ 19:18
qamm$vd`mPlq26@aZZ

0 comments

#154 pcapriotti / @pcapriotti - Score: 22 - 12/29/10 @ 12:44
xA a<Esc>qq0xwPq24@qXZZ

0 comments

#155 無ん垢の叫び / @john_ababa - Score: 22 - 05/26/12 @ 06:12
:s/./&<C-V><CR>/g|sor!<CR>27gJZZ

0 comments

#156 J.Kirchartz / @JKirchartz - Score: 22 - 07/20/13 @ 20:52
:s/./&\r/g|so<Tab>!<CR>27gJZZ

0 comments

#157 Christopher Vollick / @psycotica0 - Score: 23 - 12/29/10 @ 04:24
qwxfnp$xFmP0q11@wfmxpZZ

0 comments

#158 Ryan Elmquist / @relmquist - Score: 23 - 12/29/10 @ 08:26
mm$qax`mPlmm$q26@aZZ

0 comments

#159 Joe McCall / @joem86 - Score: 24 - 12/29/10 @ 07:54
xA <C-R>"<Esc>bqaxwPbq24@axZZ

0 comments

#160 DJ Adams / @qmacro - Score: 25 - 12/29/10 @ 18:00
c$<C-O>:set revins<CR><C-R>"<Esc>:wq<CR>

0 comments

#161 Arto Vuori / @dhpe - Score: 25 - 08/30/12 @ 21:08
A <Esc>0qaexA<Esc>p0q24@adtzAa<Esc>ZZ

0 comments

#162 glennphillips / @glennphillips - Score: 25 - 07/12/14 @ 03:17
qali<CR><Esc>q25@a:%sort!<CR>26gJZZ

0 comments

#163 Oliver Christ / @0liverChrist - Score: 26 - 10/09/13 @ 21:23
:s/\S/&\r/g|sor!|%s/\n<CR><CR>ZZ

0 comments

#164 Joe Hassick / @jhassick - Score: 27 - 12/29/10 @ 16:35
:s/./&\r/g|g/^/m0<CR>V}gJZZ

0 comments

#165 Nadja Untendiegruft / @nadjau - Score: 30 - 12/29/10 @ 10:52
Rzyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#166 Behnam Esfahbod / @zwnj - Score: 30 - 12/30/10 @ 12:51
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#167 Juan C. Muller / @juancmuller - Score: 30 - 12/31/10 @ 04:46
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#168 Nick / @quinks25 - Score: 30 - 01/13/11 @ 21:30
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#169 lionel young / @lionelyoung - Score: 31 - 12/29/10 @ 07:47
qna<CR><Esc>q24@n:sort!<CR>qjJxq24@JZZ

0 comments

#170 Guillaume Bonnoron / @gbonnoron - Score: 31 - 12/31/10 @ 11:55
cczyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#171 Dj Vimgolf / @dj_vimgolf - Score: 31 - 01/14/12 @ 18:08
c$zyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#172 drio / @drio - Score: 32 - 01/01/11 @ 01:30
cczyxwvutsrqponmlkjihgfedcba<Esc>:x<CR>

0 comments

#173 ☣Rob Mason☠ / @necr0mancer - Score: 32 - 01/18/11 @ 11:30
ddizyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#174 Paul Tarjan / @ptarjan - Score: 33 - 12/29/10 @ 11:42
Szyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#175 Ujjwol Lamichhane / @Ujjwol - Score: 33 - 12/29/10 @ 12:19
Dizyxwvutsrqponmlkjihgfedcba<Esc>:wq<CR>

0 comments

#176 jonlorusso / @jonlorusso - Score: 33 - 12/29/10 @ 15:49
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#177 Adam Bachman / @abachman - Score: 33 - 12/29/10 @ 21:47
:s/\(.\)/\1<C-V><CR>/|sor!|%s/\n/<CR><CR>ZZ

0 comments

#178 Rajit Singh / @rajitbsingh - Score: 33 - 12/29/10 @ 23:06
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#179 Lee Marlow / @lmarlow - Score: 33 - 12/29/10 @ 23:43
Czyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#180 Julien Gormotte / @gormux - Score: 33 - 12/30/10 @ 09:47
cczyxwvutsrqponmlkjihgfedcba<Esc>:wq<CR>

0 comments

#181 Chris Lerum / @ChrisLerum - Score: 34 - 12/29/10 @ 05:15
ddizyxwvutsrqponmlkjihgfedcba<Esc>:wq<CR>

0 comments

#182 Alison Rowland / @arowla - Score: 34 - 12/29/10 @ 05:59
cczyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#183 It's Me / @soidid - Score: 35 - 12/29/10 @ 05:47
Czyxwvutsrqponmlkjihgfedcba<Esc>:wq<CR>

0 comments

#184 Scott Werner / @scottwisme - Score: 35 - 12/29/10 @ 14:31
Vdizyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#185 Aleksander Balicki / @alekbalicki - Score: 36 - 12/29/10 @ 14:45
<Esc>ddizyxwvutsrqponmlkjihgfedcba<Esc>ZZ

0 comments

#186 Abhishek Mukherjee / @abhishekmukherg - Score: 40 - 12/29/10 @ 16:11
cczyxwvutsrqponmlkjihgfedcba<Esc>:wqa<BS><CR>

0 comments

#187 Ajith Antony / @ajithantony - Score: 47 - 12/29/10 @ 12:30
ddp<Esc><Up>ddddazyxwvutsrqponmlkjihgfedcba<Esc><Esc>:wq<CR>

0 comments

#188 Ricardo Mendes / @locks - Score: 194 - 12/30/10 @ 01:54
xpjhxplllllllllllllllllllllllxphhx$phhhx$phhhhx$phhhhhx$phhhhhhx$p7j7hx$p8hx$p9hx$p10hx$p11j11hx$10pup12hx$p13hx$p14hx$p15hx$p16hx$p17hx$p18hx$p19hx$p20hx$p21hx$p22hx$p23hx$p24hx$p25hx$p<Esc>:wq<CR>

0 comments

Created by: @josh_triplett

188 active golfers, 448 entries

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

11/26/2012 at 03:04PM

12
#2 - xavier kt / @xav_kt

02/04/2013 at 11:50PM

12
#3 - Adam Bell / @adamgbell

03/29/2013 at 10:01PM

12
#4 - Brent Carmer / @brent_carmer

04/08/2013 at 05:02AM

12
#5 - Marco Hinz / @_mhinz_

05/21/2013 at 02:43PM

12
#6 - John Braxler / @braxler

05/07/2014 at 12:52PM

12
#7 - Johannes H. / @neVexa

10/30/2014 at 01:08PM

13
#8 - Sailesh Mittal / @saileshmittal

01/09/2011 at 09:13AM

13
#9 - Clive Evans / @swish_bob

01/17/2011 at 11:28PM

13
#10 - Matthieu Honel / @ocus

01/28/2011 at 05:26PM

13
#11 - Tim Chase / @gumnos

06/11/2011 at 12:25AM

13
#12 - Johan Sveholm / @rymdtjuren

06/24/2011 at 04:35AM

13
#13 - Sammasati / @sammasati0

07/15/2011 at 06:11PM

13
#14 - Jim Infield / @jinfield

07/19/2011 at 02:48PM

13
#15 - Jason Then / @racc69

08/09/2011 at 04:25AM

13
#16 - Dario Cazzaro / @darioqa

09/18/2011 at 10:27PM

13
#17 - Jon Keating / @emostar

11/02/2011 at 09:26AM

13
#18 - vimja / @vimja666

11/02/2011 at 11:50PM

13
#19 - nicolas bo / @thevegeta

11/15/2011 at 03:56PM

13
#20 - William Dunand / @wdunand

12/05/2011 at 07:59AM

13
#21 - Al / @96258

12/12/2011 at 01:52PM

13
#22 - Jaime A. Sánchez / @jashbeta

12/22/2011 at 06:45AM

13
#23 - Henry Johnes / @xeosvn

01/31/2012 at 01:25PM

13
#24 - Renat Aksitov / @Korvin79

02/07/2012 at 05:05PM

13
#25 - ise0615 / @ise0615

05/13/2012 at 07:23AM

13
#26 - Rod Knowlton / @codelahoma

05/27/2012 at 02:59AM

13
#27 - Chris Brown / @engineercyb

07/13/2012 at 04:14PM

13
#28 - Kerson Hsiao / @KersonHsiao

07/23/2012 at 02:43AM

13
#29 - Reed Riley / @ReedRile

08/14/2012 at 12:27AM

13
#30 - Victor Ramirez / @virako

08/24/2012 at 03:57PM

13
#31 - vansan / @VinceVansan

08/26/2012 at 06:14PM

13
#32 - Conner McDaniel / @connermcd

09/19/2012 at 01:41AM

13
#33 - Vim rocks / @vimrocks

10/07/2012 at 01:28PM

13
#34 - Jason Wolf / @zephyr_wolf

11/08/2012 at 05:57PM

13
#35 - Drew Neil / @nelstrom

11/26/2012 at 11:51PM

13
#36 - Hubba / @HubbaBubbaFett

12/13/2012 at 09:02PM

13
#37 - joe di castro / @joe_di_castro

12/23/2012 at 08:00PM

13
#38 - Alec Goebel / @zego5360

01/07/2013 at 02:32AM

13
#39 - a24f0600 / @a24f0600

01/08/2013 at 03:41PM

13
#40 - Tyler / @tylerbindon

03/31/2013 at 08:22PM

13
#41 - Petro Тrouq / @zulolosi

07/20/2013 at 11:45AM

13
#42 - brett / @brettyukich

09/24/2013 at 09:06AM

13
#43 - cj / @cj01101

01/30/2014 at 08:56PM

13
#44 - God / @iamgod

03/31/2014 at 09:52AM

13
#45 - Frank Dinoff / @FDinoff

04/03/2014 at 08:03PM

13
#46 - Kai Yuan / @kentyuan

04/03/2014 at 08:05PM

13
#47 - D / @justcallmedrago

04/04/2014 at 09:22PM

13
#48 - Mattias Fransson / @azzidoos

09/08/2014 at 04:08PM

13
#49 - E Both / @enboth

04/09/2015 at 09:43PM

13
#50 - pftb12345 / @pftb12345

04/15/2015 at 05:59AM

14
#51 - Henrik Nyh / @henrik

12/29/2010 at 05:40PM

14
#52 - Thedward the Edward / @thedward

01/01/2011 at 07:14AM

14
#53 - Israel Chauca F. / @Raimondi

01/01/2011 at 09:57PM

14
#54 - Hu Junfeng / @junfeng

07/17/2011 at 10:08AM

14
#55 - Woojung Kim 김우중 / @_kimwz

07/17/2013 at 03:33AM

14
#56 - amodo / @siskin

07/29/2013 at 09:14PM

14
#57 - Steve Tjoa / @stevetjoa

08/09/2013 at 02:39AM

14
#58 - Jonathan Kim / @jonnykim

08/27/2013 at 06:58PM

14
#59 - Dario Avitabile / @tutticapaci

09/01/2014 at 10:36AM

14
#60 - TheProgrammer971 / @tp971

03/14/2015 at 11:06PM

15
#61 - Andrew Scala / @agscala

12/29/2010 at 06:09AM

15
#62 - Ben C / @cben

12/29/2010 at 07:15AM

15
#63 - foo bar / @whoever_foo

12/29/2010 at 07:25AM

15
#64 - johnny / @johnnychm

12/29/2010 at 01:11PM

15
#65 - Mikel Ward / @mikelward

12/30/2010 at 12:52PM

15
#66 - Akira Matsuda / @a_matsuda

12/30/2010 at 04:17PM

15
#67 -  Ikhsan Maulana / @ixandidu

12/30/2010 at 06:07PM

15
#68 - Douglas Stockwell / @dstockwell

12/30/2010 at 09:04PM

15
#69 - Alain Gilbert / @alain_gilbert

12/31/2010 at 09:35PM

15
#70 - larsd / @larsd

12/31/2010 at 09:43PM

15
#71 - Asmund Liseth / @Asmund_L

01/02/2011 at 07:17AM

15
#72 - David Lam / @lamdk

01/02/2011 at 09:14AM

15
#73 - Stuart Gale / @bishboria

01/02/2011 at 07:41PM

15
#74 - Dan Smith / @untermrad

01/03/2011 at 07:16AM

15
#75 - Kyle Willmon / @kylewillmon

01/03/2011 at 05:22PM

15
#76 - Ravil Bayramgalin / @brainopia

01/08/2011 at 10:47PM

15
#77 - Andrey A. Ugolnik / @andreyugolnik

01/19/2011 at 06:33PM

15
#78 - ImABigWookie / @imabigwookie

01/31/2011 at 05:03AM

15
#79 - RolfK / @mindleftbody

06/17/2011 at 01:15PM

15
#80 - Andrey Ivanov / @Bytamine

08/10/2011 at 09:19AM

15
#81 - Trevor Powell / @DoomedBunnies

11/29/2011 at 05:19AM

15
#82 - fred6 / @_fred6

12/19/2011 at 04:30AM

15
#83 - Nolen Royalty / @NolenRoyalty

04/21/2012 at 02:46AM

15
#84 - Taylor Rose / @trose89

07/13/2012 at 10:18PM

15
#85 - Charles Gordon / @liberalbias

08/26/2012 at 12:29AM

15
#86 - tmr / @tmr314

09/05/2012 at 05:34PM

15
#87 - Darcy Parker / @DarcyParker

11/12/2012 at 04:03PM

15
#88 - JonLz / @LzJon

12/26/2012 at 08:09PM

15
#89 - Yann Moisan / @YannMoisan

02/02/2013 at 03:13PM

15
#90 - gnobbles / @gnobbles

03/30/2013 at 11:28PM

15
#91 - wushexu / @wushexu

05/24/2013 at 09:19AM

15
#92 - Thameera‏ Senanayaka / @thameera

10/04/2013 at 03:37PM

15
#93 - Sam Burk / @smwbk

12/21/2013 at 11:38PM

15
#94 - Joonas Pihlajamaa / @jokkebk

02/21/2014 at 07:23AM

15
#95 - r. / @rmarvie

12/20/2014 at 10:27PM

15
#96 - Adrien Fabre / @statox42

05/12/2015 at 11:14PM

15
#97 - Skúli Jóhannsson / @skulibj

06/28/2015 at 08:27PM

16
#98 - Fictorial / @fictorial

12/29/2010 at 05:48AM

16
#99 - Matthew Draper / @_matthewd

01/01/2011 at 05:52AM

16
#100 - n / @kivran

01/01/2011 at 06:42PM

16
#101 - Eivind Jahren / @HaskellElephant

01/19/2011 at 03:27PM

16
#102 - Jyun-Fan Tsai / @fakecolor

02/11/2012 at 02:40AM

16
#103 - Daniel Lundin / @danielundin

06/18/2012 at 02:42PM

16
#104 - James / @Dronak

09/03/2013 at 03:04AM

16
#105 - NuM / @NuM314

10/06/2013 at 12:27AM

16
#106 - Greg Hues / @ghues

03/26/2014 at 11:39PM

17
#107 - Tom Adams / @holizz

12/29/2010 at 05:17AM

17
#108 - Jeremy Johnstone / @jsjohnst

12/29/2010 at 12:53PM

17
#109 - Kashyap Paidimarri / @kashyapp

12/29/2010 at 04:28PM

17
#110 - Andy Goldstein / @andygoldstein

12/29/2010 at 09:46PM

17
#111 - Josh Weinberg / @jcweinberg

12/29/2010 at 10:43PM

17
#112 - Mike Plotz / @antisuji

12/29/2010 at 11:24PM

17
#113 - Przemysław Pawełczyk / @przemoc86

12/30/2010 at 09:43PM

17
#114 - Dave / @zzdave13

07/15/2011 at 05:22PM

17
#115 - うえっち / @uh_tomo

12/05/2012 at 07:00AM

17
#116 - pikaren / @REALpikaren

01/21/2014 at 04:43AM

17
#117 - Clark DuVall / @theclarkatron

05/19/2015 at 07:12AM

18
#118 - Clint Tseng / @cxlt

12/29/2010 at 05:42AM

18
#119 - Wei Dai / @clvv42

12/29/2010 at 09:41AM

18
#120 - NomadCoder / @nomadcoder

12/29/2010 at 01:27PM

18
#121 - Paul King / @nrocy

12/29/2010 at 07:52PM

18
#122 - nooodl / @nooodl

12/30/2010 at 11:00AM

18
#123 - Kris Jenkins / @krisajenkins

12/30/2010 at 01:34PM

18
#124 - Pete O'Grady / @peteog

01/04/2011 at 11:33AM

18
#125 - Olivier Verdier / @OlivierVerdier

01/04/2011 at 06:31PM

18
#126 - Wonha Ryu / @beingryu

01/11/2011 at 06:35AM

18
#127 - Oleg Roshupkin / @jjjahson

01/18/2011 at 01:49PM

18
#128 - Rob Ciaccio / @RobertoCalavera

01/21/2011 at 01:26PM

18
#129 - vg / @vimgolfer

02/26/2011 at 12:45PM

18
#130 - Derrick Spell / @dcsesq

09/28/2011 at 05:26AM

18
#131 - Nick Bakkegaard / @Bakkemand

11/26/2012 at 11:33PM

18
#132 - Matt Adelman / @Xavierstein

03/20/2013 at 01:11PM

18
#133 - Charlene Tshos / @charlymul

04/19/2013 at 02:40PM

18
#134 - Aaron Josephs / @aaronjosephs1

05/02/2013 at 02:08AM

18
#135 - A. N. / @arez42

10/24/2013 at 03:59PM

18
#136 - Caek / @Caek_

07/29/2014 at 05:18AM

19
#137 - senokay / @senokay

12/29/2010 at 06:31AM

19
#138 - mightyfoo / @mightyfoo

05/26/2011 at 01:36AM

19
#139 - Ram Tamtam / @ramtamtamtam

07/02/2014 at 11:43AM

20
#140 - heydiplo / @heydiplo

12/29/2010 at 12:53PM

20
#141 - Hendrik Nigul / @nigulh

12/29/2010 at 01:26PM

20
#142 - Ian McCracken / @iancmcc

12/30/2010 at 02:08AM

20
#143 - Adrian Silva / @scyldinga

01/13/2011 at 02:37PM

20
#144 - Fakerabe Ninanotape / @FakerabeNinanot

09/25/2011 at 09:07AM

20
#145 - Gerred Dillon / @justicefries

11/16/2011 at 07:30AM

20
#146 - William Ott / @oddalot

04/14/2015 at 04:17PM

21
#147 - Christopher Suter / @cgs1019

12/29/2010 at 04:01AM

21
#148 - Naveed Massjouni / @ironcamel

12/29/2010 at 05:30AM

21
#149 - Perry Zheng / @PerryZheng

12/29/2010 at 06:38AM

21
#150 - Gordon McCreight / @gmccreight

12/29/2010 at 07:12AM

21
#151 - Adam Pohorecki / @apohorecki

12/29/2010 at 02:00PM

21
#152 - Stephen Mann / @thanthese

12/29/2010 at 02:08PM

21
#153 - Andrew McDonough / @andrewmcdonough

12/29/2010 at 07:18PM

22
#154 - pcapriotti / @pcapriotti

12/29/2010 at 12:44PM

22
#155 - 無ん垢の叫び / @john_ababa

05/26/2012 at 06:12AM

22
#156 - J.Kirchartz / @JKirchartz

07/20/2013 at 08:52PM

23
#157 - Christopher Vollick / @psycotica0

12/29/2010 at 04:24AM

23
#158 - Ryan Elmquist / @relmquist

12/29/2010 at 08:26AM

24
#159 - Joe McCall / @joem86

12/29/2010 at 07:54AM

25
#160 - DJ Adams / @qmacro

12/29/2010 at 06:00PM

25
#161 - Arto Vuori / @dhpe

08/30/2012 at 09:08PM

25
#162 - glennphillips / @glennphillips

07/12/2014 at 03:17AM

26
#163 - Oliver Christ / @0liverChrist

10/09/2013 at 09:23PM

27
#164 - Joe Hassick / @jhassick

12/29/2010 at 04:35PM

30
#165 - Nadja Untendiegruft / @nadjau

12/29/2010 at 10:52AM

30
#166 - Behnam Esfahbod / @zwnj

12/30/2010 at 12:51PM

30
#167 - Juan C. Muller / @juancmuller

12/31/2010 at 04:46AM

30
#168 - Nick / @quinks25

01/13/2011 at 09:30PM

31
#169 - lionel young / @lionelyoung

12/29/2010 at 07:47AM

31
#170 - Guillaume Bonnoron / @gbonnoron

12/31/2010 at 11:55AM

31
#171 - Dj Vimgolf / @dj_vimgolf

01/14/2012 at 06:08PM

32
#172 - drio / @drio

01/01/2011 at 01:30AM

32
#173 - ☣Rob Mason☠ / @necr0mancer

01/18/2011 at 11:30AM

33
#174 - Paul Tarjan / @ptarjan

12/29/2010 at 11:42AM

33
#175 - Ujjwol Lamichhane / @Ujjwol

12/29/2010 at 12:19PM

33
#176 - jonlorusso / @jonlorusso

12/29/2010 at 03:49PM

33
#177 - Adam Bachman / @abachman

12/29/2010 at 09:47PM

33
#178 - Rajit Singh / @rajitbsingh

12/29/2010 at 11:06PM

33
#179 - Lee Marlow / @lmarlow

12/29/2010 at 11:43PM

33
#180 - Julien Gormotte / @gormux

12/30/2010 at 09:47AM

34
#181 - Chris Lerum / @ChrisLerum

12/29/2010 at 05:15AM

34
#182 - Alison Rowland / @arowla

12/29/2010 at 05:59AM

35
#183 - It's Me / @soidid

12/29/2010 at 05:47AM

35
#184 - Scott Werner / @scottwisme

12/29/2010 at 02:31PM

36
#185 - Aleksander Balicki / @alekbalicki

12/29/2010 at 02:45PM

40
#186 - Abhishek Mukherjee / @abhishekmukherg

12/29/2010 at 04:11PM

47
#187 - Ajith Antony / @ajithantony

12/29/2010 at 12:30PM

194
#188 - Ricardo Mendes / @locks

12/30/2010 at 01:54AM