π½πΉπΏππ°π½π³π:PiRSquared17/gothic.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (β-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (β-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/*********************************************************
* Gothic Wikipedia transliterator
*********************************************************/
/**
* Actually clone content, and transliterate
*
* @param event The event: event.data.outputstyle (see convertStyle args 2,3)
* @returns nothing (undefined)
*/
function doConv(event) {
var $ = jQuery;
if ($("#mw-content-text-clone").length)
$("#mw-content-text-clone").remove();
//console.log("Entered doConv, (possibly removed old clone)");
// get target style
var targetstyle = event.data.outputstyle;
var contentClone;
$("#mw-content-text").show();
contentClone = $("#mw-content-text").clone();
contentClone.attr("id", "mw-content-text-clone");
convertStyle(contentClone, "Latn", targetstyle);
convertStyle(contentClone, "Goth", targetstyle);
convertStyle(contentClone, "Diac", targetstyle);
$("#mw-content-text").hide();
if (targetstyle == "Goth")
contentClone.addClass("content-Goth");
else
contentClone.addClass("content-" + targetstyle);
contentClone.insertAfter("#mw-content-text");
$(".click-Latn").click({"outputstyle": "Latn"}, doConv);
$(".click-Goth").click({"outputstyle": "Goth"}, doConv);
$(".click-Diac").click({"outputstyle": "Diac"}, doConv);
}
// any errors? Fix them
var Goth_to_Latn = { // gothic to latin substitutions
"π³πΏπ½ πΌππ":"DΓΊn MΓ³r",
"β’π°β’": "β’1β’",
"β’π±β’": "β’2β’",
"β’π²β’": "3",
"β’π³β’": "4",
"β’π΄β’": "5",
"β’π΅β’": "6",
"β’πΆβ’": "7",
"β’π·β’": "8",
"β’πΈβ’": "9",
"β’πΉβ’": "10",
"π°": "a",
"π±": "b",
"π³": "d",
"π΄": "e",
"π": "f",
"π²": "g",
"π·": "h",
"πΉ": "i",
"πΎ": "j",
"πΊ": "k",
"π»": "l",
"πΌ": "m",
"π½": "n",
"π": "o",
"π": "p",
"π΅": "q",
"π": "r",
"π": "s",
"π": "t",
"πΏ": "u",
"π
": "w",
"π": "x",
"πΆ": "z",
"πΈ": "ΓΎ",
"π": "Ζ"
};
var Goth_to_Diac = { // gothic to latin substitutions
"π³πΏπ½ πΌππ":"DΓΊn MΓ³r",
"π°ππ°πΉππΆ":"afaΓrz",
"π°ππ³π°πΏ":"afdΓ‘u",
"π°ππ³ππΎ":"afdΕj",
"π°ππ·π°πΌπ":"afhamΕ",
"π°ππ·ππ»π":"afhΕlΕ",
"π°ππ»π΄π":"aflΔt",
"π°πππ
π°πΉππ±":"afswaΓrb",
"π°π·ππ°πΏπ³π":"ahtaudΕ",
"π°πππ°πΏπ":"aftaΓΊr",
"π°π·ππ°πΏππ΄":"ahtautΔ",
"π°πΉπ²πΉπ½π":"aiginΕ",
"π°πΉππΈπ°":"aΓrΓΎa",
"π°πΉππΈπΉπ":"aΓrΓΎis",
"π°π»π³ππΌπ":"aldΕmΕ",
"π°π»πΎπ°π»π΄πΉπΊπ":"aljaleikΕ",
"π°π»πΎπ°πΈππ":"aljaΓΎrΕ",
"π°π»π»π°π
π°πΏππππ
":"allawaΓΊrstw",
"π°π»π»π°πΈππ":"allaΓΎrΕ",
"π°π½π°π±πΏππ½":"anabΕ«sn",
"π°π½π°π·π°πΌπ":"anahamΕ",
"π°π½π°ππππ³":"anastΕd",
"π°π½π°ππππ³π΄πΉπ½":"anastΕdein",
"π°π½π³π°π½π΄πΌ":"andanΔm",
"π°π½π³π·π°πΌπ":"andhamΕ",
"π°π½π³ππ°πΉπ":"andsaΓΖ",
"π°π½π³πππΊ":"andsΕk",
"π°π½π³π
π°πΉππΈ":"andwaΓrΓΎ",
"π°π½πΈπ°ππ»π΄πΉπΊπ":"anΓΎarleikΕ",
"π°ππ°πΏπππ°πΏπ»":"apaΓΊstaΓΊl",
"π°ππΌπ°π·π°πΉπππΉ":"armahaΓrti",
"π°ππΌπ°πΉπ":"armaiΕ",
"π°πππ°πΉπ":"atsaΓΖ",
"π°πΏπππ":"aΓΊftΕ",
"π°π½π³π»π΄π":"andlΔt",
"π°π½π³πππ°πΏπ":"andstaΓΊr",
"π°π½π³ππΉπ»π":"andtilΕ",
"π°πππ΄πΊ":"attΔk",
"π°πΏπ²π°π³π°πΏππ":"augadaΓΊrΕ",
"π°πΆπ΄π":"azΔt",
"π°πΆπ²π":"azgΕ",
"π±π°πΉππ²π":"bairgΕ",
"π±π°πΉππ²":"baΓrg",
"π±π°πΉπ":"baΓr",
"π±π°π½π½π
πΉπ³":"bannwΔ«d",
"π±π°πΏππ²":"baΓΊrg",
"π±πΉπ±π°πΏππ²":"bibaΓΊrg",
"π±πΉπ»π°πΉπ²π":"bilaigΕ",
"π±πΉππ°πΏπ±π":"biraubΕ",
"π±πΉππΏπ½":"birΕ«n",
"π±πΉππ
π°πΉππ±":"biswaΓrb",
" π±πΉπΈπ΄ ":" biΓΎΔ ",
"π±πΉπΈπ΄ ":"biΓΎΔ ",
"π±π»π΄π":"blΔs",
"π±ππΏπΊ":"brΕ«k",
"π±ππ":"bΕt",
"π³πΉπππ°πΉπ":"distaΓr",
"π³ππ΄πΉπ²π":"dreigΕ",
"π³ππΉπΏππ":"driusΕ",
"π³πππ±π½":"drΕbn",
"π³πΏππππ³":"dustΕd",
"π΄π³πΏπΌ":"Δdum",
"π΄π³πΏπ½":"Δdun",
"π΄πΌπ°πΉππΎ":"Δmaitj",
"ππ°πΉπ·πΏ":"faΓhu",
"ππ°πΉππ²πΏπ½":"faΓrgun",
"ππ°πΉππΉπ½":"faΓrin",
"ππ°πΉππΉπ½π":"faΓrinΕ",
"ππ°πΉππ½":"faΓrn",
"ππ°πΉππ
π΄πΉπ":"faΓrweit",
"ππ°ππΈπ":"farΓΎΕ",
" ππ°πΏπ":" faΓΊr",
"ππ°πΏππ°πΌπ΄π»":"faΓΊramΔl",
"ππ°πΏππ
π΄πΉπ":"faΓΊrweis",
"ππ°πΏππΈπΉπΆπ΄πΉ":"faΓΊrΓΎizei",
"ππ΄π·":"fΔh",
"ππ΄π·π°π±":"fΔhab",
"ππ»ππΊ":"flΕk",
"πππ³":"fΕd",
"ππΏπ»π»π ":"fullΕ ",
"ππΏπ»π»π,":"fullΕ,",
"π²π°π±π°πΏπ":"gabaΓΊr",
"π²π°π·π°πΌπ":"gahamΕ",
"π²π°πΉππ½":"gaΓrn",
"π²π°ππΏπ»":"gasΕ«l",
"π²π°ππ°πΉπ":"gataΓr",
"π²π°ππ°πΉπ":"gaΖaΓr",
"π²π°π»π΄πΉπΊπ":"galeikΕ",
"π²π°πΌπ°πΏππ²":"gamaΓΊrg",
"π²π°πΌππ":"gamΕt",
"π²π°π½π°πΏπ·":"ganaΓΊh",
"π²π°ππ΄π·ππ½":"garΔhsn",
"π²π°ππΏπ½":"garΕ«n",
"π²π°ππ
π":"garwΕ",
"π²π°πππ":"gastΕ",
"π²π°πΏπ½π»π΄π³":"gaunlΔd",
"π²π°πΏπ½π":"gaunΕ",
"π²π°π
π΄πΉππ":"gaweisΕ",
"π²ππ³π°πΊπΏπ½π³":"gΕdakund",
"π²ππ°π½π":"granΕ",
"π²ππ΄ππ":"grΔft",
"π·π°πΉππ":"haΓrt",
"π·πππΉπ½π":"hΕrinΕ",
"π·πππ":"hrΕp",
"π·πΏπ»π":"hulΕ",
"π·πΏπ½":"hΕ«n",
"πΉπ
π΄ ":"iwΔ ",
"πΊπ°ππΉπ»π»π":"kapillo",
"πΊπ°πΏπ":"kaΓΊr",
"πΊπ»πΉππΌπ":"klismΕ",
"π»π°πΈπ":"laΓΎΕ",
"π»π΄πΉπΊπ":"leikΕ",
"π»π΄π
":"lΔw ",
"πΌπ°πΏπΊπ":"maukΕ",
"πΌπ΄π":"mΔr",
"πΌπΏπΉππΎπ":"muirjΕ",
"π½π°πΏπ·":"naΓΊh",
"π½πππ°":"nΕta",
" π½πΏπ· ":" nΕ«h ",
"π½πΏπ½πΏ":"nΕ«nΕ«",
" π ":" Ε ",
"ππ ":"Εs ",
"ππ,":"Εs,",
"ππ°πΉπ³π":"paidΕ",
"πππ°πΉπΆπ±π
ππ°πΉπ":"praΓzbwtaΓr",
"π΅π°πΉππΈπ":"qaΓrΓΎr",
"π΅π΄πΈ":"qΔΓΎ",
"ππ΄πΉπΊπΉπ½π":"reikinΕ",
"ππ΄πΉππ":"reirΕ",
"ππ΄π·ππ½":"rΔhsn",
"ππΉπ²πΉπ»π":"rigilΕ",
"ππΏπ½π°":"rΕ«na",
"ππ°πΉπ":"saΓΖ",
"ππ°π»π±π":"salbΕ",
"ππΉπ½ππ΄πΉπ½π":"sinteinΕ",
"ππ½ππ±π":"snΕbΕ",
"ππππ°πΏππ":"sprautΕ",
"πππ°πΊπΊπ":"stakkΕ",
"ππππΈ":"stΕΓΎ",
"ππ
π°πΉππ±":"swaΓrb",
" π½πΏ ":" nΕ« ",
" π½πΏ,":" nΕ«,",
"ππΏπ½π³ππ":"sundrΕ",
"ππ
π°ππ
π΄":"swaswΔ",
" ππ
π΄ ":" swΔ ",
"ππ
π΄π":"swΔs",
"ππ
πΉπ²π»π":"swiglΕ",
"ππ΄π·πΏπ½π³":"tΔhund",
"ππ΄πΊπ°":"tΔka",
"ππ΄π
":"tΔw",
"ππΉπΌππΎπ":"timrjΕ",
"πΏππ°ππ·π°πΌπ":"ufarhamΕ",
"πΏππ·π»ππ·":"ufhlΕh",
"πΏπ½π»π΄":"unlΔ",
"πΏπππΏπΌ":"urrΕ«m",
"πΏπππ°ππΈπ":"usfarΓΎΕ",
"πΏππ»π΄π":"uslΔt",
"πΏππΌπ΄π":"usmΔr",
"πΏπππΉπ½π³π":"ussindΕ",
"πΏππππΊ":"ussΕk",
"πΏππππΉπ»π»π":"usspillΕ",
"πΏππ
π°πΉππ":"uswaΓrp",
" πΏππ° ":" Ε«ta ",
"πΏππ°π½π°":"Ε«tana",
"πΏππ°πΈππ":"Ε«taΓΎrΕ",
"πΏππ²π°π²π²":"Ε«tgagg",
"π
π°ππ³π":"wardΕ",
"π
π°πΉππ":"waΓrp",
"π
π°πΉππΈ":"waΓrΓΎ",
"π
π°πΏππ³":"waΓΊrd",
"π
π°πΏππΊ":"waΓΊrk",
"π
π°πΏππ":"waΓΊrp",
"π
π°πΏππππ
":"waΓΊrstw",
"π
πΉππΊπ":"wiskΕ",
"π
πΉππππ":"wistrΕ",
"π
ππΈπ΄πΉ":"wΕΓΎei",
"πΈπ°πΉ ":"ΓΎΓ‘i ",
"πΈπ°πΉπΌ ":"ΓΎΓ‘im ",
"πΈπ°πΉππ·":"ΓΎaΓrh",
"πΈπ°πΏπππ":"ΓΎaΓΊrft",
"πΈπ°πΏππ":"ΓΎaΓΊrp",
"πΈπ ":"ΓΎΕ ",
"πΈπ,":"ΓΎΕ,",
"πΈππΏππ":"ΓΎrΕ«ts",
" πΈπΏ ":" ΓΎΕ« ",
" πΈπΏ,":" ΓΎΕ«,",
"πΈπΏππΏπ½π³":"ΓΎΕ«sund",
"π°": "a",
"π±": "b",
"π³": "d",
"π΄": "e",
"π": "f",
"π²": "g",
"π·": "h",
"πΉ": "i",
"πΎ": "j",
"πΊ": "k",
"π»": "l",
"πΌ": "m",
"π½": "n",
"π": "o",
"π": "p",
"π΅": "q",
"π": "r",
"π": "s",
"π": "t",
"πΏ": "u",
"π
": "w",
"π": "x",
"πΆ": "z",
"πΈ": "ΓΎ",
"π": "Ζ"
};
// again, please report any errors, please include replacement for this
var Latn_to_Goth = { // latin to gothic substitutions
"a": "π°",
"b": "π±",
"d": "π³",
"e": "π΄",
"f": "π",
"g": "π²",
"h": "π·",
"i": "πΉ",
"j": "πΎ",
"k": "πΊ",
"l": "π»",
"m": "πΌ",
"n": "π½",
"o": "π",
"p": "π",
"q": "π΅",
"r": "π",
"s": "π",
"t": "π",
"u": "πΏ",
"w": "π
",
"x": "π",
"z": "πΆ",
"ΓΎ": "πΈ",
"Ζ": "π"
};
var myReplace = function(input, regexObj) {
console.log(input);
var $ = jQuery, regex = null;
if (typeof input == "undefined") return;
if (typeof input !== "string") {
var node = input[0];
if (typeof node == "undefined") node = input;
if (!("nodeType" in node)) return node;
if (node.nodeType == 3) {
node.nodeValue = myReplace(node.nodeValue, regexObj);
} else {
if ($(node).hasClass("nochange") || node.id == "wpTextbox1") return node;
if (!("childNodes" in node)) return node;
for (var i = 0, len = node.childNodes.length; i < len; i++)
myReplace($(node.childNodes[i]), regexObj);
}
return node;
} else {
for (var i in regexObj) {
if (!regexObj.hasOwnProperty(i)) continue;
regex = new RegExp(i, "g");
input = input.toLowerCase().replace(regex, regexObj[i]);
}
return input;
}
}
/**
* Convert style of text/jQuery node from one spelling style to another
*/
function convertStyle(inputhtml, inputstyle, outputstyle) {
var temp = inputhtml;
if (inputstyle == outputstyle) return inputhtml;
if (inputstyle == "Goth" && outputstyle == "Latn") {
temp = myReplace(temp, Goth_to_Latn);
} else if (inputstyle == "Latn" && outputstyle == "Goth") {
temp = myReplace(temp, Latn_to_Goth);
if (temp && temp.substr) {
temp.substr(0, 1).toUpperCase() + temp.substr(1);
}
} else if (inputstyle == "Goth" && outputstyle == "Diac") {
temp = myReplace(temp, Goth_to_Diac);
}
return temp;
}
/*
* This is code to be executed when the document is ready
* Basically, add [ gw ] [ ΘΖΏ ] [ α±α’αΎ ].
* Clicking each link converts the document to that style.
* (see doConv)
*/
$(function() {
$ = jQuery;
$("#mw-content-text").prepend($("<center class=\"nochange\"><small>[ <a href=\"javascript:void(0);\" class=\"click-Latn\">Latinska</a> ] [ <a href=\"javascript:void(0);\" class=\"click-Diac\">Diacritics</a> ] [ <a href=\"javascript:void(0);\" class=\"click-Goth\">π²πΏππΉππΊπ°</a> ]<sup><a href=\"/wiki/Wikipedia:Stylistic_and_font_options\" title=\"Style and font help\">?</a></sup></small></center>"));
$(".click-Goth").click({"outputstyle": "Goth"}, doConv);
$(".click-Latn").click({"outputstyle": "Latn"}, doConv);
$(".click-Diac").click({"outputstyle": "Diac"}, doConv);
});