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

CaN yOuR ViM dO ThAt? #1

Tsoding's famous "Can your Vim do that?" https://youtu.be/Bafo3hhheHU?si=DfcT4sUEMTSAevnx&t=1091

Start file
void platform_fill_rect(i32 x, i32 y, i32 w, i32 h, u32 color)
{
}

void platform_stroke_rect(i32 x, i32 y, i32 w, i32 h, u32 color)
{
}

void platform_fill_text(i32 x, i32 y, const char *text, u32 size, u32 color, Align align)
{
}

void platform_stroke_line(i32 x1, i32 y1, i32 x2, i32 y2, u32 color)
{
}

void platform_panic(const char *file_path, i32 line, const char *message)
{
}

void platform_log(const char *message)
{
}
End file
void platform_fill_rect(i32 x, i32 y, i32 w, i32 h, u32 color)
{
   
assert(0 && "TODO: platform_fill_rect");
}

void platform_stroke_rect(i32 x, i32 y, i32 w, i32 h, u32 color)
{
   
assert(0 && "TODO: platform_stroke_rect");
}

void platform_fill_text(i32 x, i32 y, const char *text, u32 size, u32 color, Align align)
{
   
assert(0 && "TODO: platform_fill_text");
}

void platform_stroke_line(i32 x1, i32 y1, i32 x2, i32 y2, u32 color)
{
   
assert(0 && "TODO: platform_stroke_line");
}

void platform_panic(const char *file_path, i32 line, const char *message)
{
   
assert(0 && "TODO: platform_panic");
}

void platform_log(const char *message)
{
   
assert(0 && "TODO: platform_log");
}

View Diff

2a3
>     assert(0 && "TODO: platform_fill_rect");
6a8
>     assert(0 && "TODO: platform_stroke_rect");
10a13
>     assert(0 && "TODO: platform_fill_text");
14a18
>     assert(0 && "TODO: platform_stroke_line");
18a23
>     assert(0 && "TODO: platform_panic");
22a28
>     assert(0 && "TODO: platform_log");

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 60 remaining solutions by signing in and submitting your own entry
#61 Bader Almazmumi / @almazmumi - Score: 71 - 01/27/25 @ 12:05
qa^wyiwjo<BS>     a<BS><BS>assert(0 && "TODO: ");<Esc>hhhphgh<Esc>jjjjkq@a@a@a@a@a:w<CR>:q<CR>

0 comments


Created by: @Vivida1

61 active golfers, 148 entries

Leaderboard (lowest score wins):
46
#31 - Anton Strand / @AntonStrand

11/04/2024 at 02:46PM

46
#32 - Chloe Brett / @chloebrett

11/12/2024 at 07:02AM

46
#33 - Magnus Wahlstrand / @magnuswahlstrand

12/25/2024 at 07:33AM

46
#34 - Swaraj Dash / @swarajdash

12/25/2024 at 03:43PM

46
#35 - Joshua Goon / @Jish2

01/01/2025 at 12:02AM

46
#36 - Nimmidev / @Nimmidev

01/11/2025 at 05:20PM

46
#37 - greg-asc / @greg-asc

03/04/2025 at 06:32PM

46
#38 - ChongChong He / @chongchonghe

03/15/2025 at 11:21AM

47
#39 - Vivida / @Vivida1

10/01/2024 at 01:54PM

47
#40 - Seher Dilek / @SeherDilek

11/10/2024 at 10:07PM

47
#41 - editor3D / @editor3D

11/19/2024 at 02:34PM

47
#42 - Rodi-Janssen / @Rodi-Janssen

11/26/2024 at 02:12PM

47
#43 - Tzadiko / @Tzadiko

12/16/2024 at 12:07AM

47
#44 - Heitor Dantas / @heitordnts

12/22/2024 at 05:27PM

47
#45 - Frédéric Heulin / @talineo

12/29/2024 at 11:08PM

47
#46 - chujDK / @chujDK

02/25/2025 at 05:33AM

47
#47 - Jonas Krumm / @Dedphish

03/21/2025 at 10:13PM

47
#48 - jonas-grobe / @jonas-grobe

04/16/2025 at 06:41PM

48
#49 - Håkon Anders Strømsodd / @haakon8855

10/16/2024 at 08:52AM

48
#50 - got_windy / @insomnight

10/19/2024 at 12:07AM

48
#51 - daniilsvirin / @daniilsvirin

10/21/2024 at 08:42AM

48
#52 - BensonLing0925 / @BensonLing0925

11/08/2024 at 08:12AM

49
#53 - Brett Collins / @brett-collins_cbhq

10/25/2024 at 12:32AM

49
#54 - thedvd98 / @thedvd98

11/17/2024 at 09:45PM

50
#55 - Brian Curless / @bwcurless

02/12/2025 at 06:19PM

50
#56 - enaygit / @enaygit

02/15/2025 at 10:25PM

52
#57 - Alexander Dyadyushenko / @GooKv

04/05/2025 at 02:32PM

52
#58 - rellarda / @rellarda

04/27/2025 at 06:05PM

53
#59 - nduncan227 / @nduncan227

04/26/2025 at 01:17AM

58
#60 - SRINIVASU SALADI / @SRINIVASUS22587

03/25/2025 at 05:11AM