lib/hyper-config.js
function normalize(acc, val) {
	if (typeof val === 'string') {
		var value = val.trim().replace(acc.refIgnoreRegExp, REF_MAGIC);
		if (value.indexOf(acc.refLabel) === 0 && value.indexOf(acc.refLabel + acc.macroBegin) === -1) {
			value = value.substring(acc.refLabel.length);
			this.update(acc.get(value));
		} else if (value.indexOf(acc.refLabel + 'disable') === 0) {
			this.remove();
		} else {
			value = value.replace(acc.refRegExp, function replaceMacro(val, path) {
				return acc.get(path);
			});
			this.update(value.replace(REF_MAGIC_REGEXP, acc.refLabel));
		}
	}
	var key = this.key;
	if (key && key.indexOf(acc.annotationLabel) === 0) {
		normalizer = acc.normalizers[key.substring(acc.annotationLabel.length)];
		if (normalizer) {
			normalizer(acc, val, this);
		}
	}

	return acc;
}
function normalize(acc, val) {
	if (typeof val === 'string') {
		var value = val.trim().replace(acc.refIgnoreRegExp, REF_MAGIC);
		if (value.indexOf(acc.refLabel) === 0 && value.indexOf(acc.refLabel + acc.macroBegin) === -1) {
			value = value.substring(acc.refLabel.length);
			this.update(acc.get(value));
		} else if (value.indexOf(acc.refLabel + 'disable') === 0) {
			this.remove();
		} else {
			value = value.replace(acc.refRegExp, function replaceMacro(val, path) {
				return acc.get(path);
			});
			this.update(value.replace(REF_MAGIC_REGEXP, acc.refLabel));
		}
	}
	var key = this.key;
	if (key && key.indexOf(acc.annotationLabel) === 0) {
		normalizer = acc.normalizers[key.substring(acc.annotationLabel.length)];
		if (normalizer) {
			normalizer(acc, val, this);
		}
	}

	return acc;
}
function normalize ( acc , val ) { if ( typeof val === 'string' ) { var value = val . trim ( ) . replace ( acc . refIgnoreRegExp , REF_MAGIC ) ; if ( value . indexOf ( acc . refLabel ) === 0 && value . indexOf ( acc . refLabel + acc . macroBegin ) === - 1 ) { value = value . substring ( acc . refLabel . length ) ; this . update ( acc . get ( value ) ) ; } else if ( value . indexOf ( acc . refLabel + 'disable' ) === 0 ) { this . remove ( ) ; } else { value = value . replace ( acc . refRegExp , function replaceMacro ( val , path ) { return acc . get ( path ) ; } ) ; this . update ( value . replace ( REF_MAGIC_REGEXP , acc . refLabel ) ) ; } } var key = this . key ; if ( key && key . indexOf ( acc . annotationLabel ) === 0 ) { normalizer = acc . normalizers [ key . substring ( acc . annotationLabel . length ) ] ; if ( normalizer ) { normalizer ( acc , val , this ) ; } } return acc ; }
Normalize config value

@param  {object} acc reduce acc
@param  {any} val config value

@return {object} reduce acc
Normalize config value