В чем разница между "функцией" и "функцией!" в VIM? - PullRequest
14 голосов
/ 28 ноября 2009

Я видел довольно много случаев использования "функции!" в других файлах vimrc, но нет легко найти документацию «function!».

В чем разница между "функцией" и "функцией!"?

Ответы [ 3 ]

20 голосов
/ 28 ноября 2009

:help user-functions

Когда функция с таким именем уже существует и [!] Имеет значение
не используется сообщение об ошибке. Когда используется [!],
существующая функция молча заменяется. Если это не
в данный момент выполняется, это ошибка.

8 голосов
/ 28 ноября 2009

Как правило, он подавляет сообщения, которые могут выдаваться командой.

Например, используя function!, вы можете переопределить уже определенную функцию.

6 голосов
/ 28 ноября 2009

function (с соответствующими) параметрами определяет новую функцию, но завершается ошибкой, если функция с таким именем уже существует. function! всегда заменяет любую существующую функцию с указанным именем новым предоставленным определением.

Это говорит так же:

:help function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...