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 5a19a6be19128f03c2000010

42-header

Rush 42mexican-standoff at 42 school

Start file
void    read_loop(char *delim_string, char **ptr, int op, char **doc)
{
       
while(**ptr)
       
{
               
char    *tmp;
               
char    *tmp2;

                tmp
= *ptr;
               
while (**ptr && **ptr != '\n')
                       
(*ptr)++;
               
if (**ptr == '\n')
                       
(*ptr)++;
                tmp
= ft_strndup(tmp, *ptr - tmp);
               
if (op == DLESSDASH)
                        tmp
= remove_tab(tmp);
               
if (!ft_strcmp(delim_string, tmp))
                       
break;
        tmp2
= ft_strjoin(*doc, tmp);
                free
(*doc);
                free
(tmp);          
               
*doc = tmp2;
       
}
}
End file
void    read_loop(char *delim_string, char **ptr, int op, char **doc)
{
       
char    *tmp;
       
char    *tmp2;

       
while (**ptr)
       
{
                tmp
= *ptr;
               
while (**ptr && **ptr != '\n')
                       
(*ptr)++;
               
if (**ptr == '\n')
                       
(*ptr)++;
                tmp
= ft_strndup(tmp, *ptr - tmp);
               
if (op == DLESSDASH)
                        tmp
= remove_tab(tmp);
               
if (!ft_strcmp(delim_string, tmp))
                       
break ;
                tmp2
= ft_strjoin(*doc, tmp);
                free
(*doc);
                free
(tmp);
               
*doc = tmp2;
       
}
}

View Diff

3,6c3,4
<       while(**ptr)
<       {
<               char    *tmp;
<               char    *tmp2;
---
>       char    *tmp;
>       char    *tmp2;
7a6,7
>       while (**ptr)
>       {
11c11
<                 if (**ptr == '\n')
---
>               if (**ptr == '\n')
17,18c17,18
<                       break;
<         tmp2 = ft_strjoin(*doc, tmp);
---
>                       break ;
>               tmp2 = ft_strjoin(*doc, tmp);
20c20
<               free(tmp);          
---
>               free(tmp);

Solutions by @arnoxmp:

Unlock 8 remaining solutions by signing in and submitting your own entry
Created by: @VincentCombey

16 active golfers, 43 entries

Solutions by @arnoxmp:
23
#7 - Arno / @arnoxmp

05/12/2019 at 09:47AM

27
#>10 - Arno / @arnoxmp

05/12/2019 at 09:44AM

28
#>11 - Arno / @arnoxmp

05/12/2019 at 09:39AM

29
#>12 - Arno / @arnoxmp

05/12/2019 at 09:30AM

29
#>12 - Arno / @arnoxmp

05/12/2019 at 09:35AM

30
#>14 - Arno / @arnoxmp

05/12/2019 at 09:22AM

35
#>14 - Arno / @arnoxmp

05/12/2019 at 09:20AM

45
#>15 - Arno / @arnoxmp

05/12/2019 at 09:17AM