 
   registries = {Base}
   @extend: (@command=true) ->
-    if @name of registries and (not @suppressWarning)
+    if (@name of registries) and (not @suppressWarning)
       console.warn "Duplicate constructor #{@name}"
     registries[@name] = this
+
+  @getClass: (klassName) ->
+    registries[klassName]
 
   @getRegistries: ->
     registries

    # Reason: https://github.com/t9md/atom-vim-mode-plus/issues/85
    vimState.operationStack.run(klass, properties)

delegatingMethods = [
  "onDidChangeInput"
  "onDidConfirmInput"
  "onDidCancelInput"

  requireTarget: false
  operator: null
  asTarget: false
  context: {}
  @commandPrefix: 'vim-mode-plus'

  @delegatesMethods vimStateMethods..., toProperty: 'vimState'

  constructor: (@vimState, properties) ->
    {@editor, @editorElement} = @vimState
