code: function(name) {
              var args = Array.prototype.slice.call(arguments, 0);
              if (!this.multipleEvents('trigger', name, args)) return this;
              var index = 0;
               
              do {
                  index = name.indexOf(':', index+1);
                  args[0] = name.slice(0, index === -1 ? undefined : index);
                  this.triggerOnly.apply(this, args);
              } while(index !== -1)
              return this;
          }
docs: Trigger one or many events, firing all bound callbacks. Callbacks are
  passed the same arguments as `trigger` is, apart from the event name
  (unless you're listening on `"all"`, which will cause your callback to
  receive the true name of the event as the first argument).
  
  @method trigger
  @param {string} [name] event to trigger
  @chainable