code: function(command, value) {
      var obj     = wysihtml5.commands[command],
          args    = wysihtml5.lang.array(arguments).get(),
          method  = obj && obj.exec,
          result  = null;
  
      this.editor.fire("beforecommand:composer");
  
      if (method) {
        args.unshift(this.composer);
        result = method.apply(obj, args);
      } else {
        try {
          // try/catch for buggy firefox
          result = this.doc.execCommand(command, false, value);
        } catch(e) {}
      }
  
      this.editor.fire("aftercommand:composer");
      return result;
    }
docs: Check whether the browser supports the given command
  
  @param {String} command The command string which to execute (eg. "bold", "italic", "insertUnorderedList")
  @param {String} [value] The command value parameter, needed for some commands ("createLink", "insertImage", ...), optional for commands that don't require one ("bold", "underline", ...)
  @example
  commands.exec("insertImage", "http://a1.twimg.com/profile_images/113868655/schrei_twitter_reasonably_small.jpg");