Difference between revisions 237224 and 237225 on ptwikibooks

/**
 * TemplateScript
 * Adds a menu of configurable templates and scripts to the sidebar
 * @author: [[m:user:Pathoschild]] ([[meta:User:Pathoschild/Scripts/TemplateScript]])
 * @author: [[User:Helder.wiki]] (this configuration file)
 * @tracking: [[Special:GlobalUsage/User:Helder.wiki/Tools/TemplateScript.js]] ([[File:User:Helder.wiki/Tools/TemplateScript.js]])
 */
/*global jQuery, mediaWiki, LanguageConverter, pathoschild */
(contracted; show full)styRose|Moccasin|NavajoWhite|Navy|OldLace|Olive(?:Drab)?|Orange(?:Red)?|Orchid|Pale(?:GoldenRod|Green|Turquoise|VioletRed)|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|Slate(?:Blue|Gray|Grey)|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|White(?:Smoke)?|Yellow(?:Green)?)',
		colorCodes = '(?:[a-f0-9]{6}|[a-f0-9]{3})';
	oldText = context.$target.val();
	list = [{

		// <font color="red">[[página]]</font>
		// [[página|<span style="color:red;">página</span>]]
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)(' +
				colorNames +
				')\\1\\s*>(\\s*\\[\\[)([^\\|\\]]+)(\\]\\]\\s*)<\\/font>',
			'gi'
		),
		replace: '$3$4|<span style="color:$2;">$4</span>$5'
	},{
		// <font color="#123456">[[página]]</font>
		// [[página|<span style="color:#123456;">página</span>]]
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)\\#?(' +
				colorCodes +
				')\\1\\s*>(\\s*\\[\\[)([^\\|\\]]+)(\\]\\]\\s*)<\\/font>',
			'gi'
		),
		replace: '$3$4|<span style="color:#$2;">$4</span>$5'
	},{
		// <font color="red">[[página|texto]]</font>
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)(' +
				colorNames +
				')\\1\\s*>(\\s*\\[\\[[^\\|\\]]+\\|)([^\\]]+)(\\]\\]\\s*)<\\/font>',
			'gi'
		),
		replace: '$3<span style="color:$2;">$4</span>$5'
	},{
		// <font color="#123456">[[página|texto]]</font>
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)\\#?(' +
				colorCodes +
				')\\1\\s*>(\\s*\\[\\[[^\\|\\]]+\\|)([^\\]]+)(\\]\\]\\s*)<\\/font>',
			'gi'
		),
		replace: '$3<span style="color:#$2;">$4</span>$5'
	},{
		// <font color="red">texto [[página|texto]] texto</font>
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)(' +
				colorNames +
				')\\1\\s*>(.+?)<\\/font>',
			'gi'
		),
		replace: '<span style="color:$2;">$3</span>'
	},{
		// <font color="#123456">texto [[página|texto]] texto</font>
		find: new RegExp(
			'<font\\s+color\\s*=\\s*(["\']?)\\#?(' +
				colorCodes +
				')\\1\\s*>(.+?)<\\/font>',
			'gi'
		),
		replace: '<span style="color:#$2;">$3</span>'
	}];
(contracted; show full)			script: usingRegex
		});
	}
}

$.getScript( '//meta.wikimedia.org/w/index.php?title=User:Pathoschild/Scripts/TemplateScript/dev.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400', loadMyRegexTools );

}( jQuery, mediaWiki ) );