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 50f1b2e316e0bb0002000051

Circle in a square

Probably looks more like "Egg in a rectangle" in most fonts, but it's actually 23x23.

Start file
#######
###########
###############
#################
###################
###################
#####################
#####################
#######################
#######################
#######################
#######################
#######################
#######################
#######################
#####################
#####################
###################
###################
#################
###############
###########
#######
End file
........#######........
......###########......
....###############....
...#################...
..###################..
..###################..
.#####################.
.#####################.
#######################
#######################
#######################
#######################
#######################
#######################
#######################
.#####################.
.#####################.
..###################..
..###################..
...#################...
....###############....
......###########......
........#######........

View Diff

1,8c1,8
< #######
< ###########
< ###############
< #################
< ###################
< ###################
< #####################
< #####################
---
> ........#######........
> ......###########......
> ....###############....
> ...#################...
> ..###################..
> ..###################..
> .#####################.
> .#####################.
16,23c16,23
< #####################
< #####################
< ###################
< ###################
< #################
< ###############
< ###########
< #######
---
> .#####################.
> .#####################.
> ..###################..
> ..###################..
> ...#################...
> ....###############....
> ......###########......
> ........#######........

Solutions by @GavinKoeng:

Unlock 28 remaining solutions by signing in and submitting your own entry
Created by: @udioica

55 active golfers, 180 entries

Solutions by @GavinKoeng:
23
#13 - Gavin / @GavinKoeng

06/01/2026 at 02:37AM

24
#>14 - Gavin / @GavinKoeng

06/01/2026 at 02:36AM

25
#>16 - Gavin / @GavinKoeng

06/01/2026 at 02:36AM

25
#>16 - Gavin / @GavinKoeng

06/01/2026 at 02:37AM

26
#>17 - Gavin / @GavinKoeng

06/01/2026 at 02:36AM

28
#>18 - Gavin / @GavinKoeng

06/01/2026 at 02:35AM

29
#>20 - Gavin / @GavinKoeng

06/01/2026 at 02:35AM

31
#>21 - Gavin / @GavinKoeng

06/01/2026 at 02:35AM

34
#>22 - Gavin / @GavinKoeng

06/01/2026 at 02:35AM

35
#>22 - Gavin / @GavinKoeng

06/01/2026 at 02:34AM

38
#>25 - Gavin / @GavinKoeng

06/01/2026 at 02:33AM

43
#>26 - Gavin / @GavinKoeng

06/01/2026 at 02:32AM

44
#>27 - Gavin / @GavinKoeng

06/01/2026 at 02:32AM

46
#>30 - Gavin / @GavinKoeng

06/01/2026 at 02:31AM

47
#>31 - Gavin / @GavinKoeng

06/01/2026 at 02:31AM

50
#>34 - Gavin / @GavinKoeng

06/01/2026 at 02:30AM

54
#>38 - Gavin / @GavinKoeng

06/01/2026 at 02:29AM

55
#>39 - Gavin / @GavinKoeng

06/01/2026 at 02:27AM

56
#>40 - Gavin / @GavinKoeng

06/01/2026 at 02:24AM

64
#>40 - Gavin / @GavinKoeng

06/01/2026 at 02:23AM

71
#>46 - Gavin / @GavinKoeng

06/01/2026 at 02:20AM

73
#>47 - Gavin / @GavinKoeng

06/01/2026 at 02:21AM

76
#>48 - Gavin / @GavinKoeng

06/01/2026 at 02:18AM

79
#>49 - Gavin / @GavinKoeng

06/01/2026 at 02:16AM

80
#>49 - Gavin / @GavinKoeng

06/01/2026 at 02:13AM

97
#>51 - Gavin / @GavinKoeng

06/01/2026 at 02:07AM

101
#>55 - Gavin / @GavinKoeng

06/01/2026 at 02:06AM

122
#>55 - Gavin / @GavinKoeng

06/01/2026 at 02:02AM