       fs.readFile source, (err, code) ->
         throw err if err
         compileScript(source, code.toString(), base)
-      
+
   watcher = fs.watch source, callback = (event) ->
     if event is 'change'
       compile()
     else if event is 'rename'
       watcher.close()
-      setTimeout -> 
+      setTimeout ->
         path.exists source, (exists) ->
           if exists
             compile()

        fs.readdir source, (err, files) ->
          throw err if err
          files = files.map (file) -> path.join source, file
          for file in files when not notSources[file] 
            continue if sources.some (s) -> s.indexOf(file) >= 0
            sources.push file
            sourceCode.push null

        toRemove = (file for file in sources when file.indexOf(source) >= 0)
        removeSource file, base, yes for file in toRemove
        compileJoin()

# Remove a file from our source list, and source code cache. Optionally remove
# the compiled JS version as well.
removeSource = (source, base, removeJs) ->
