 
         styl manifest, globs
 
-        if opts.watchCss
+        onRaw = (e, file) ->
+          return  unless file
+          if e is 'modified' or e is 'deleted'
+            console.log "updated #{dir}"
+            start = Date.now()
+            styl manifest, globs
+
+        onRaw = throttle onRaw, THROTTLE_WAIT
+
+        if opts.watchCss and ~watchingDirs.indexOf(dir) is 0
+          watchingDirs.push dir
           w = chokidar.watch dir, persistent: yes
           w.on 'ready', ->
-            w.on 'raw', (e, file) ->
-              if e is 'modified' or e is 'deleted'
-                console.log "#{e} file"
-                start = Date.now()
-                styl manifest, globs
+            w.on 'raw', onRaw
 
 
     init = =>

nib          = require 'nib'
stylus       = require 'gulp-stylus'
concat       = require 'gulp-concat'

JS_OUTFILE                  = 'bundle.js'
THIRDPARTY_OUTDIR           = 'thirdparty'

STYLES_KDJS_CSS_FILE        = 'dist/kd.css'
STYLES_COMMONS_GLOB         = 'app/lib/styl/commons/*.styl'
STYLES_EXTENSION            = 'styl'
THROTTLE_WAIT               = 500

module.exports =

