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):
15
#61 - Stephen Aument / saument

09/04/2016 at 01:01AM

15
#62 - loki2441 / loki2441

09/10/2016 at 10:06PM

15
#63 - Constantine / ConstantineHatz

09/26/2016 at 08:06PM

15
#64 - Anthony Ardito / aardito21

09/27/2016 at 10:06PM

15
#65 - Nico / _Nico_Caro

10/01/2016 at 11:37PM

15
#66 - trx / trxdbg

10/13/2016 at 06:17AM

15
#67 - Douglas Roper / dougdroper

12/20/2016 at 05:13PM

15
#68 - sijinyuan / sijinyuan

02/22/2017 at 01:46AM

15
#69 - Ilya Shakirov / aelaau

03/22/2017 at 09:55AM

15
#70 - Brian Hall / _bruab_

04/05/2017 at 04:16AM

15
#71 - Alex Linden / alexwlinden1

04/24/2017 at 03:38PM

15
#72 - 梧桐王子 / WutongYujie

04/30/2017 at 09:46AM

15
#73 - Remus Dalrymple / bornintheflames

05/05/2017 at 10:48PM

15
#74 - Melvin Cheung / MelvinCheung

05/23/2017 at 04:49PM

15
#75 - Bennett Bernardoni / BBernardoni

06/28/2017 at 10:43PM

15
#76 - Etai Nativ / enativ72

07/02/2017 at 06:33AM

15
#77 - Frank Malone / FrankMa00268686

08/27/2017 at 09:40PM

15
#78 - Benoit Mortgat / Benoit_Mortgat

11/14/2017 at 01:57PM

15
#79 - BarbaJol / drpproteus

01/06/2018 at 12:01PM

15
#80 - Dominic Z / thammaaa

01/25/2018 at 04:51PM

15
#81 - ParasamGateZero / ParasamGateZero

02/05/2018 at 10:59AM

15
#82 - Arijus / argshook

02/09/2018 at 10:07AM

15
#83 - vimthrowaway / vimgolf_throw

03/31/2018 at 02:18PM

15
#84 - DHM / DHM29978992

04/15/2018 at 04:34AM

15
#85 - Aunt Jovie / auntjovie

05/14/2018 at 05:19PM

15
#86 - towc / MateiCopot

05/25/2018 at 06:00PM

16
#87 - Clark DuVall / theclarkatron

05/30/2015 at 06:57AM

16
#88 - Rob Ert / robrunner888

05/10/2016 at 07:19AM

16
#89 - GreenPinguin / GreenPinguin2

03/16/2018 at 12:28PM

17
#90 - Petro Тrouq / zulolosi

02/14/2015 at 07:56PM