   # <platform> does not match the current platform, returns false. Otherwise
   # returns true.
   filePathMatchesPlatform: (filePath) ->
-    otherPlatforms = this.getOtherPlatforms()
+    otherPlatforms = @getOtherPlatforms()
     for component in path.basename(filePath).split('.')[0...-1]
       return false if component in otherPlatforms
     true

    # The `ctrl-a b c` binding would be partially matched:
    #
    # // The original binding: 'ctrl-a b c': 'my-sweet-command'
    # this.queuedKeystrokes = ['ctrl-a', 'b'] // The user's keystrokes
    # this.queuedKeyboardEvents = [KeyboardEvent, KeyboardEvent]
    #
    # When it finds partially matching bindings, it will put the KeymapManager
    # into a pending state via `enterPendingState` indicating that it is waiting

  # we can't read the file cleanly, we don't proceed with the reload.
  reloadKeymap: (filePath, options) ->
    if fs.isFileSync(filePath)
      bindings = @readKeymap(filePath, true)

      if typeof bindings isnt "undefined"
        @removeBindingsFromSource(filePath)
        @add(filePath, bindings, options?.priority)
        @emitter.emit 'did-reload-keymap', {path: filePath}
    else
      @removeBindingsFromSource(filePath)
      @emitter.emit 'did-unload-keymap', {path: filePath}

  readKeymap: (filePath, suppressErrors) ->
    if suppressErrors
