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 54df95a4a4b28331e9000003

Space out the alphabet

Put 3 spaces between adjacent letters.

Start file
abcde
fghij
klmno
pqrst
uvwxyz
End file
a   b   c   d   e
f   g   h   i   j
k   l   m   n   o
p   q   r   s   t
u   v   w   x   y   z

View Diff

Why 3? Why spaces?

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 269 remaining solutions by signing in and submitting your own entry
#270 matthieu le grix / mlegrix - Score: 23 - 04/07/15 @ 21:23
qaa   <Esc>l.l.l.j0q4@al.ZZ

0 comments


#271 Michael Cramer / mlcramer - Score: 23 - 04/11/15 @ 12:09
:%s/\w\ze[^$]/&   /g<CR>ZZ

0 comments


#272 Chad / __chad__ - Score: 23 - 04/15/15 @ 20:22
qqa   <Esc>l.l.l.j0q4@ql.ZZ

0 comments


#273 David Rogers / al_the_x - Score: 23 - 05/28/15 @ 03:31
:%s/./   &/g<CR>:%s/^ *<CR>ZZ

0 comments


#274 Joel Gallant / joelg236 - Score: 23 - 06/05/15 @ 00:34
qaa   <Esc>l.l.l.j0q4@al.ZZ

0 comments


#275 lumi / lumi_woking - Score: 23 - 06/19/15 @ 21:14
qq<Esc>3a <Esc>l.l.l.j0q4@ql.ZZ

0 comments


#276 Mikołaj Morzy / MikolajMorzy - Score: 23 - 06/21/15 @ 09:26
:%s/\w\ze[^$]/&   /g<CR>ZZ

0 comments


#277 aisapatino / aisapatino - Score: 23 - 08/02/15 @ 03:53
<C-V>GA   <Esc>w.w.w.wG$i   <Esc>ZZ

0 comments


#278 Дима Давыдов / xaykot - Score: 23 - 08/14/15 @ 21:44
:%s/\.*/&   /g<CR>h<C-V>ggBdZZ

0 comments


#279 Rene Tianco / murlockslol - Score: 23 - 10/29/15 @ 05:07
:%s/\.*/&   /g<CR>h<C-V>ggBdZZ

0 comments


#280 Get Sharp / get_Sh4rp - Score: 23 - 11/15/15 @ 06:15
:%s/\.*/&   /g<CR>h<C-V>ggBdZZ

0 comments


#281 Roberto Carraretto / robcarraretto - Score: 23 - 01/23/16 @ 00:23
:%s/\.*/&   /g<CR>h<C-V>ggBdZZ

0 comments


#282 Etienne Tremel / etiennetremel - Score: 23 - 02/07/16 @ 11:09
qqa   <Esc>w.w.w.j^q4@qw.ZZ

0 comments


#283 Dinesh Bhosale / MrDineshBhosale - Score: 23 - 04/01/16 @ 13:27
qqa   <Esc>l.l.l.j0q4@ql.ZZ

0 comments


#284 André Peric Tavares / AndrePeric - Score: 23 - 07/24/16 @ 16:03
:%s/./   &/g<CR>:%s/^ *<CR>ZZ

0 comments


#285 Dan Prince / danj_prince - Score: 23 - 02/25/17 @ 02:30
:%s/\.*/&   /g<CR>h<C-V>ggBdZZ

0 comments


#286 Mitchell / Spitchell - Score: 23 - 03/16/17 @ 00:07
:%s/\a\zs\ze\a/   /g<CR>ZZ

0 comments


#287 Felipe Apostol / flipjsio - Score: 23 - 10/08/17 @ 18:55
qqa   <Esc>l.l.l.j0q4@ql.ZZ

0 comments


#288 Simon Cheng / bambooraccoon - Score: 23 - 01/26/18 @ 18:41
:%s/\W*/\ \ \ /g<CR>h<C-V>(xZZ

0 comments


#289 brobostigon / colonel_korn - Score: 24 - 02/17/15 @ 00:12
lqa<C-V>4j3I <Esc>4lq3@a4j3a <Esc>ZZ

0 comments


#290 Michael Gerdes / mgerdes11 - Score: 24 - 03/02/15 @ 20:06
:%s/[^ejotz]/\0   /ge<CR>ZZ

0 comments


#291 Daniel Byron / dansolo17 - Score: 24 - 04/17/15 @ 06:44
<C-V>4jA   <Esc>w.w.w.G$i   <Esc>:x<CR>

0 comments


#292 m a c s f / macsf - Score: 24 - 05/07/15 @ 14:23
:%s/.\($\)\@!/\0   /g<CR>ZZ

0 comments


#293 Jason Schulz / uxcn_ - Score: 24 - 07/27/15 @ 02:21
qqli   <Esc>lqu:%norm 5@q<CR>ZZ

0 comments


#294 thlix / thlix - Score: 24 - 01/10/16 @ 22:43
qq<C-V>5jA   <Esc>4lq4@q<C-V>hh3jxZZ

0 comments


#295 Janine Cheng / janineist - Score: 24 - 02/12/16 @ 17:30
qqli   <Esc>lqu:%norm 5@q<CR>ZZ

0 comments


#296 ค×ɛเ / pwnedary - Score: 24 - 03/02/16 @ 18:14
:%s/./&   /g|%s/ *$//|x<CR>

0 comments


#297 Dan Madden / guthran - Score: 24 - 07/20/16 @ 19:14
qql<C-V>5jI   <Esc>wq3@qG$3i <Esc>ZZ

0 comments


#298 Thomas Brisbout / le_briz - Score: 25 - 02/17/15 @ 14:28
qqa   <Esc>l.l.l.j0q4@ql.:wq<CR>

0 comments


#299 Krzysztof / Krzysztof2K - Score: 25 - 03/24/15 @ 20:32
:%s/./&   /g<CR>:%s/ *$//|x<CR>

0 comments


#300 chvzvhn / chvzvhn - Score: 25 - 04/26/15 @ 03:29
:%s/\a/   &/g<CR>gghhh<C-V>GhxZZ

0 comments


#301 Rob Wise / RobAWise - Score: 25 - 06/01/15 @ 23:44
<C-V>5jA   <Esc>w.w.w.GG#$i   <Esc>ZZ

0 comments


#302 Anshu Avinash / anshu_avinash - Score: 25 - 10/18/15 @ 09:41
:%s/./&   /g<CR>:%s/\s\+$<CR>ZZ

0 comments


#303 udreki / udreki - Score: 25 - 02/05/16 @ 20:35
qqa   <Esc>l.l.l.<Esc>j^q4@ql.:x<CR>

0 comments


#304 ghajkl vbehj / cpktnwt311 - Score: 25 - 04/29/16 @ 07:58
qqa   <Esc>lquqa04@qjq4@a@qZZ

0 comments


#305 some call me mattp / mattpep - Score: 25 - 05/09/16 @ 22:49
qq3a <Esc>l.l.l.wwq4@qi   <Esc>ZZ

0 comments


#306 David Gustavsson / mrGustaphe - Score: 25 - 06/16/17 @ 20:36
:%s/\W*/   /g<CR>h<C-V>gg^hhhdZZ

0 comments


#307 grigouille / grigouille2 - Score: 25 - 07/08/17 @ 20:04
qql<C-V>5jI   <Esc>wq3@qG$i   <Esc>ZZ

0 comments


#308 Guillaume / WeshGuillaume - Score: 25 - 08/23/17 @ 14:25
<Esc><Esc><Esc>:%s:[^ejotz]:&   :g<CR>ZZ

0 comments


#309 Veljko Dimic / v2dimic - Score: 25 - 02/07/18 @ 21:11
qq<C-V>4jA   <Esc>wq3@q$G$i   <Esc>ZZ

0 comments


#310 ryo_n / ryo_n - Score: 26 - 04/04/15 @ 10:02
:%s/./&   /g<CR>:%s/ *$//g<CR>ZZ

0 comments


#311 Agostino Hernandez / vimagostino - Score: 26 - 07/08/15 @ 17:21
lqq<C-V>4jI   <Esc>wlq3@q4ja   <Esc>ZZ

0 comments


#312 Durga Swaroop Perla / durgaswaroop - Score: 26 - 02/04/16 @ 08:32
qql3i <Esc>ll.ll.ll.+q4@qll.ZZ

0 comments


#313 wall2flower / wall2flower - Score: 26 - 06/06/16 @ 06:06
qwa   <Esc>w.w.w.wwq4@wi   <Esc>ZZ

0 comments


#314 Paul Inc / hiniol1982 - Score: 26 - 09/17/17 @ 17:00
:%s/[a-z]/   \0/g<CR>h<C-V>gg0dZZ

0 comments


#315 Florian Kluck / KluckF - Score: 26 - 12/02/17 @ 10:33
qq3a <Esc>lq3@qqwj04@qq3@w@qZZ

0 comments


#316 d1uckym d1uckym / d1uckym - Score: 27 - 02/14/15 @ 21:35
:%s/./&   /g<CR>:%s/   $//g<CR>ZZ

zulolosi: Lookahead, 24 keystrokes, only one s -> :%s/.\(\n\)\@!/& /g<CR>ZZ

1 comment


#317 David Orr / dorr91 - Score: 27 - 03/23/15 @ 18:25
l<C-V>GlI   <Esc>wl.wl.wl.G$i   <Esc>ZZ

0 comments


#318 Adrien Fabre / statox42 - Score: 27 - 05/06/15 @ 20:50
:%s;.;&   ;g<CR>$xxxk<C-V>hhkkkdZZ

0 comments


#319 Andrew Michaud / andrewjmichaud - Score: 27 - 09/04/15 @ 01:02
qaa   <Esc>l.l.l.j^q4@ala   <Esc>ZZ

0 comments


#320 John Clara / johnanthclara - Score: 27 - 08/08/16 @ 20:17
qqa   <Esc>lq3@Qqwj04@Qq3@W@QZZ

0 comments


#321 Arturo Volpe / CochoVolpe - Score: 28 - 02/23/15 @ 22:36
:%s/./\0   /g<CR>:%norm $xxx<CR>ZZ

0 comments


#322 louis sherren / louis_sherren - Score: 28 - 02/27/15 @ 08:53
:%s/./\0   /g<CR>:%s/   $//g<CR>ZZ

0 comments


#323 ಸುಬ್ರಹ್ಮಣ್ಯ ಜೋಶಿ / subbucoding - Score: 28 - 03/28/15 @ 12:54
:%s:\([^afkpu]\):   \1:g<CR>:x<CR>

0 comments


#324 dest royer / ddddestroyerrrr - Score: 28 - 05/04/15 @ 02:26
:%s/\S/\0   /g<CR>:%s/   $//<CR>ZZ

0 comments


#325 ORchard test / BilboBrovall - Score: 28 - 09/22/15 @ 18:00
qq3a <Esc>w@qq@qggqw$xxxj@wq@wZZ

0 comments


#326 Pratik Prasad / pratik - Score: 28 - 05/23/17 @ 13:54
:%s/./&   /g<CR>A<BS><BS><BS><Esc>k.k.k.k.ZZ

0 comments


#327 Ilker Mutlu / ilkermutlu - Score: 29 - 04/01/15 @ 14:43
<C-V>GA   <Esc><Esc>fb.fc.fd.:5<CR>fya   <Esc>ZZ

0 comments


#328 steron / steron23 - Score: 29 - 04/01/15 @ 19:02
qqa   <Esc>wq3@qqwj04@qq@w@w@w.ZZ

0 comments


#329 F-R Vuillemin / frvuillemin - Score: 29 - 09/28/17 @ 15:37
qqa   <Esc>lq3uhqa4@q<CR>q4@aa   <Esc>ZZ

0 comments


#330 Gowtham Madhava / gowthamgowtham - Score: 30 - 03/03/15 @ 17:25
:%s/\v(\w)(\w)/\1   \2/g<CR>:<Up><CR>ZZ

0 comments


#331 William Ott / oddalot - Score: 32 - 04/07/15 @ 18:15
:%s/\(.\)/\1   /g<CR>:%s/\s\+$//<CR>ZZ

0 comments


#332 Zack Rosen / ZJRosen - Score: 34 - 06/04/15 @ 05:31
qqa   <Esc>lq3@qj04@qj04@qj04@qj05@qZZ

0 comments


#333 Samir Sadek / netsamir - Score: 35 - 07/20/15 @ 14:44
:%S<BS>s/[a-df-j<BS>ik-np-su-y]/&   /g<CR>ZZ

0 comments


#334 Andrew Larson / applarson - Score: 45 - 04/15/15 @ 00:50
:%S<BS>s/./\0   /cg<CR>yyyynyyyynyyyynyyyynyyyyynZZ

0 comments


#335 Niru Maheswaranathan / niru_m - Score: 49 - 04/13/16 @ 05:36
qqa   <Esc>wq25@qdFbdblhlrzkdBkjrtk$bldwkldwkldw;:wq<CR>

0 comments


#336 Jack Mooney / jmooney7 - Score: 49 - 02/26/18 @ 05:57
a   <Esc>ww.ww.ww.ww.fzh.bbl<C-V>llkkkkylllplllplllp<Esc>:wq<CR>

0 comments


#337 Jonathan Skeate / jskeate - Score: 51 - 09/15/15 @ 16:53
a   <Esc>w.w.w.ww.w.w.w.ww.w.w.w.ww.w.w.w.ww.w.w.w.w.ZZ

0 comments


Created by: udioica

337 active golfers, 1160 entries

Leaderboard (lowest score wins):
22
#241 - Mickael Le Gal / mickaellegal

03/23/2015 at 03:08PM

22
#242 - simonced / simonced

04/16/2015 at 04:01AM

22
#243 - Alex J Iadicicco / ajiadicicco

04/22/2015 at 01:18AM

22
#244 - Victor Haffreingue / nobe_4

05/06/2015 at 08:36PM

22
#245 - Henrik Lindgren / HeLi8one

05/25/2015 at 09:46PM

22
#246 - Sir Chauffeur / sebdul

06/01/2015 at 07:27PM

22
#247 - Teemu Okkonen / TeemuOkkonen

07/08/2015 at 04:21PM

22
#248 - Daniel Beck / daniel_beck_il

08/05/2015 at 05:16PM

22
#249 - Abdou Belghalem / abelghalem

10/01/2015 at 11:07AM

22
#250 - Lukas Froehlich / humpingcats

04/28/2016 at 07:53AM

22
#251 - Jason Pleau / JasonPleau

05/06/2016 at 02:11AM

22
#252 - Andres Araya / arayaandresfco

05/17/2016 at 02:07PM

22
#253 - Michal Sylwester / msylw

05/26/2016 at 02:58AM

22
#254 - Tom / CronutFacts

06/07/2016 at 01:40AM

22
#255 - Ryan van Rensburg / rdvr001

07/21/2016 at 10:55AM

22
#256 - karcaw / karcaw

09/14/2016 at 05:07AM

22
#257 - Zdravko Colic / virtual_key

09/14/2016 at 09:25AM

22
#258 - John Barbero Unenge / JBarberU

10/19/2016 at 01:23PM

22
#259 - jn / j1357924

10/19/2016 at 07:28PM

22
#260 - Michał Dytko / DytkoM

12/21/2016 at 11:28AM

22
#261 - Hans Yelek / hans_yelek

01/12/2017 at 12:59AM

22
#262 - Alexander Gryson / agryson

05/02/2017 at 05:14AM

22
#263 - Edouard Piette / EdPiette

05/11/2017 at 02:54PM

22
#264 - Turkey Man / lvturkeyman

11/09/2017 at 05:03AM

23
#265 - James Pringle / mathbyjames

02/16/2015 at 05:36PM

23
#266 - Dmitry Zudochkin / vredniy

02/17/2015 at 07:26PM

23
#267 - Jordan Eldredge / captbaritone

03/07/2015 at 05:28AM

23
#268 - Deepak Surti / dmsurti

03/13/2015 at 03:47PM

23
#269 - Alice Benign / AliceBenign

03/29/2015 at 01:18PM

23
#270 - matthieu le grix / mlegrix

04/07/2015 at 09:23PM