                     obj['desc'] = @descList.length-1
                   else
                     obj['desc'] = descIndex
+              extPaths.push("#{relPath}")
+            catch
+              @addError("Cannot read external index file", "path #{relPath}")
+    if extPaths.length > 0
+      @addInfo("Added external index files", extPaths.join('\n'))
     for modDir in @modDirs
       try
         files = fs.readdirSync(modDir)

          for modDir in configOptions['mod_dirs']
            @modDirs.push(path.join(projDir, modDir))
        if 'ext_index' of configOptions
          for extIndex in configOptions['ext_index']
            indexPath = path.join(projDir, extIndex)
            try
              fs.accessSync(indexPath, fs.R_OK)
              fs.openSync(indexPath, 'r+')

    @indexReady = true
    return true

  addInfo: (info, detail=null) ->
    if detail?
      atom.notifications?.addInfo("ac-fortran: #{info}", {detail: detail})
    else
      atom.notifications?.addInfo("ac-fortran: #{info}")

  addError: (info, detail=null) ->
    if detail?
      atom.notifications?.addError("ac-fortran: #{info}", {detail: detail})
    else
      atom.notifications?.addError("ac-fortran: #{info}")

  notifyIndexPending: (operation) ->
    atom.notifications?.addWarning("Could not complete operation: #{operation}", {
      detail: 'Indexing pending',
