           return acc
         , {}
 
+    @_flushBuffer()
+
+
+  # Prepares buffer for the next batch of changes.
+  #
+  _flushBuffer: ->
+
     @_buffer = @shortcuts.config.reduce (acc, collection) ->
       acc[collection.name] = []
       return acc
     , {}
 
+    return this
+
 
   # Party starts here.
   #


    @shortcuts.get.apply @shortcuts, Array::slice.call arguments

  # Updates a _keyconfig#Model_.
  #
  # This api is pretty-much same with _shortcuts#update_.

events         = require 'events'
_              = require 'underscore'
kd             = require 'kd'
traverse       = require 'traverse'
globals        = require 'globals'
ShortcutsModal = require './views/modal'
AppController  = require 'app/appcontroller'
AppStorage     = require 'app/appstorage'

STORAGE_NAME    = 'shortcuts'
STORAGE_VERSION = '7'
THROTTLE_WAIT   = 2000

module.exports =

