 
   setShortcut: (model) ->
 
+    disabled = model.options and model.options.enabled is false
+
+    if disabled
+      @editor.commands.removeCommand model.name
+      return
+
     key = model.name
     exec =
     switch key

    shortcuts.removeListener 'change', @bound 'handleShortcutChange'
    emmetLoadListeners[@id] = null  unless _.isNull emmetLoadListeners

    super





  setShortcuts: (removeObsolete=yes) ->

    # A stupid workaround to keep commands since ace@1.1.4#removeCommand
    # deletes a command's exec ref.
    @_commandFns = _.reduce @editor.commands.commands, (acc, val, key) ->
      acc[key] = val.exec
      acc
    , {}

    { shortcuts } = kd.singletons

