Hari Krishna Dara wrote:

This is exactly the reason, I didn't suspect this at all. I had netrw in
my plugin directory for use with 6.3 Vim. Now, how do I make sure I can
use the same plugin directory for both 6.3 and 7.0? I think the
g:loaded_xxx variable should be different for these two so that we can
control them independently.  Since it took the role of explorer plugin
in 7.0, how about using the loaded_explorer instead of loaded_netrw in
7.0 (unless there is a better solution)?


Vim 7.0 introduces the notion of "autoload" -- basically only a small skeleton of code, generally just the user interface commands and maps, is present in the plugin. However, the commands
and maps defined therein can call upon functions with the format

  funcfile#Function(...)

If the function hasn't been loaded yet, then Vim 7.0 will attempt to source it in from the system's or user's autoload/ directories, using funcfile.vim to do so. Thus the user gains full functionality without having to pay a startup price by loading everything whether or not it gets used this time around.

One problem: vim 6.x not only doesn't understand this, it complains about it. Hence, vim7.0 can understand and use vim6.x (and earlier) plugins, but plugins using vim 7.0's autoload will be incompatible with vim 6.x.

Bottom line: there's no point. Netrw, now a vim 7.0 autoload-using plugin, just isn't compatible with 6.x. Attempts to use vim 6.x with 7.0-plugins is going to result in lots of errors.

Regards,
Chip Campbell

Reply via email to