MediaWiki:Edittools.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(Undo revision 8128 by The Clay Camel (talk)) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
var charinsert = { | |||
"Standard":[ | |||
[ "’", ["‚","‘"], ["“","”"], ["‘","’"], ["«","»"], ["‹","›"], ["–","","","Hyphen"] ], | |||
[ "+", ["−","","","Minus"], "#", "*", "§", "$", "¿", "¡", "‣", "•", ["〈","〉"], "…" ], | |||
[ [" ","","","Non-breakable space"], ["[[","]]","","Wikilink"], "|", ["{{","}}"], ["[[User:The Clay Camel|The Clay Camel]] 18:02, 13 March 2012 (UTC)","","","Signature"] ], | |||
[ ["<poem>","<\/poem>"], ["<tt>","<\/tt>"], ["<nowiki>","<\/nowiki>"], ["<pre>","<\/pre>"], ["<code>","<\/code>"], | |||
["<noinclude>","<\/noinclude>"], ["<includeonly>","<\/includeonly>"], ["[[Category:","]]"], ["[[File:","]]"], | |||
["{{filepath:","}}"], ["{{DEFAULTSORT:","}}"], "{{NameSorter}}", ["#REDIRECT [[","]]"] ] | |||
], | |||
"Latin":[ | |||
["A", "a", "Á", "á", "À", "à", "Â", "â", "Ä", "ä", "Ǎ", "ǎ", "Ă", "ă", "Ā", "ā", "Ã", "ã", "Å", "å", "Ą", "ą", | |||
"Æ", "æ", "Ǣ", "ǣ", "B", "b", "C", "c", "Ć", "ć", "Ċ", "ċ", "Ĉ", "ĉ", "Č", "č", "Ç", "ç", "D", "d", "Ď", "ď", | |||
"Đ", "đ", "Ḍ", "ḍ", "Ð", "ð", "E", "e", "É", "é", "È", "è", "Ė", "ė", "Ê", "ê", "Ë", "ë", "Ě", "ě", "Ĕ", "ĕ", | |||
"Ē", "ē", "Ẽ", "ẽ", "Ę", "ę", "Ə", "ə", "F", "f", "G", "g", "Ġ", "ġ", "Ĝ", "ĝ", "Ğ", "ğ", "Ģ", "ģ", "H", "h", | |||
"Ĥ", "ĥ", "Ħ", "ħ", "Ḥ", "ḥ", "I", "i", "İ", "ı", "Í", "í", "Ì", "ì", "Î", "î", "Ï", "ï", "Ǐ", "ǐ", "Ĭ", "ĭ", | |||
"Ī", "ī", "Ĩ", "ĩ", "Į", "į", "J", "j", "Ĵ", "ĵ", "K", "k", "Ķ", "ķ", "L", "l", "Ĺ", "ĺ", "Ŀ", "ŀ", "Ľ", "ľ", | |||
"Ļ", "ļ", "Ł", "ł", "Ḷ", "ḷ", "Ḹ", "ḹ", "M", "m", "Ṃ", "ṃ", "N", "n", "Ń", "ń", "Ň", "ň", "Ñ", "ñ", "Ņ", "ņ", | |||
"Ṇ", "ṇ", "O", "o", "Ó", "ó", "Ò", "ò", "Ô", "ô", "Ö", "ö", "Ǒ", "ǒ", "Ŏ", "ŏ", "Ō", "ō", "Õ", "õ", "Ǫ", "ǫ", | |||
"Ő", "ő", "Ø", "ø", "Œ", "œ", "P", "p", "Q", "q", "R", "r", "Ŕ", "ŕ", "Ř", "ř", "Ŗ", "ŗ", "Ṛ", "ṛ", "Ṝ", "ṝ", | |||
"S", "s", "Ś", "ś", "Ŝ", "ŝ", "Š", "š", "Ş", "ş", "Ṣ", "ṣ", "ß", "T", "t", "Ť", "ť", "Ţ", "ţ", "Ṭ", "ṭ", "Þ", | |||
"þ", "U", "u", "Ú", "ú", "Ù", "ù", "Û", "û", "Ü", "ü", "Ǔ", "ǔ", "Ŭ", "ŭ", "Ū", "ū", "Ũ", "ũ", "Ů", "ů", "Ų", | |||
"ų", "Ű", "ű", "Ǘ", "ǘ", "Ǜ", "ǜ", "Ǚ", "ǚ", "Ǖ", "ǖ", "V", "v", "W", "w", "Ŵ", "ŵ", "X", "x", "Y", "y", "Ý", "ý", | |||
"Ŷ", "ŷ", "Ÿ", "ÿ", "Ỹ", "ỹ", "Ȳ", "ȳ", "Z", "z", "Ź", "ź", "Ż", "ż", "Ž", "ž", "ß", "Ð", "ð", "Þ", "þ", "Ə", "ə"] | |||
], | |||
"Classical Greek":[ | |||
{ "lang":"grc", "font-family":"'Arial Unicode MS','Lucida Sans Unicode','MS Mincho',Arial,sans-serif;" }, | |||
["Α", "α", "Ά", "ά", "Β", "β", "Γ", "γ", "Δ", "δ", "Ε", "ε", "Έ", "έ", "Ζ", "ζ", "Η", "η", "Ή", "ή", "Θ", "θ", "Ι", | |||
"ι", "Ί", "ί", "Ϊ", "ϊ", "ΐ", "Κ", "κ", "Λ", "λ", "Μ", "μ", "Ν", "ν", "Ξ", "ξ", "Ο", "ο", "", "Ό", "ό", "Π", "π", | |||
"Ρ", "ρ", "Σ", "σ", "ς", "Τ", "τ", "Υ", "υ", "Ϋ", "ϋ", "Ύ", "ύ", "ΰ", "Φ", "φ", "Χ", "χ", "Ψ", "ψ", "Ω", "ω", "Ώ", | |||
"ώ", ";", "·", "ἀ", "ἁ", "ὰ", "ᾶ", "ἂ", "ἃ", "ἄ", "ἅ", "ἆ", "ἇ", "ᾳ", "ᾀ", "ᾁ", "ᾴ", "ᾲ", "ᾷ", "ᾄ", "ᾅ", "ᾂ", "ᾃ", | |||
"ᾆ", "ᾇ", "ἐ", "ἑ", "ὲ", "ἔ", "ἕ", "ἒ", "ἓ", "ἠ", "ἡ", "ὴ", "ῆ", "ἤ", "ἢ", "ἣ", "ἥ", "ἦ", "ἧ", "ῃ", "ῄ", "ῂ", "ῇ", | |||
"ᾐ", "ᾑ", "ᾔ", "ᾒ", "ᾕ", "ᾓ", "ᾖ", "ᾗ", "ἰ", "ἱ", "ὶ", "ῖ", "ἴ", "ἲ", "ἵ", "ἳ", "ἶ", "ἷ", "ὸ", "ὀ", "ὁ", "ὄ", "ὅ", | |||
"ὂ", "ὃ", "ῤ", "ῥ", "ὐ", "ὑ", "ὺ", "ῦ", "ὔ", "ὕ", "ὒ", "ὓ", "ὖ", "ὗ", "ὠ", "ὡ", "ὼ", "ῶ", "ὤ", "ὢ", "ὥ", "ὣ", "ὦ", | |||
"ὧ", "ῳ", "ῴ", "ῲ", "ῷ", "ᾠ", "ᾡ", "ᾤ", "ᾢ", "ᾥ", "ᾣ", "ᾦ", "ᾧ", "`", "᾿", "῾", "῍", "῎", "῏", "῟", "῞", "῝", "῍", | |||
"῎", "Ϝ", "ϝ", "Ϙ", "ϙ", "Ϡ", "ϡ"] | |||
], | |||
"Cyrillic":[ | |||
["А", "а", "Б", "б", "В", "в", "Г", "г", "Ґ", "ґ", "Ѓ", "ѓ", "Д", "д", "Ђ", "ђ", "Е", "е", "Ё", "ё", "Є", "є", | |||
"Ж", "ж", "З", "з", "Ѕ", "ѕ", "И", "и", "І", "і", "Ї", "ї", "Й", "й", "Ј", "ј", "К", "к", "Ќ", "ќ", "Л", "л", | |||
"Љ", "љ", "М", "м", "Н", "н", "Њ", "њ", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "Ћ", "ћ", "У", "у", | |||
"Ў", "ў", "Ф", "ф", "Х", "х", "Ц", "ц", "Ч", "ч", "Џ", "џ", "Ш", "ш", "Щ", "щ", "Ъ", "ъ", "Ы", "ы", "Ь", "ь", | |||
"Э", "э", "Ю", "ю", "Я", "я", "Ә", "ә", "Ө", "ө", "Ғ", "ғ", "Җ", "җ", "Қ", "қ", "Ҝ", "ҝ", "Ң", "ң", "Ү", "ү", | |||
"Ұ", "ұ", "Ҳ", "ҳ", "Ҹ", "ҹ", "Һ", "һ", "Ҕ", "ҕ", "Ӣ", "ӣ", "Ӯ", "ӯ", "Ҙ", "ҙ", "Ҡ", "ҡ", "Ҥ", "ҥ", "Ҫ", "ҫ", | |||
"Ӑ", "ӑ", "Ӓ", "ӓ", "Ӕ", "ӕ", "Ӗ", "ӗ", "Ӱ", "ӱ", "Ӳ", "ӳ", "Ӹ", "ӹ", "Ӏ", "Ҟ", "ҟ", "Ҧ", "ҧ", "Ҩ", "ҩ", "Ҭ", | |||
"ҭ", "Ҵ", "ҵ", "Ҷ", "ҷ", "Ҽ", "ҽ", "Ҿ", "ҿ", "Ӂ", "ӂ", "Ӄ", "ӄ", "Ӈ", "ӈ", "Ӌ", "ӌ", "Ӛ", "ӛ", "Ӝ", "ӝ", "Ӟ", | |||
"ӟ", "Ӡӡ", "Ӥ", "ӥ", "Ӧ", "ӧ", "Ӫ", "ӫ", "Ӵ", "ӵ"] | |||
], | |||
"Vietnamese":[ | |||
{ "lang":"vi" }, | |||
["À", "à", "Ả", "ả", "Á", "á", "Ạ", "ạ", "Ã", "ã", "Ă", "ă", "Ằ", "ằ", "Ẳ", "ẳ", "Ẵ", "ẵ", "Ắ", "ắ", "Ặ", | |||
"ặ", "Â", "â", "Ầ", "ầ", "Ẩ", "ẩ", "Ẫ", "ẫ", "Ấ", "ấ", "Ậ", "ậ", "Đ", "đ", "È", "è", "Ẻ", "ẻ", "Ẽ", "ẽ", | |||
"É", "é", "Ẹ", "ẹ", "Ê", "ê", "Ề", "ề", "Ể", "ể", "Ễ", "ễ", "Ế", "ế", "Ệ", "ệ", "Ỉ", "ỉ", "Ĩ", "ĩ", "Í", | |||
"í", "Ị", "ị", "Ì", "ì", "Ỏ", "ỏ", "Ó", "ó", "Ọ", "ọ", "Ò", "ò", "Õ", "õ", "Ô", "ô", "Ồ", "ồ", "Ổ", "ổ", | |||
"Ỗ", "ỗ", "Ố", "ố", "Ộ", "ộ", "Ơ", "ơ", "Ờ", "ờ", "Ở", "ở", "Ỡ", "ỡ", "Ớ", "ớ", "Ợ", "ợ", "Ù", "ù", "Ủ", | |||
"ủ", "Ũ", "ũ", "Ú", "ú", "Ụ", "ụ", "Ư", "ư", "Ừ", "ừ", "Ử", "ử", "Ữ", "ữ", "Ứ", "ứ", "Ự", "ự", "Ỳ", "ỳ", | |||
"Ỷ", "ỷ", "Ỹ", "ỹ", "Ỵ", "ỵ", "Ý", "ý"] | |||
] | |||
}; | |||
addOnloadHook(function() { | |||
addOnloadHook(function() { | |||
var box; | |||
function loadCommonsTools() { | |||
function selectSubset() { | |||
var pp = box.getElementsByTagName("p"); | |||
for (var i=0; i<pp.length; ++i) { | |||
pp[i].style["display"] = "none"; | |||
} | |||
// show/create current subset | |||
var id = sel.options[sel.selectedIndex].value; | |||
var p = document.getElementById(id); | |||
if(!p) { | |||
p = document.createElement('p'); | |||
p.setAttribute("id", id); | |||
p.setAttribute("class", "mwEdittoolsLanguage"); | |||
createTokens(p, charinsert[id.substr("mwEdittools--".length)]); | |||
box.appendChild(p); | |||
} | |||
p.style["display"] = "inline"; | |||
} | |||
function createTokens(paragraph, outerArr) { | |||
var buttons; | |||
function insertInner(elem) { | |||
var a = false, ins; | |||
switch(typeof(elem)) { | |||
case("string"): { | |||
ins = function() { | |||
insertTags(elem, "", ""); | |||
return false; | |||
}; | |||
a = document.createElement("a"); | |||
a.setAttribute("title", elem); | |||
a.appendChild(document.createTextNode(elem)); | |||
} break; | |||
case("array"): | |||
case("object"): { | |||
ins = function() { | |||
insertTags(elem[0], elem[1] || "", elem[2] || ""); | |||
return false; | |||
}; | |||
a = document.createElement("a"); | |||
a.setAttribute("title", elem[3] || (elem[0] + (elem[2] || "…") + (elem[1] || ""))); | |||
a.appendChild(document.createTextNode(elem[0] + (elem[1] || ""))); | |||
}; break; | |||
} | |||
if(a !== false) { | |||
a.onclick = ins; | |||
a.setAttribute("href", "#"); | |||
a.setAttribute("class", "mwEdittoolsButton"); | |||
buttons.appendChild(document.createTextNode(" ")); | |||
buttons.appendChild(a); | |||
} | |||
} | |||
function insertOuter(innerArr) { | |||
switch(typeof(innerArr)) { | |||
case("object"): | |||
case("array"): | |||
var obj = false; | |||
if(typeof(innerArr["class"]) === "string") { | |||
obj = true; | |||
paragraph.setAttribute("class", innerArr["class"]); | |||
} | } | ||
if(typeof(innerArr["lang"]) === "string") { | |||
obj = true; | |||
paragraph.setAttribute("lang", innerArr["lang"]); | |||
} | |||
if(typeof(innerArr["direction"]) === "string") { | |||
obj = true; | |||
paragraph.style.direction = innerArr["direction"]; | |||
} | |||
if(typeof(innerArr["font-family"]) === "string") { | |||
obj = true; | |||
paragraph.style.fontFamily = innerArr["font-family"]; | |||
} | |||
if(typeof(innerArr["font-size"]) === "string") { | |||
obj = true; | |||
paragraph.style.fontSize = innerArr["font-size"]; | |||
} | |||
if(obj) { | |||
return false; | |||
} | |||
buttons = document.createElement("span"); | |||
buttons.setAttribute("class", "mwEdittoolsButtons"); | |||
for(var i = 0; i<innerArr.length; ++i) { | |||
insertInner(innerArr[i]); | |||
} | |||
paragraph.appendChild(buttons); | |||
return true; | |||
default: | |||
return false; | |||
} | |||
} | |||
if(outerArr.length == 0) { return; } | |||
for(var i=0; i<outerArr.length-1; ++i) { | |||
if(insertOuter(outerArr[i])) { | |||
var s = document.createElement("span"); | |||
s.appendChild(document.createTextNode("\xA0\xA0•\xA0 ")); | |||
s.style["font-weight"] = "bold"; | |||
paragraph.appendChild(s); | |||
} | } | ||
} | |||
insertOuter(outerArr[outerArr.length-1]); | |||
} | |||
//create drop-down select | |||
var sel = document.createElement("select"); | |||
for(var id in charinsert) { | |||
var op = document.createElement("option"); | |||
op.setAttribute("value", "mwEdittools--" + id); | |||
op.appendChild(document.createTextNode(id)); | |||
sel.appendChild(op); | |||
} | |||
sel.setAttribute("title", "Zeichensatz auswählen"); | |||
sel.onchange = sel.onkeyup = selectSubset; | |||
box.appendChild(sel); | |||
box.appendChild(document.createTextNode(" ")); | |||
selectSubset(); | |||
return false; | |||
} | } | ||
//get div#mw-editTools | |||
box = document.getElementById('mw-editTools'); | |||
if(!box) { return; } | |||
box = box.appendChild(document.createElement("div")); | |||
box.setAttribute("id", "specialchars"); | |||
box.style.cssText = 'margin-top:5px; border:1px solid #aaaaaa; padding:2px;'; | |||
loadCommonsTools(); | |||
}) | |||
}); |
Latest revision as of 18:56, 13 March 2012
var charinsert = { "Standard":[ [ "’", ["‚","‘"], ["“","”"], ["‘","’"], ["«","»"], ["‹","›"], ["–","","","Hyphen"] ], [ "+", ["−","","","Minus"], "#", "*", "§", "$", "¿", "¡", "‣", "•", ["〈","〉"], "…" ], [ [" ","","","Non-breakable space"], ["[[","]]","","Wikilink"], "|", ["{{","}}"], ["[[User:The Clay Camel|The Clay Camel]] 18:02, 13 March 2012 (UTC)","","","Signature"] ], [ ["<poem>","<\/poem>"], ["<tt>","<\/tt>"], ["<nowiki>","<\/nowiki>"], ["<pre>","<\/pre>"], ["<code>","<\/code>"], ["<noinclude>","<\/noinclude>"], ["<includeonly>","<\/includeonly>"], ["[[Category:","]]"], ["[[File:","]]"], ["{{filepath:","}}"], ["{{DEFAULTSORT:","}}"], "{{NameSorter}}", ["#REDIRECT [[","]]"] ] ], "Latin":[ ["A", "a", "Á", "á", "À", "à", "Â", "â", "Ä", "ä", "Ǎ", "ǎ", "Ă", "ă", "Ā", "ā", "Ã", "ã", "Å", "å", "Ą", "ą", "Æ", "æ", "Ǣ", "ǣ", "B", "b", "C", "c", "Ć", "ć", "Ċ", "ċ", "Ĉ", "ĉ", "Č", "č", "Ç", "ç", "D", "d", "Ď", "ď", "Đ", "đ", "Ḍ", "ḍ", "Ð", "ð", "E", "e", "É", "é", "È", "è", "Ė", "ė", "Ê", "ê", "Ë", "ë", "Ě", "ě", "Ĕ", "ĕ", "Ē", "ē", "Ẽ", "ẽ", "Ę", "ę", "Ə", "ə", "F", "f", "G", "g", "Ġ", "ġ", "Ĝ", "ĝ", "Ğ", "ğ", "Ģ", "ģ", "H", "h", "Ĥ", "ĥ", "Ħ", "ħ", "Ḥ", "ḥ", "I", "i", "İ", "ı", "Í", "í", "Ì", "ì", "Î", "î", "Ï", "ï", "Ǐ", "ǐ", "Ĭ", "ĭ", "Ī", "ī", "Ĩ", "ĩ", "Į", "į", "J", "j", "Ĵ", "ĵ", "K", "k", "Ķ", "ķ", "L", "l", "Ĺ", "ĺ", "Ŀ", "ŀ", "Ľ", "ľ", "Ļ", "ļ", "Ł", "ł", "Ḷ", "ḷ", "Ḹ", "ḹ", "M", "m", "Ṃ", "ṃ", "N", "n", "Ń", "ń", "Ň", "ň", "Ñ", "ñ", "Ņ", "ņ", "Ṇ", "ṇ", "O", "o", "Ó", "ó", "Ò", "ò", "Ô", "ô", "Ö", "ö", "Ǒ", "ǒ", "Ŏ", "ŏ", "Ō", "ō", "Õ", "õ", "Ǫ", "ǫ", "Ő", "ő", "Ø", "ø", "Œ", "œ", "P", "p", "Q", "q", "R", "r", "Ŕ", "ŕ", "Ř", "ř", "Ŗ", "ŗ", "Ṛ", "ṛ", "Ṝ", "ṝ", "S", "s", "Ś", "ś", "Ŝ", "ŝ", "Š", "š", "Ş", "ş", "Ṣ", "ṣ", "ß", "T", "t", "Ť", "ť", "Ţ", "ţ", "Ṭ", "ṭ", "Þ", "þ", "U", "u", "Ú", "ú", "Ù", "ù", "Û", "û", "Ü", "ü", "Ǔ", "ǔ", "Ŭ", "ŭ", "Ū", "ū", "Ũ", "ũ", "Ů", "ů", "Ų", "ų", "Ű", "ű", "Ǘ", "ǘ", "Ǜ", "ǜ", "Ǚ", "ǚ", "Ǖ", "ǖ", "V", "v", "W", "w", "Ŵ", "ŵ", "X", "x", "Y", "y", "Ý", "ý", "Ŷ", "ŷ", "Ÿ", "ÿ", "Ỹ", "ỹ", "Ȳ", "ȳ", "Z", "z", "Ź", "ź", "Ż", "ż", "Ž", "ž", "ß", "Ð", "ð", "Þ", "þ", "Ə", "ə"] ], "Classical Greek":[ { "lang":"grc", "font-family":"'Arial Unicode MS','Lucida Sans Unicode','MS Mincho',Arial,sans-serif;" }, ["Α", "α", "Ά", "ά", "Β", "β", "Γ", "γ", "Δ", "δ", "Ε", "ε", "Έ", "έ", "Ζ", "ζ", "Η", "η", "Ή", "ή", "Θ", "θ", "Ι", "ι", "Ί", "ί", "Ϊ", "ϊ", "ΐ", "Κ", "κ", "Λ", "λ", "Μ", "μ", "Ν", "ν", "Ξ", "ξ", "Ο", "ο", "", "Ό", "ό", "Π", "π", "Ρ", "ρ", "Σ", "σ", "ς", "Τ", "τ", "Υ", "υ", "Ϋ", "ϋ", "Ύ", "ύ", "ΰ", "Φ", "φ", "Χ", "χ", "Ψ", "ψ", "Ω", "ω", "Ώ", "ώ", ";", "·", "ἀ", "ἁ", "ὰ", "ᾶ", "ἂ", "ἃ", "ἄ", "ἅ", "ἆ", "ἇ", "ᾳ", "ᾀ", "ᾁ", "ᾴ", "ᾲ", "ᾷ", "ᾄ", "ᾅ", "ᾂ", "ᾃ", "ᾆ", "ᾇ", "ἐ", "ἑ", "ὲ", "ἔ", "ἕ", "ἒ", "ἓ", "ἠ", "ἡ", "ὴ", "ῆ", "ἤ", "ἢ", "ἣ", "ἥ", "ἦ", "ἧ", "ῃ", "ῄ", "ῂ", "ῇ", "ᾐ", "ᾑ", "ᾔ", "ᾒ", "ᾕ", "ᾓ", "ᾖ", "ᾗ", "ἰ", "ἱ", "ὶ", "ῖ", "ἴ", "ἲ", "ἵ", "ἳ", "ἶ", "ἷ", "ὸ", "ὀ", "ὁ", "ὄ", "ὅ", "ὂ", "ὃ", "ῤ", "ῥ", "ὐ", "ὑ", "ὺ", "ῦ", "ὔ", "ὕ", "ὒ", "ὓ", "ὖ", "ὗ", "ὠ", "ὡ", "ὼ", "ῶ", "ὤ", "ὢ", "ὥ", "ὣ", "ὦ", "ὧ", "ῳ", "ῴ", "ῲ", "ῷ", "ᾠ", "ᾡ", "ᾤ", "ᾢ", "ᾥ", "ᾣ", "ᾦ", "ᾧ", "`", "᾿", "῾", "῍", "῎", "῏", "῟", "῞", "῝", "῍", "῎", "Ϝ", "ϝ", "Ϙ", "ϙ", "Ϡ", "ϡ"] ], "Cyrillic":[ ["А", "а", "Б", "б", "В", "в", "Г", "г", "Ґ", "ґ", "Ѓ", "ѓ", "Д", "д", "Ђ", "ђ", "Е", "е", "Ё", "ё", "Є", "є", "Ж", "ж", "З", "з", "Ѕ", "ѕ", "И", "и", "І", "і", "Ї", "ї", "Й", "й", "Ј", "ј", "К", "к", "Ќ", "ќ", "Л", "л", "Љ", "љ", "М", "м", "Н", "н", "Њ", "њ", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "Ћ", "ћ", "У", "у", "Ў", "ў", "Ф", "ф", "Х", "х", "Ц", "ц", "Ч", "ч", "Џ", "џ", "Ш", "ш", "Щ", "щ", "Ъ", "ъ", "Ы", "ы", "Ь", "ь", "Э", "э", "Ю", "ю", "Я", "я", "Ә", "ә", "Ө", "ө", "Ғ", "ғ", "Җ", "җ", "Қ", "қ", "Ҝ", "ҝ", "Ң", "ң", "Ү", "ү", "Ұ", "ұ", "Ҳ", "ҳ", "Ҹ", "ҹ", "Һ", "һ", "Ҕ", "ҕ", "Ӣ", "ӣ", "Ӯ", "ӯ", "Ҙ", "ҙ", "Ҡ", "ҡ", "Ҥ", "ҥ", "Ҫ", "ҫ", "Ӑ", "ӑ", "Ӓ", "ӓ", "Ӕ", "ӕ", "Ӗ", "ӗ", "Ӱ", "ӱ", "Ӳ", "ӳ", "Ӹ", "ӹ", "Ӏ", "Ҟ", "ҟ", "Ҧ", "ҧ", "Ҩ", "ҩ", "Ҭ", "ҭ", "Ҵ", "ҵ", "Ҷ", "ҷ", "Ҽ", "ҽ", "Ҿ", "ҿ", "Ӂ", "ӂ", "Ӄ", "ӄ", "Ӈ", "ӈ", "Ӌ", "ӌ", "Ӛ", "ӛ", "Ӝ", "ӝ", "Ӟ", "ӟ", "Ӡӡ", "Ӥ", "ӥ", "Ӧ", "ӧ", "Ӫ", "ӫ", "Ӵ", "ӵ"] ], "Vietnamese":[ { "lang":"vi" }, ["À", "à", "Ả", "ả", "Á", "á", "Ạ", "ạ", "Ã", "ã", "Ă", "ă", "Ằ", "ằ", "Ẳ", "ẳ", "Ẵ", "ẵ", "Ắ", "ắ", "Ặ", "ặ", "Â", "â", "Ầ", "ầ", "Ẩ", "ẩ", "Ẫ", "ẫ", "Ấ", "ấ", "Ậ", "ậ", "Đ", "đ", "È", "è", "Ẻ", "ẻ", "Ẽ", "ẽ", "É", "é", "Ẹ", "ẹ", "Ê", "ê", "Ề", "ề", "Ể", "ể", "Ễ", "ễ", "Ế", "ế", "Ệ", "ệ", "Ỉ", "ỉ", "Ĩ", "ĩ", "Í", "í", "Ị", "ị", "Ì", "ì", "Ỏ", "ỏ", "Ó", "ó", "Ọ", "ọ", "Ò", "ò", "Õ", "õ", "Ô", "ô", "Ồ", "ồ", "Ổ", "ổ", "Ỗ", "ỗ", "Ố", "ố", "Ộ", "ộ", "Ơ", "ơ", "Ờ", "ờ", "Ở", "ở", "Ỡ", "ỡ", "Ớ", "ớ", "Ợ", "ợ", "Ù", "ù", "Ủ", "ủ", "Ũ", "ũ", "Ú", "ú", "Ụ", "ụ", "Ư", "ư", "Ừ", "ừ", "Ử", "ử", "Ữ", "ữ", "Ứ", "ứ", "Ự", "ự", "Ỳ", "ỳ", "Ỷ", "ỷ", "Ỹ", "ỹ", "Ỵ", "ỵ", "Ý", "ý"] ] }; addOnloadHook(function() { addOnloadHook(function() { var box; function loadCommonsTools() { function selectSubset() { var pp = box.getElementsByTagName("p"); for (var i=0; i<pp.length; ++i) { pp[i].style["display"] = "none"; } // show/create current subset var id = sel.options[sel.selectedIndex].value; var p = document.getElementById(id); if(!p) { p = document.createElement('p'); p.setAttribute("id", id); p.setAttribute("class", "mwEdittoolsLanguage"); createTokens(p, charinsert[id.substr("mwEdittools--".length)]); box.appendChild(p); } p.style["display"] = "inline"; } function createTokens(paragraph, outerArr) { var buttons; function insertInner(elem) { var a = false, ins; switch(typeof(elem)) { case("string"): { ins = function() { insertTags(elem, "", ""); return false; }; a = document.createElement("a"); a.setAttribute("title", elem); a.appendChild(document.createTextNode(elem)); } break; case("array"): case("object"): { ins = function() { insertTags(elem[0], elem[1] || "", elem[2] || ""); return false; }; a = document.createElement("a"); a.setAttribute("title", elem[3] || (elem[0] + (elem[2] || "…") + (elem[1] || ""))); a.appendChild(document.createTextNode(elem[0] + (elem[1] || ""))); }; break; } if(a !== false) { a.onclick = ins; a.setAttribute("href", "#"); a.setAttribute("class", "mwEdittoolsButton"); buttons.appendChild(document.createTextNode(" ")); buttons.appendChild(a); } } function insertOuter(innerArr) { switch(typeof(innerArr)) { case("object"): case("array"): var obj = false; if(typeof(innerArr["class"]) === "string") { obj = true; paragraph.setAttribute("class", innerArr["class"]); } if(typeof(innerArr["lang"]) === "string") { obj = true; paragraph.setAttribute("lang", innerArr["lang"]); } if(typeof(innerArr["direction"]) === "string") { obj = true; paragraph.style.direction = innerArr["direction"]; } if(typeof(innerArr["font-family"]) === "string") { obj = true; paragraph.style.fontFamily = innerArr["font-family"]; } if(typeof(innerArr["font-size"]) === "string") { obj = true; paragraph.style.fontSize = innerArr["font-size"]; } if(obj) { return false; } buttons = document.createElement("span"); buttons.setAttribute("class", "mwEdittoolsButtons"); for(var i = 0; i<innerArr.length; ++i) { insertInner(innerArr[i]); } paragraph.appendChild(buttons); return true; default: return false; } } if(outerArr.length == 0) { return; } for(var i=0; i<outerArr.length-1; ++i) { if(insertOuter(outerArr[i])) { var s = document.createElement("span"); s.appendChild(document.createTextNode("\xA0\xA0•\xA0 ")); s.style["font-weight"] = "bold"; paragraph.appendChild(s); } } insertOuter(outerArr[outerArr.length-1]); } //create drop-down select var sel = document.createElement("select"); for(var id in charinsert) { var op = document.createElement("option"); op.setAttribute("value", "mwEdittools--" + id); op.appendChild(document.createTextNode(id)); sel.appendChild(op); } sel.setAttribute("title", "Zeichensatz auswählen"); sel.onchange = sel.onkeyup = selectSubset; box.appendChild(sel); box.appendChild(document.createTextNode(" ")); selectSubset(); return false; } //get div#mw-editTools box = document.getElementById('mw-editTools'); if(!box) { return; } box = box.appendChild(document.createElement("div")); box.setAttribute("id", "specialchars"); box.style.cssText = 'margin-top:5px; border:1px solid #aaaaaa; padding:2px;'; loadCommonsTools(); }) });