Що означає символ "#" у назві функції?


13

Я хотів би знати, яке значення #символу в назвах функцій, наприклад:

execute pathogen#infect()

Прочитайте довідку щодо плагінів для автоматичного завантаження.
Люк Ермітт

Відповіді:


16

Це частина механізму автозавантаження. Від Autoloadingв Learn Vimscript важкий шлях і :help autoload:

Автозавантаження дозволяє затримати завантаження коду, поки він фактично не знадобиться, тож якщо виконати наступну функцію

execute pathogen#infect()

вже завантажено, Vim просто зателефонує нормально. Інакше Vim шукатиме файл, названий autoload/pathogen.vimу вашому ~/.vimкаталозі. Якщо цей файл існує, Vim завантажить / джерело файлу. Потім він спробує нормально викликати функцію.

Кожен #у назві функції працює як роздільник шляху. Таким чином при виклику функції:

:call foo#bar#func()

Vim шукатиме файл autoload/foo/bar.vim

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.