User:Alex Smotrov/createEditTools
Appearance
//
//basic set of tags and symbols var charinsert = 'Insert: –—…°≈≠≤≥±−×÷←→·§ _ _ Sign_your_username: ~~~~+ ___ ' + 'Wiki_markup: {{+}} |+ [+] [[+]] [[Category:+]] #REDIRECT_[[+]] <s>+</s> <sup>+</sup> <sub>+</sub> <code>+</code> <blockquote>+</blockquote> <ref>+</ref> {{Reflist}}+ <references/>+ <includeonly>+</includeonly> <noinclude>+</noinclude> {{DEFAULTSORT:+}} <nowiki>+ __ ' + 'Symbols: ~|¡¿†‡↔↑↓•¶ #¹²³½⅓⅔¼¾⅛⅜⅝⅞∞ ‘“’” ¢$€₦£¥ ♠♣♥♦ __ '; function createEditTools(){ var box = document.getElementById('editpage-specialchars'); if (!box) return; //additional sets of symbols if (!window.noAdditionalChars){ charinsert += 'Characters: ÁáĆćÉéÍíĹĺŃńÓóŔশÚúÝýŹź ÀàÈèÌìÒòÙù ÂâĈĉÊêĜĝĤĥÎîĴĵÔôŜŝÛûŴŵŶŷ ÄäËëÏïÖöÜüŸÿ ß ÃãẼẽĨĩÑñÕõŨũỸỹ ÇçĢģĶķĻļŅņŖŗŞşŢţ Đđ Ůů ǍǎČčĎďĚěǏǐĽľŇňǑǒŘřŠšŤťǓǔŽž ĀāĒēĪīŌōŪūȲȳǢǣ ǖǘǚǜ ĂăĔĕĞğĬĭŎŏŬŭ ĊċĖėĠġİıŻż ĄąĘęĮįǪǫŲų ḌḍḤḥḶḷḸḹṂṃṆṇṚṛṜṝṢṣṬṭ Łł ŐőŰű Ŀŀ Ħħ ÐðÞþ Œœ ÆæØøÅå Əə _• {{Unicode|+}} __ '; charinsert += 'Greek: ΆάΈέΉήΊίΌόΎύΏώ ΑαΒβΓγΔδ ΕεΖζΗηΘθ ΙιΚκΛλΜμ ΝνΞξΟοΠπ ΡρΣσςΤτΥυ ΦφΧχΨψΩω _• {{Polytonic|+}} __ '; charinsert += 'Cyrillic: АаБбВвГг ҐґЃѓДдЂђ ЕеЁёЄєЖж ЗзЅѕИиІі ЇїЙйЈјКк ЌќЛлЉљМм НнЊњОоПп РрСсТтЋћ УуЎўФфХх ЦцЧчЏџШш ЩщЪъЫыЬь ЭэЮюЯя __ '; charinsert += 'IPA: _ t̪+ d̪+ ʈɖɟɡɢʡʔ ɸʃʒɕʑʂʐʝɣʁʕʜʢɦ ɱɳɲŋɴ ʋɹɻɰ ʙʀɾɽ ɫɬɮɺɭʎʟ ɥʍɧ ɓɗʄɠʛ ʘǀǃǂǁ ɨʉɯ ɪʏʊ ɘɵɤ əɚ ɛɜɝɞʌɔ ɐɶɑɒ ʰʷʲˠˤⁿˡ ˈˌːˑ̪ _• {{IPA|+}} __ ' } //remove current Edittools - for demonstration only while (box.firstChild) box.removeChild(box.firstChild); var tokens, i, token, n var paragraph = document.createElement('small'); tokens = charinsert.split(' '); for (i in tokens) { token = tokens[i]; n = token.indexOf('+'); if (n >= 0){ //a tag addInsLink(paragraph, token.substring(0,n), token.substring(n+1)); addnbsp(paragraph); }else if (token == '_') addnbsp(paragraph); else if (token == '__') paragraph.appendChild(document.createElement('br')) else if (token == '___') paragraph.appendChild(document.createElement('hr')) else if (token.charAt(token.length-1) == ':') // : at the end means just text addBoldText(paragraph, token) else if (token.charAt(0) == '_') //_ in the beginning also means text addBoldText(paragraph, token.substring(1)) else{ //a string of characters for (var i=0; i < token.length; i++) addInsLink(paragraph, token.charAt(i), ''); addnbsp(paragraph); } paragraph.appendChild(document.createTextNode(' ')); } box.appendChild(paragraph); } function addInsLink(parent, tagOpen, tagClose){ tagOpen = tagOpen.replace(/_/g,' '); var a = document.createElement('a'); a.appendChild(document.createTextNode(tagOpen + tagClose)); a.href = "javascript:insertTags('" + tagOpen + "','" + tagClose + "','')"; parent.appendChild(a); parent.appendChild(document.createTextNode(' ')); } function addBoldText(parent, text){ var b = document.createElement('b'); b.appendChild(document.createTextNode(text.replace(/_/g,' '))); parent.appendChild(b); parent.appendChild(document.createTextNode(' ')); } function addnbsp(parent){ parent.appendChild(document.createTextNode(' \u00a0 ')); } addOnloadHook(createEditTools); if (document.editform) createEditTools(); //for demonstration only //</nowiki>