code: function augmentTrigger ( context ) {
  
          context.trigger = (function () {
  
              var origTrigger = context.trigger;
  
              // Return an augmented trigger method implementation, in order to replace the original trigger method
              return function ( event, /** ...* */ varArgs ) {
  
                  var args = _.toArray( arguments ),
  
                      isBackboneEvent_OptArg2 = event === "update" || event === "reset" || event === "sort" || event === "change",
                      isBackboneEvent_OptArg3 = event === "add" || event === "remove" || event === "destroy";
  
                  // Remove the internal backboneSubcall flag from a Backbone event.
                  if ( isBackboneEvent_OptArg2 && _.isObject( args[2] ) && _.has( args[2], "@bbs:backboneSubcall" ) ) delete args[2]["@bbs:backboneSubcall"];
                  if ( isBackboneEvent_OptArg3 && _.isObject( args[3] ) && _.has( args[3], "@bbs:backboneSubcall" ) ) delete args[3]["@bbs:backboneSubcall"];
  
                  if ( isSelectionEvent( event ) ) {
                      // get the method name from the event name
                      var unifiedEvent = unifyEventNames( event ),
  
                          // Split the event name on the ":" (regex), capitalize, add "on" prefix
                          methodName = 'on' + unifiedEvent.replace( /(^|:)(\w)/gi, getEventName ),
                          method = this[methodName];
  
                      // call the onMethodName if it exists
                      if ( _.isFunction( method ) ) {
                          // pass all trigger arguments, except the event name
                          method.apply( this, _.tail( args ) );
                      }
                  }
  
                  // trigger the event
                  origTrigger.apply( this, args );
                  return this;
  
              };
  
          })();
      }
docs: Creates a new trigger method which calls the predefined event handlers (onDeselect etc) as well as triggering the event.  Also removes the internal backboneSubcall flag from the options of a Backbone event. That can only be done here, see comment in patchSilentReset().  Adapted from Marionette.triggerMethod.