diff --git a/src/MacVim/PlugInImpl.m b/src/MacVim/PlugInImpl.m index ef13dc536a..066a7ac540 100644 --- a/src/MacVim/PlugInImpl.m +++ b/src/MacVim/PlugInImpl.m @@ -26,6 +26,9 @@ #ifdef MM_ENABLE_PLUGINS +static int MMPlugInArchMajorVersion = 1; +static int MMPlugInArchMinorVersion = 0; + #import "PlugInImpl.h" #import "PlugInGUI.h" #import "MMPlugInManager.h" @@ -219,6 +222,16 @@ MMPlugInAppMediator *sharedAppMediator = nil; return nil; } +- (int)majorVersion +{ + return MMPlugInArchMajorVersion; +} + +- (int)minorVersion +{ + return MMPlugInArchMinorVersion; +} + @end #endif diff --git a/src/MacVim/PlugInInterface.h b/src/MacVim/PlugInInterface.h index 490d619cab..dbbf4b64f8 100644 --- a/src/MacVim/PlugInInterface.h +++ b/src/MacVim/PlugInInterface.h @@ -39,6 +39,12 @@ // If there are no instances with the specified class, returns nil. - (id)keyPlugInInstanceWithClass:(Class)class; +// Plugin architecture version. Major versions indicate API incompatibilities. +// Minor versions may include additions, but nothing that should break current +// plugins. +- (int)majorVersion; +- (int)minorVersion; + @end @protocol PlugInInstanceMediator