تێبینی: دوای پاشەکەوتکردن، پێویستە کاشی وێبگەڕەکەت پاک بکەیتەوە تا گۆڕانکارییەکان ببینیت. بۆ گووگڵ کڕۆم، فایەرفۆکس، مایکرۆسۆفت ئێج و سافاری: پەنجە لەسەر دوگمەی ⇧ Shift ڕاگرە و کرتە لەسەر Reload بکە. بۆ وردەکاری و ڕێنمایییەکان لەسەر وێبگەڕەکانی تر، بڕوانە ئێرە.
/* لە de.wikipedia <nowiki> */

var charinsert = {
  "ستاندارد":[
    { "direction":"rtl", "lang":"ckb", "class":"spanAr" },
    ["پ", "چ", "ڕ", "ڎ", "ژ", "ڤ", "ک", "گ", "ڵ", "ۆ", "ۊ", "ھ", "ە", "ی", "ێ"],
    ["٠" ,"١" ,"٢" ,"٣" ,"٤" ,"٥" ,"٦" ,"٧" ,"٨" ,"٩"],
    [ "–", "—", ["«","»"], "،", "؛", "؟", "¿", "¡", "…"],
    [ "+", "-", "×", "÷", "±", "⊥", "≠", "≤", "≥", "<", ">", "≡", "≈", "≅", "∝", "→", "←", "↔", "⇒", "⇐", "⇔", "½", "²", "³", "°", "٪", "∂", "∫", "∑", "∞", "∏", "√", "∇", "٫" ,"٬"],
    ["$","€", "£", "¢", "¥", "¤"],
    ["&nbsp;", ["[","]","","بەستەری دەرەکی"], ["[[","]]","","بەستەری ناوخۆ"], "|", ["{{","}}","","داڕێژە"], ["~~~~","","","واژوو"] ]
  ],
 "کوردیی لاتینی":[
    ["Ç", "ç", "Ê", "ê", "Î", "î", "Ş", "ş", "Û", "û", "Ḧ", "ḧ", "Ẍ", "ẍ"],
    ["É", "é", "Í", "í", "Ú", "ú", "Ù", "ù"]
  ],
  "عەرەبی":[
    { "direction":"rtl", "lang":"ar", "class":"spanAr" },
    ["ء", "آ", "أ", "ؤ", "إ", "ة", "ث", "ذ", "ص", "ض", "ط", "ظ", "ك", "ه", "ى", "ي"]
  ],
  "کۆدی ویکی":[
    [ [ "[[پۆل:","]]" ], [ "[[پەڕگە:","]]" ], [ "#REDIRECT [[","]]" ] ],
    [ "{{پەراوێز}}", "{{ژپ}}" ],
    [ [ "<ref>","<\/ref>" ], [ "<ref name=\"","\"><\/ref>" ], [ "<ref name=\"", "\" \/>" ], "<references \/>" ],
    [ [ "<nowiki>","<\/nowiki>" ], [ "<!--","-->" ], [ "<code>","<\/code>" ], [ "<source lang=\"","\"><\/source>" ],
    [ "<noinclude>","<\/noinclude>" ], [ "<includeonly>","<\/includeonly>" ] ],
    [ [ "<math>","<\/math>" ], [ "<sup>","<\/sup>" ], [ "<sub>","<\/sub>" ] ],
  ],
  "IPA":[
    { "class":"IPA" },
    ["p", "t̪", "t", "ʈ", "c", "k", "q", "ʡ", "ʔ"],
    ["b", "d̪", "d", "ɖ", "ɟ", "ɡ", "ɢ"],
    ["ɓ", "ɗ", "ʄ", "ɠ", "ʛ"],
    ["t͡s", "t͡ʃ", "t͡ɕ", "d͡z", "d͡ʒ", "d͡ʑ"],
    ["ɸ", "f", "θ", "s", "ʃ", "ʅ", "ʆ", "ʂ", "ɕ", "ç", "ɧ", "x", "χ", "ħ", "ʜ", "h"],
    ["β", "v", "ʍ", "ð", "z", "ʒ", "ʓ", "ʐ", "ʑ", "ʝ", "ɣ", "ʁ", "ʕ", "ʖ", "ʢ", "ɦ"],
    ["ɬ", "ɮ"],
    ["m", "m̩", "ɱ", "ɱ̩", "ɱ̍", "n̪", "n̪̍", "n", "n̩", "ɳ", "ɳ̩", "ɲ", "ɲ̩", "ŋ", "ŋ̍", "ŋ̩", "ɴ", "ɴ̩"],
    ["ʙ", "ʙ̩", "r", "r̩", "ʀ", "ʀ̩"],
    ["ɾ", "ɽ", "ɿ", "ɺ"],
    ["l̪", "l̪̩", "l", "l̩", "ɫ", "ɫ̩", "ɭ", "ɭ̩", "ʎ", "ʎ̩", "ʟ", "ʟ̩"],
    ["w", "ɥ", "ʋ", "ɹ", "ɻ", "j", "ɰ"],
    ["ʘ", "ǂ", "ǀ", "ǃ", "ǁ"],
    ["ʰ", "ʱ", "ʷ", "ʸ", "ʲ", "ʳ", "ⁿ", "ˡ", "ʴ", "ʵ", "ˢ", "ˣ", "ˠ", "ʶ", "ˤ", "ˁ", "ˀ", "ʼ"],
    ["i", "i̯", "ĩ", "y", "y̯", "ỹ", "ɪ", "ɪ̯", "ɪ̃", "ʏ", "ʏ̯", "ʏ̃", "ɨ", "ɨ̯", "ɨ̃", "ʉ", "ʉ̯", "ʉ̃", "ɯ", "ɯ̯", "ɯ̃", "u", "u̯", "ũ", "ʊ", "ʊ̯", "ʊ̃"],
    ["e", "e̯", "ẽ", "ø", "ø̯", "ø̃", "ɘ", "ɘ̯", "ɘ̃", "ɵ", "ɵ̯", "ɵ̃", "ɤ", "ɤ̯", "ɤ̃", "o", "o̯", "õ"],
    ["ɛ", "ɛ̯", "ɛ̃", "œ", "œ̯", "œ̃", "ɜ", "ɜ̯", "ɜ̃", "ə", "ə̯", "ə̃", "ɞ", "ɞ̯", "ɞ̃", "ʌ", "ʌ̯", "ʌ̃", "ɔ", "ɔ̯", "ɔ̃"],
    ["æ", "æ̯", "æ̃", "ɶ", "ɶ̯", "ɶ̃", "a", "a̯", "ã", "ɐ", "ɐ̯", "ɐ̃", "ɑ", "ɑ̯", "ɑ̃", "ɒ", "ɒ̯", "ɒ̃"],
    ["ˈ", "ˌ", "ː", "ˑ", "˘", ".", "‿", "|", "‖"]
  ],
  "لاتینی":[
    ["Á", "á", "À", "à", "Â", "â", "Ä", "ä", "Ǎ", "ǎ", "Ă", "ă", "Ā", "ā", "Ã", "ã", "Å", "å", "Ą", "ą", "Æ", "æ", "Ǣ", "ǣ"],
    ["Ć", "ć", "Ċ", "ċ", "Ĉ", "ĉ", "Č", "č", "Ç", "ç"],
    ["Ď", "ď", "Đ", "đ", "Ḍ", "ḍ", "Ð", "ð"],
    ["É", "é", "È", "è", "Ė", "ė", "Ê", "ê", "Ë", "ë", "Ě", "ě", "Ĕ", "ĕ", "Ē", "ē", "Ẽ", "ẽ", "Ę", "ę", "Ẹ", "ẹ", "Ɛ", "ɛ", "Ə", "ə"],
    ["Ġ", "ġ", "Ĝ", "ĝ", "Ğ", "ğ", "Ģ", "ģ"],
    ["Ĥ", "ĥ", "Ħ", "ħ", "Ḥ", "ḥ", "Ḧ", "ḧ"],
    ["İ", "ı", "Í", "í", "Ì", "ì", "Î", "î", "Ï", "ï", "Ǐ", "ǐ", "Ĭ", "ĭ", "Ī", "ī", "Ĩ", "ĩ", "Į", "į", "Ị ", "ị"],
    ["Ĵ", "ĵ"],
    ["Ķ", "ķ"],
    ["Ĺ", "ĺ", "Ŀ", "ŀ", "Ľ", "ľ", "Ļ", "ļ", "Ł", "ł", "Ḷ", "ḷ", "Ḹ", "ḹ"],
    ["Ṃ", "ṃ"],
    ["Ń", "ń", "Ň", "ň", "Ñ", "ñ", "Ņ", "ņ", "Ṇ", "ṇ", "Ŋ", "ŋ"],
    ["Ó", "ó", "Ò", "ò", "Ô", "ô", "Ö", "ö", "Ǒ", "ǒ", "Ŏ", "ŏ", "Ō", "ō", "Õ", "õ", "Ǫ", "ǫ", "Ọ", "ọ", "Ő", "ő", "Ø", "ø", "Œ", "œ"],
    ["Ɔ", "ɔ"],
    ["Ŕ", "ŕ", "Ř", "ř", "Ŗ", "ŗ", "Ṛ", "ṛ", "Ṝ", "ṝ"],
    ["Ś", "ś", "Ŝ", "ŝ", "Š", "š", "Ş", "ş", "Ș", "ș", "Ṣ", "ṣ", "ß"],
    ["Ť", "ť", "Ţ", "ţ", "Ț", "ț", "Ṭ", "ṭ", "Þ", "þ"],
    ["Ú", "ú", "Ù", "ù", "Û", "û", "Ü", "ü", "Ǔ", "ǔ", "Ŭ", "ŭ", "Ū", "ū", "Ũ", "ũ", "Ů", "ů", "Ų", "ų", "Ụ", "ụ", "Ű", "ű", "Ǘ", "ǘ", "Ǜ", "ǜ", "Ǚ", "ǚ", "Ǖ", "ǖ"],
    ["Ŵ", "ŵ"],
    ["Ẍ", "ẍ"],
    ["Ý", "ý", "Ŷ", "ŷ", "Ÿ", "ÿ", "Ỹ", "ỹ", "Ȳ", "ȳ"],
    ["Ź", "ź", "Ż", "ż", "Ž", "ž"],
    ["ß", "Ð", "ð", "Þ", "þ", "Ŋ", "ŋ", "Ə", "ə"]
  ],
  "کیریلی":[
    ["А", "Ә", "Б", "В", "Г", "Ґ", "Ѓ", "Ғ", "Д", "Ђ", "Е", "Є", "Ё", "Ж", "З", "Ѕ", "И", "І", "Ї", "İ", "Й", "Ӣ", "Ј", "К",
     "Ќ", "Қ", "Л", "Љ", "М", "Н", "Њ", "Ң", "О", "Ө", "П", "Р", "С", "Т", "Ћ", "У", "Ў", "Ӯ", "Ұ", "Ү", "Ф", "Х", "Ҳ", "Һ",
     "Ц", "Ч", "Ҷ", "Џ", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я"],
    ["а", "ә", "б", "в", "г", "ґ", "ѓ", "ғ", "д", "ђ", "е", "є", "ё", "ж", "з", "ѕ", "и", "і", "ї", "й", "ӣ", "ј", "к", "ќ", "қ",
     "л", "љ", "м", "н", "њ", "ң", "о", "ө", "п", "р", "с", "т", "ћ", "у", "ў", "ӯ", "ұ", "ү", "ф", "х", "ҳ", "һ", "ц", "ч", "ҷ",
     "џ", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я"]
  ],
  "یۆنانی":[
    { "lang":"hl" },
    ["Α", "Ά", "Β", "Γ", "Δ", "Ε", "Έ", "Ζ", "Η", "Ή", "Θ", "Ι", "Ί", "Κ", "Λ", "Μ", "Ν", "Ξ", "Ο", "Ό", "Π", "Ρ", "Σ", "Τ", "Υ", "Ύ", "Φ", "Χ", "Ψ", "Ω", "Ώ"],
    ["α", "ά", "β", "γ", "δ", "ε", "έ", "ζ", "η", "ή", "θ", "ι", "ί", "κ", "λ", "μ", "ν", "ξ", "ο", "ό", "π", "ρ", "σ", "ς", "τ", "υ", "ύ", "φ", "χ", "ψ", "ω", "ώ"]
  ]
};
 
$(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[4] || (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", "لەسەر نیشانەکە کرتە بکە");
    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");
 
  loadCommonsTools();
});
/* </nowiki> */