 
 KeymapManager::onDidLoadBundledKeymaps = (callback) ->
   @emitter.on 'did-load-bundled-keymaps', callback
+
+KeymapManager::onDidLoadUserKeymap = (callback) ->
+  @emitter.on 'did-load-user-keymap', callback
 
 KeymapManager::loadBundledKeymaps = ->
   keymapsPath = path.join(@resourcePath, 'keymaps')

      stack = error.stack
      @notificationManager.addFatalError(error.message, {detail, stack, dismissable: true})

KeymapManager::subscribeToFileReadFailure = ->
  @onDidFailToReadFile (error) =>
    userKeymapPath = @getUserKeymapPath()

  return unless fs.isFileSync(userKeymapPath)

  try
    errorLoading = false
    @loadKeymap(userKeymapPath, watch: true, suppressErrors: true, priority: 100)
  catch error
    errorLoading = true
    if error.message.indexOf('Unable to watch path') > -1
      message = """
        Unable to watch path: `#{path.basename(userKeymapPath)}`. Make sure you
