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):
32
#331 - William Ott / oddalot

04/07/2015 at 06:15PM

34
#332 - Zack Rosen / ZJRosen

06/04/2015 at 05:31AM

35
#333 - Samir Sadek / netsamir

07/20/2015 at 02:44PM

45
#334 - Andrew Larson / applarson

04/15/2015 at 12:50AM

49
#335 - Niru Maheswaranathan / niru_m

04/13/2016 at 05:36AM

49
#336 - Jack Mooney / jmooney7

02/26/2018 at 05:57AM

51
#337 - Jonathan Skeate / jskeate

09/15/2015 at 04:53PM