From Wikipedia, the free encyclopedia
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.

/* <pre><nowiki> */



function mathfixer() {

    var txt = document.editform.wpTextbox1;



    // Convert minus sign HTML entities into actual minus signs (overlaps with dashfixer.js)

    txt.value = txt.value.replace(/(&#x2212;|&#8722;|&minus;)/g, '−');



    // Convert times sign HTML entities into actual times signs

    txt.value = txt.value.replace(/(&#x00D7;|&#215;|&times;)/g, '×');



    // Convert plusorminus sign HTML entities into actual plusorminus signs

    txt.value = txt.value.replace(/(&#x00B1;|&#177;|&plusmn;)/g, '±');



    // Convert hyphen next to a number into a minus sign character

    txt.value = txt.value.replace(/([^a-zA-Z0-9\,\_\{])-(\d)/g, '$1−$2');



    // Changes 2x3 to 2×3

    txt.value = txt.value.replace(/(\d\s?)x(\s?\d)/g, '$1×$2');



    // Changes 10^3 to 10<sup>3</sup>

//    txt.value = txt.value.replace(/(\d+)\^(\d+)/g, '$1<sup>$2</sup>');

    

    // Changes x^3 to x<sup>3</sup>

    txt.value = txt.value.replace(/([0-9a-zA-Z])\^(\d+)/g, '$1<sup>$2</sup>');



    // Changes <sup> tags inside <math> tags back into carets

    // (don't know of a way to exclude them from the above statement)

    txt.value = txt.value.replace(/<math>(.*)<sup>(\d+)<\/sup>(.*)<\/math>/g, '<math>$1^$2$3</math>');



    // Changes 2 +/- 3 to 2±3

    txt.value = txt.value.replace(/(\s|\d)\+\/?(-|−|-)(\s|\d)/g, '$1±$3');



    // Add a tag to the summary box

    var txt = document.editform.wpSummary;

    var summary = "[[User:Omegatron#Regular expressions|Regex math character fixer]]";

	if (txt.value.indexOf(summary) == -1) {

		if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {

			txt.value += " | ";

		}

		txt.value += summary;

	}



    // Press the diff button to check it

    document.editform.wpDiff.click()

}



addOnloadHook(function () {

    if(document.forms.editform) {

        mw.util.addPortletLink('p-cactions', 'javascript:mathfixer()', '±', 'ca-mathfixer', 'Fixes some math characters', '', '');

    }

});



/* </nowiki></pre> */
From Wikipedia, the free encyclopedia
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.

/* <pre><nowiki> */



function mathfixer() {

    var txt = document.editform.wpTextbox1;



    // Convert minus sign HTML entities into actual minus signs (overlaps with dashfixer.js)

    txt.value = txt.value.replace(/(&#x2212;|&#8722;|&minus;)/g, '−');



    // Convert times sign HTML entities into actual times signs

    txt.value = txt.value.replace(/(&#x00D7;|&#215;|&times;)/g, '×');



    // Convert plusorminus sign HTML entities into actual plusorminus signs

    txt.value = txt.value.replace(/(&#x00B1;|&#177;|&plusmn;)/g, '±');



    // Convert hyphen next to a number into a minus sign character

    txt.value = txt.value.replace(/([^a-zA-Z0-9\,\_\{])-(\d)/g, '$1−$2');



    // Changes 2x3 to 2×3

    txt.value = txt.value.replace(/(\d\s?)x(\s?\d)/g, '$1×$2');



    // Changes 10^3 to 10<sup>3</sup>

//    txt.value = txt.value.replace(/(\d+)\^(\d+)/g, '$1<sup>$2</sup>');

    

    // Changes x^3 to x<sup>3</sup>

    txt.value = txt.value.replace(/([0-9a-zA-Z])\^(\d+)/g, '$1<sup>$2</sup>');



    // Changes <sup> tags inside <math> tags back into carets

    // (don't know of a way to exclude them from the above statement)

    txt.value = txt.value.replace(/<math>(.*)<sup>(\d+)<\/sup>(.*)<\/math>/g, '<math>$1^$2$3</math>');



    // Changes 2 +/- 3 to 2±3

    txt.value = txt.value.replace(/(\s|\d)\+\/?(-|−|-)(\s|\d)/g, '$1±$3');



    // Add a tag to the summary box

    var txt = document.editform.wpSummary;

    var summary = "[[User:Omegatron#Regular expressions|Regex math character fixer]]";

	if (txt.value.indexOf(summary) == -1) {

		if (txt.value.match(/[^\*\/\s][^\/\s]?\s*$/)) {

			txt.value += " | ";

		}

		txt.value += summary;

	}



    // Press the diff button to check it

    document.editform.wpDiff.click()

}



addOnloadHook(function () {

    if(document.forms.editform) {

        mw.util.addPortletLink('p-cactions', 'javascript:mathfixer()', '±', 'ca-mathfixer', 'Fixes some math characters', '', '');

    }

});



/* </nowiki></pre> */

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook