Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
/**
 * [[WP:AutoEd]] module to automatically alias a given 
 */

var alias, toAlias;

function autoEdAliasPam( str ) {
	toAlias=prompt('Enter name of existing parameter to be aliased');
	alias=prompt('Enter name of new alias (of the '+toAlias+'parameter)');
	autoEdTag='aliased '+toAlias+' parameter to '+alias+' with [[w:User:Aaron Liu/AliasPam.js]]';
	var toAliasCape=toAlias.replace(/[/\\^$*+?.()|[\]{}]/g, '\\$&'); // escape characters special to regex
	str = str.replace( new RegExp( '\\{\\{\\{(\\s*)' + toAlias + '(\\s*)(\\|?)(\\s*)\\}\\}\\}', 'g' ),
		'{{{$1'+toAlias+'$2|$2{{{$1'+alias+'$2$3$4}}}$2}}}' );
	return str;
}

$.when( $.ready ).then( function () {
	if ( mw.loader.load('//en.wikipedia.org/w/index.php?title=Wikipedia:AutoEd/core.js&action=raw&ctype=text/javascript') ) { // if not otherwise using AutoEd
		console.log( 'imported AutoEd');

		window.autoEdFunctions = function () {
			const box = document.editform.wpTextbox1;
			const str = box.value;
			const newstr = autoEdAliasPam( str );
			if ( newstr !== str ) { // don't confuse or tag if no fixes
				box.value = newstr;
			} else {
				autoEdTag = '';
				autoEdClick = false;
				mw.notify( 'Parameter to alias not found!', { type: 'error' } );
			}
		};
		autoEdClick = true;
		autoEdMinor = false;
		autoEdLinkName = 'AliasPam';
		autoEdLinkHover = 'Automatically create the prompted alias for the current template';
		autoEdTag = 'aliased parameter with [[w:User:Aaron Liu/AliasPam.js]], i think? i\'m not supposed to be here. where am i. whats my name. holy-';
	}
} );