I've found that ultisnips is one of the slowest plugins to load at startup.

How do I use NeoBundleLazy to load ultisnips later, eg upon entering insert mode?

I've tried:

NeoBundleLazy 'SirVer/ultisnips', {
    \ 'autoload': {
    \   'insert': 1,
    \   },
    \ }

But get this error message on loading vim:

Error detected while processing FileType Auto commands for "*":
E117: Unknown function: UltiSnips#FileTypeChanged
  • You don't need lazy loading for well-behaving plugins. – Christian Brabandt Jul 19 '16 at 17:19
  • Well behaved, slow loading plugins like NERTree seem to lazy load just fine. – Tom Hale Jul 20 '16 at 0:27
  • 1
    Lazy loading won't always work as the plugin manager can never know what the plugin needs to be doing. Since vim already by default supports lazy loading (:h autoload), this is the way to go, and don't use the plugin manager for this. If a plugin does not support it, it should be fixed, don't depend on some plugin manager for this. – Christian Brabandt Jul 20 '16 at 7:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.