 
   # Public: Create a keydown DOM event for testing purposes.
   #
-  # * `key` The key or keyIdentifier of the event. For example, 'a', '1',
-  #         'escape', 'backspace', etc.
-  # * options An {Object} containing any of the following:
+  # * `key` The key or keyIdentifier of the event. For example, `'a'`, `'1'`,
+  #   `'escape'`, `'backspace'`, etc.
+  # * `options` (optional) An {Object} containing any of the following:
   #   * `ctrl`   A {Boolean} indicating the ctrl modifier key
   #   * `alt`    A {Boolean} indicating the alt modifier key
   #   * `shift`  A {Boolean} indicating the shift modifier key
   #   * `cmd`    A {Boolean} indicating the cmd modifier key
   #   * `which`  A {Number} indicating `which` value of the event. See
-  #              the docs for KeyboardEvent for more information.
+  #     the docs for KeyboardEvent for more information.
   #   * `target` The target element of the event.
   @keydownEvent: (key, options) -> keydownEvent(key, options)
 

  # Public: Load the key bindings from the given path.
  #
  # * `path` A {String} containing a path to a file or a directory. If the path is
  #          a directory, all files inside it will be loaded.
  # * `options` An {Object} containing the following optional keys:
  #   * `watch` If `true`, the keymap will also reload the file at the given
  #             path whenever it changes. This option cannot be used with
  #             directory paths.
  loadKeymap: (bindingsPath, options) ->
    checkIfDirectory = options?.checkIfDirectory ? true
    if checkIfDirectory and fs.isDirectorySync(bindingsPath)

  # 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
