Since the Vim 8 release, there's thankfully only one way of structuring your plugins (which is also compatible with major plugin managers, such as vim-plug, Vundle, or Pathogen). The plugins are expected to have the following directory structure:
- autoload/ lets you lazy load bits of your plugin (more on that later)
- colors/ color schemes
- compiler/ (language-specific) compiler-related functionality
- doc/ documentation
- ftdetect/ (filetype-specific) filetype detection settings
- ftplugin/ (filetype-specific) filetype-related plugin code
- indent/ (filetype-specific) indentation-related settings
- plugin/ the core functionality of your plugin
- syntax/ (language-specific) defines language syntax group
As we develop our plugin, let's use ...