> There is a line after the Eatchar function:
>
> iabbr <silent> if if ()<Left><C-R>=Eatchar('\s')<CR>
>
> Is this a necessary companion of the Eatchar function?
> This seems to be a protection against eating into text, but
> should not this begin with ":" ? And the double "if", isn't
> it suspicious?
No, you don't need this line. It is an example of eating up
the space after an abbreviation, in this case expanding "if"
to "if ()", placing the cursor within the parentheses.
(And if the stuff is in the .vimrc file, it doesn't need to
begin with ":".)