diff --git a/wysiwyg.api.php b/wysiwyg.api.php
index 06b3808..7dbc7c9 100644
--- a/wysiwyg.api.php
+++ b/wysiwyg.api.php
@@ -250,6 +250,16 @@ function hook_INCLUDE_editor() {
 }
 
 /**
+ * Alter editor definitions defined by other modules.
+ *
+ * @param array $editors
+ *    The Editors to alter
+ */
+function hook_editor_alter(&$editors) {
+  $editors['editor']['version callback'] = 'my_own_version_callback';
+}
+
+/**
  * Act on editor profile settings.
  *
  * This hook is invoked from wysiwyg_get_editor_config() after the JavaScript
diff --git a/wysiwyg.module b/wysiwyg.module
index 381b182..a356abf 100644
--- a/wysiwyg.module
+++ b/wysiwyg.module
@@ -844,6 +844,7 @@ function wysiwyg_get_all_editors() {
   }
 
   $editors = wysiwyg_load_includes('editors', 'editor');
+  drupal_alter('editor', $editors)
   foreach ($editors as $editor => $properties) {
     // Fill in required properties.
     $editors[$editor] += array(
