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 9v0062cda991000000000223

Fizzbuzz

type the first 100 lines of the fizzbuzz problem

Start file

End file
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
Fizzbuzz
16
17
Fizz
19
Buzz
Fizz
22
23
Fizz
Buzz
26
Fizz
28
29
Fizzbuzz
31
32
Fizz
34
Buzz
Fizz
37
38
Fizz
Buzz
41
Fizz
43
44
Fizzbuzz
46
47
Fizz
49
Buzz
Fizz
52
53
Fizz
Buzz
56
Fizz
58
59
Fizzbuzz
61
62
Fizz
64
Buzz
Fizz
67
68
Fizz
Buzz
71
Fizz
73
74
Fizzbuzz
76
77
Fizz
79
Buzz
Fizz
82
83
Fizz
Buzz
86
Fizz
88
89
Fizzbuzz
91
92
Fizz
94
Buzz
Fizz
97
98
Fizz
Buzz

View Diff

1,2c1,100
< 
< 
---
> 1
> 2
> Fizz
> 4
> Buzz
> Fizz
> 7
> 8
> Fizz
> Buzz
> 11
> Fizz
> 13
> 14
> Fizzbuzz
> 16
> 17
> Fizz
> 19
> Buzz
> Fizz
> 22
> 23
> Fizz
> Buzz
> 26
> Fizz
> 28
> 29
> Fizzbuzz
> 31
> 32
> Fizz
> 34
> Buzz
> Fizz
> 37
> 38
> Fizz
> Buzz
> 41
> Fizz
> 43
> 44
> Fizzbuzz
> 46
> 47
> Fizz
> 49
> Buzz
> Fizz
> 52
> 53
> Fizz
> Buzz
> 56
> Fizz
> 58
> 59
> Fizzbuzz
> 61
> 62
> Fizz
> 64
> Buzz
> Fizz
> 67
> 68
> Fizz
> Buzz
> 71
> Fizz
> 73
> 74
> Fizzbuzz
> 76
> 77
> Fizz
> 79
> Buzz
> Fizz
> 82
> 83
> Fizz
> Buzz
> 86
> Fizz
> 88
> 89
> Fizzbuzz
> 91
> 92
> Fizz
> 94
> Buzz
> Fizz
> 97
> 98
> Fizz
> Buzz

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 167 remaining solutions by signing in and submitting your own entry
#168 Andrei Pirvan / @PirvanAndrei - Score: 898 - 10/22/22 @ 17:32
<Down><Down><Down><Up><Up><Down><Down>:<50-53>0put=range(1,100)<CR><Esc><Esc>:<50-53>0put=range(1,100)<Esc>[201~<CR><Down><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up>GggGggGggGddddGgg<Esc>:<Up><Home><><Left>50-53<CR><Up>:<Up><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><CR><Esc>:<Up><Left><Right><Del>)<Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><BS><BS><BS><BS><BS><BS><BS><BS><Del>1<CR>Ggg:p<Up><Up><Esc><Esc><Esc><Up>:<Up><Up><Home><Right><Left><Del><CR><Left><Up><Down><Esc>:<Up><Down><Esc><Esc><Esc>ggG9gG9G9G9G9G8G)G9Ggg<Esc>gg<Esc>gggggg<Esc>.:1,$d<CR>d<BS>dd<Esc>dddd<Esc><Esc>dd<Del><BS><BS>o<BS><BS><BS><BS>dddd<BS><C-D><Esc>dddd<Esc>uuuuuuuu<Esc>:1,$d<Left><Left><Left><Left><Right><BS>2<CR><Esc>u<Up>:<Up><Left><Left><Left><BS>5<CR><Esc>:d<CR><Esc><Esc><Esc>dd<Esc>:$d<CR>dd<Up><Esc>:d<BS><0xc3><0xa5><BS>0p=range(1,19)<CR><Up><Esc>.<Up>:<Up><C-Left><Right><Right>ut<CR><Esc><Esc>:$d<CR><CR>:d<BS>$d<CR>$F.f:F:F.f:D.dD.d<Esc>:<Up><Up><Up><Up><Up><Left><Left><Left><BS>1<BS>+<BS>0<CR>:put<BS><BS><BS>0put=rane<BS>ge(10<BS>,100)<CR>/<BS>_:%s&<BS>%<BS><BS>/\()<Left>\d\{}<Left>1,3\<BS><Right>\<Right>/ <BS>\=submatch(1)&<BS>%15/g<CR>:<Up><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left>s<Right><Right><Right><Right><Right><Right><Right><Right><Right><Del>2G<BS><BS>3<BS><BS>,1<BS><BS><BS>+<BS>0m1<BS><BS>,1<BS><BS><BS>1,2<BS>3<BS><BS><BS>+<BS>+<BS>+<BS>0,1<BS><BS><BS>1,2<BS><BS><BS>1,+<BS>3<CR><Esc><Esc><Esc>:%s/\()<Left>\d<Del><BS><BS><BS><BS><0xe2><0x81><0xb0><BS>^0/Fizzbuzz<CR><Esc>:/<BS>%s/^[369)<BS>]\|12/Fizz/g<CR><Esc>:%s/5|<BS>\|1+<BS>0/Buzz/g<CR>_<Esc>_<Esc>:/<BS>%s/\d//g<CR><Esc>&<BS>%<Esc>/<BS>:/s<BS><BS>%s/    /^<C-Left><C-Left><C-Left><Left><Left><Left><Del><End>/\\<BS>=line('.')/g<CR><Esc><Esc>:%s/\(\d{1,3\}\=<BS>)\(F\<0xc2><0xb1><BS>|<0xc2><0xb1><BS>\B=<BS><BS><BS>B)<Left>\<Right>/\2/g<CR>:/<BS>%s/\(\d\{1,3\}\)\(F}<BS><0xc2><0xb1><BS>|<BS>\<0xc2><0xb1><BS>|B<BS>B<BS>B<BS>\B)<BS><BS><BS>B\)<Left><Left>U<BS>u<BS><Right><Right>/\2/g<CR><Down><Esc>d<Esc><Esc><Esc>GggGdd<Esc>:s<BS>ws<CR><Esc>:q<BS><BS>:w<BS>s<CR><Esc>:q<CR><Esc><Esc>:<Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Esc>wq<Esc>:wq<CR>

0 comments


Created by: @Marco73364768

168 active golfers, 574 entries

Leaderboard (lowest score wins):
44
#1 - Danilo J. S. Bellini 🥊🇧🇷 / @danilobellini

01/16/2025 at 12:44AM

45
#2 - wpr__ / @wpr____

04/24/2024 at 06:22PM

45
#3 - John Braxler / @braxler

05/02/2024 at 05:26PM

45
#4 - Don'tBeAlarmed / @DontBeAlarmed

06/01/2024 at 06:56PM

45
#5 - Peppa Pig / @PeppaPigSg

06/28/2024 at 07:51AM

45
#6 - got_windy / @insomnight

12/19/2024 at 07:12AM

47
#7 - Saki Gw / @Sakigw

07/14/2022 at 04:31PM

47
#8 - Jean George / @JeanGeo20504212

07/15/2022 at 12:02AM

47
#9 - Irakli Chigvaria / @tchigvaria

07/22/2022 at 06:16AM

47
#10 - Jon Krause / @jkrause314

07/24/2022 at 05:18PM

47
#11 - Александр Черенков / @AleksandrCeren3

07/25/2022 at 04:31AM

47
#12 - Leroy Jenkins / @LeroyJe70429357

09/10/2022 at 11:44PM

47
#13 - Alex Lewin / @_AlexLewin

09/19/2022 at 06:27PM

47
#14 - Topvimgolf Score / @topvimgolfscore

10/11/2022 at 06:13PM

47
#15 - fraktal / @FraktalRebirth

10/19/2022 at 08:17AM

47
#16 - Ekalos / @_Ekalos

11/27/2022 at 11:25AM

47
#17 - scpchicken / @scpchick

02/25/2023 at 05:38PM

47
#18 - erik.forex / @ErikForex

07/11/2023 at 12:11PM

47
#19 - tien / @tien40766111

10/30/2023 at 01:26PM

47
#20 - kenney / @pumpking_kiddo

12/30/2023 at 05:02AM

48
#21 - "Smylers" / @Smylers2

07/15/2022 at 12:55PM

48
#22 - vimgolf / @LearnVimGolf

09/27/2022 at 07:54AM

48
#23 - キムラ・OPEL・ユウジ / @kimurayuuji79

10/03/2022 at 09:34AM

48
#24 - bignos / @bignos2

03/24/2023 at 03:31PM

48
#25 - わーお / @lwgZVRoOQ8Nf6VG

06/03/2023 at 03:07PM

48
#26 - Golf Vim / @GolfVim11388

07/01/2023 at 05:03PM

48
#27 - moh ayaya / @AyayaMoh

08/17/2023 at 06:02PM

51
#28 - Michael / @openemitter

12/28/2023 at 10:14PM

55
#29 - 蛙爹 / @Joe53572723

02/18/2023 at 09:39AM

55
#30 - Alexander Curtis / @AlexOnCode

03/27/2023 at 09:53PM