2015-01-20 19:42 GMT+03:00 Salman Halim <[email protected]>:

>
> On Jan 20, 2015 11:36 AM, "Steve Litt" <[email protected]> wrote:
> >
> > On Mon, 19 Jan 2015 22:50:49 -0600
> > Tim Chase <[email protected]> wrote:
> >
> > > On 2015-01-19 20:31, Bao Niu wrote:
> > > > I am learning Vimscript and I wonder if there is any difference
> > > > between writing "function!" vs. "function"? What is that
> > > > exclamation point for here?
> > >
> > > As detailed at
> > >
> > >   :help E123
> > >
> > > If a function already exists with the same name as you want to
> > > create, the "!" will tell it to overwrite the previously-existing
> > > function.  Thus, you might have
> > >
> > >   function Hello()
> > >     echo 'Hello'
> > >   endfunction
> > >
> > > and then want to change it, so you'd use
> > >
> > >   function! Hello()
> > >     echoerr 'Hello'
> > >   endfunction
> > >
> > > to overwrite it.  Because of the behavior, I just use the "!" *every*
> > > time that I define a function.  That way, I don't have to think about
> > > whether it already exists or not.
> > >
> > > -tim
> >
> > Tim,
> >
> > Thanks for the complete explanation. I always wondered that myself.
> >
> > SteveT
>
> If you're writing a utility or plugin function that isn't specific to your
> script, I start with just 'function' as it helps me identify which function
> names already exist and I might clobber them. Once I know the name I've
> chosen is truly unique, I add the '!'.
>

Since you obviously do not test each and every plugin in world you cannot
know that this name is truly unique.


> Salman
>
> --
> --
> You received this message from the "vim_use" maillist.
> Do not top-post! Type your reply below the text you are replying to.
> For more information, visit http://www.vim.org/maillist.php
>
> ---
> You received this message because you are subscribed to the Google Groups
> "vim_use" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to