docs: function preParse(src, output, syntax) {
  	const {
  		append,
  		compilerControl,
  		control
  	} = output;
  
  	let appendParts = [];
  	function pushAppendParts() {
  		if (appendParts.length > 0) {
  			append(appendParts);
  			appendParts = [];
  		}
  	}
  
  	parse(src, {
  		plain(html) {
  			appendParts.push('\'' + jsStringEscape(html) + '\'');
  		},
  		compilerControl(js) {
  			pushAppendParts();
  			compilerControl(js);
  		},
  		writeEscaped(js) {
  			appendParts.push('__e(' + js + ')');
  		},
  		writeUnescaped(js) {
  			appendParts.push('(' + js + ')');
  		},
  		control(js) {
  			pushAppendParts();
  			control(js);
  		}
  	}, syntax);
  	pushAppendParts();
  }