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

Replace markdown sections with numbering

Replace each section and subsection with their respective numbers

Start file
# Main Topics
## History
## Science
## Literature
## Mathematics
## Philosophy
## Psychology
# Additional Resources
# Community Guidelines
## Rules
## Moderation
## Code of Conduct
# Get Started
## Quick Tutorial
## FAQ
End file
1 Main Topics
1.1 History
1.2 Science
1.3 Literature
1.4 Mathematics
1.5 Philosophy
1.6 Psychology
2 Additional Resources
3 Community Guidelines
3.1 Rules
3.2 Moderation
3.3 Code of Conduct
4 Get Started
4.1 Quick Tutorial
4.2 FAQ

View Diff

1,15c1,15
< # Main Topics
< ## History
< ## Science
< ## Literature
< ## Mathematics
< ## Philosophy
< ## Psychology
< # Additional Resources
< # Community Guidelines
< ## Rules
< ## Moderation
< ## Code of Conduct
< # Get Started
< ## Quick Tutorial
< ## FAQ
---
> 1 Main Topics
> 1.1 History
> 1.2 Science
> 1.3 Literature
> 1.4 Mathematics
> 1.5 Philosophy
> 1.6 Psychology
> 2 Additional Resources
> 3 Community Guidelines
> 3.1 Rules
> 3.2 Moderation
> 3.3 Code of Conduct
> 4 Get Started
> 4.1 Quick Tutorial
> 4.2 FAQ

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 54 remaining solutions by signing in and submitting your own entry
#55 CannellC / @CannellC - Score: 983 - 10/25/24 @ 04:20
:g/##<BS><BS><BS><BS>^<BS>%s/^/\=line(.)\<BS>/<CR>:<Up><Left><Left><Left>'<Right>'<CR><fd-6b><CR><fd-6b>u<C-R><Up>u:<Up><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left>.<CR><fd-6b><fd-6b>kkkkkkkkkkkkkkjjjjjjjjjjkkkjjjjjjjj<fd-6b>uuuuuu<50-53>:let i=1 | %s/^./\=i/ | let i+=1<Esc>[201~`<fd-6b>u:<50-53>:let i=1 | %s/^./\=i/ | let i+=1<Esc>[201~<CR><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><Down><fd-6b>u:<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><BS><CR><fd-6b>u:<Up><Up><Up><CR><Up><Up><Up><Up><Up><Up><Up><Up><Down><Down><Down><Down><Down><Down><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Down><Down><Down><Down><Down><50-53>:<50-53>function! A(m)<Esc>[201~<CR>if a:m=='<BS>"#"<CR>let g:i=g:i+1<CR>let g:j=0<CR>return g:i<CR>else<CR>let g:j=g:j+1<CR>return g:i.'.'.g:j<CR>endif<CR>endfunction<CR>:<50-53>let i=0|g/^#\+/s//\=A(submatch(0))/<Esc>[201~<CR>Z::wq<CR><NL><Esc>[201~u:<50-53>:<50-53>function! A(m)<Esc>[201~<CR>if a:m=='<BS>"#"<CR>let g:i=g:i+1<CR>let g:j=0<CR>return g:i<CR>else<CR>let g:j=g:j+1<CR>return g:i.'.'.g:j<CR>endif<CR>endfunction<CR>:<50-53>let i=0|g/^#\+/s//\=A(submatch(0))/<Esc>[201~<CR>Z::wq<CR><NL><Esc>[201~<CR><fd-6b><fd-6b>kj:<BS><fd-6b>:<BS><fd-6b><fd-6b><fd-6b><fd-6b>k<C-V>kkk<fd-6b>lljjhhuiuuu<BS><BS><fd-6b>uuuuuujjjjVkkkkkjjjjVkkkkkjjkkk<C-V>7jkr18jkr2jr3j<C-V>2jr33jr4jr4jr4lk<C-V>jI.<fd-6b>l<C-V>j<C-A><C-V>jr<C-A>ur1jr210k3kh<C-V>jjjjjI.<fd-6b>lgvl<fd-6b><C-V>kkkkk<fd-6b>r1jr2jr2r2jkr3jr4jr5jr5r6jjjh<C-V>jjI.<fd-6b>lr1jr2jr3:w<CR>:q<CR>

0 comments


Created by: @pacuna

55 active golfers, 180 entries

Leaderboard (lowest score wins):
76
#31 - Ivan Prikaznov / @Prikaz98

11/01/2024 at 11:28PM

79
#32 - Doug Chan / @Coufu

10/27/2024 at 05:51PM

80
#33 - Frédéric Heulin / @talineo

12/28/2024 at 08:56PM

81
#34 - aaay-aaay / @aaay-aaay

10/25/2024 at 04:21PM

82
#35 - Ban / @Rheriel

10/23/2024 at 07:24AM

84
#36 - ramacassis / @ramacassis

04/15/2025 at 11:02PM

90
#37 - editor3D / @editor3D

11/15/2024 at 11:46PM

91
#38 - tokaku / @hiroshi-tkk

11/19/2024 at 03:42AM

97
#39 - Yushan Zhang / @ElephantZhang

11/19/2024 at 03:45AM

99
#40 - rybenmensch / @rybenmensch

04/17/2025 at 02:08PM

101
#41 - BasicLoco / @BasicLoco

10/28/2024 at 12:02PM

101
#42 - cr100 / @rekicc

11/06/2024 at 01:58PM

101
#43 - Batyr Asadullin / @Sengoku11

12/14/2024 at 12:58PM

102
#44 - cuhauw / @cuhauwhung

11/19/2024 at 03:24AM

108
#45 - SRINIVASU SALADI / @SRINIVASUS22587

03/14/2025 at 06:35AM

109
#46 - Yining Chen / @wekantakabotdis

04/16/2025 at 05:27AM

110
#47 - Justin Fisher / @justinfisherr

11/01/2024 at 04:52PM

120
#48 - Fredrik Robertsen / @fredrikr79

10/25/2024 at 02:47PM

122
#49 - Ayon Pal / @AyonPal

04/21/2025 at 08:49AM

123
#50 - David Millman / @dlmillman

10/27/2024 at 04:31PM

124
#51 - Ming / @x51ming

04/20/2025 at 01:29PM

164
#52 - dailybeef / @dailybeef

11/30/2024 at 01:51PM

178
#53 - fengc / @fengc

10/23/2024 at 04:42AM

208
#54 - boumediane1 / @boumediane1

01/09/2025 at 10:01PM

983
#55 - CannellC / @CannellC

10/25/2024 at 04:20AM