   # Public: Create a new KeymapManager.
   #
   # * `options` An {Object} containing properties to assign to the keymap.  You
-  #             can pass custom properties to be used by extension methods. The
-  #             following properties are also supported:
+  #   can pass custom properties to be used by extension methods. The
+  #   following properties are also supported:
   #   * `defaultTarget` This will be used as the target of events whose target
-  #                     is `document.body` to allow for a catch-all element when
-  #                     nothing is focused.
+  #     is `document.body` to allow for a catch-all element when nothing is focused.
   constructor: (options={}) ->
     @[key] = value for key, value of options
     @keyBindings = []

  # Public: Remove the key bindings added with {::add} or {::loadKeymap}.
  #
  # * `source` A {String} representing the `source` in a previous call to
  #            {::add} or the path in {::loadKeymap}.
  remove: (source) ->
    @keyBindings = @keyBindings.filter (keyBinding) -> keyBinding.source isnt source
    undefined

  # Public: Add sets of key bindings grouped by CSS selector.
  #
  # * `source` A {String} (usually a path) uniquely identifying the given bindings
  #   so they can be removed later.
  # * `bindings` An {Object} whose top-level keys point at sub-objects mapping
  #   keystroke patterns to commands.
  add: (source, keyBindingsBySelector) ->
    for selector, keyBindings of keyBindingsBySelector
      # Verify selector is valid before registering any bindings
