Удзельнік:AlexPin/nt.js: розьніца паміж вэрсіямі
Змесціва выдалена Змесціва дададзена
Створана старонка са зьместам '// <nowiki><pre> function NTButton(){ addExtraButtonAction(taraskievizatarButtonContanerID, "http://upload.wikimedia.org/wiki...' |
д Maintenance: Replacing addOnloadHook with native jQuery (mw:ResourceLoader/Migration_guide_(users)#addOnloadHook - phab:T130879) |
||
Радок 417: | Радок 417: | ||
} |
} |
||
$(NTButton); |
|||
// </nowiki></pre>Атрымана з «http://be-x-old.wikipedia.org/wiki/%D0%A3%D0%B4%D0%B7%D0%B5%D0%BB%D1%8C%D0%BD%D1%96%D0%BA:Zedlik/nt.js»ПраглядыСтаронка ўдзельніка/ўдзельніцы Абмеркаваньне Паказаць крыніцу Гісторыя Назіраць Асабістыя прыладыПаспрабаваць Beta AlexPin Мае гутаркі Мае ўстаноўкі Мой сьпіс назіраньня Мой унёсак Выйсьці Навігацыя |
// </nowiki></pre>Атрымана з «http://be-x-old.wikipedia.org/wiki/%D0%A3%D0%B4%D0%B7%D0%B5%D0%BB%D1%8C%D0%BD%D1%96%D0%BA:Zedlik/nt.js»ПраглядыСтаронка ўдзельніка/ўдзельніцы Абмеркаваньне Паказаць крыніцу Гісторыя Назіраць Асабістыя прыладыПаспрабаваць Beta AlexPin Мае гутаркі Мае ўстаноўкі Мой сьпіс назіраньня Мой унёсак Выйсьці Навігацыя |
Цяперашняя вэрсія на 10:23, 8 лютага 2021
// <nowiki><pre>
function NTButton(){
addExtraButtonAction(taraskievizatarButtonContanerID,
"http://upload.wikimedia.org/wikipedia/be-x-old/2/20/Knopka-narkamaŭka-taraškievica.png",
"68px",
"Адаптаваць",
convertNT, NTButton);
}
// main routine
//<source lang=javascript>
var wmCantWorkNT = 'Гэта функцыя ня можа працаваць у вашым браўзэры.\n\nThis feature can not work in your browser'
var wmFullTextNT = 'Будзе апрацаваны ўвесь тэкст. Працягнуць?'
var wmTalkPageNT = 'Старонкі абмеркаваньня не апрацоўваюцца цалкам.\n\nВылучыце вашае паведамленьне — апрацаванае будзе толькі яно.'
var ntShortDescription = "артаграфія";
var ntOrthographyTemplateCode = "{{Артаграфія}}";
var ntOrthographyInsertTemplateCode = ntOrthographyTemplateCode + "\n\n";
var txtNT;
function convertNT(){
if (('code'.replace(/d/g, 'r') != 'core') //check regexp support
|| (navigator.appName=='Netscape' && navigator.appVersion.substr (0, 1) < 5))
{ alert(wmCantWorkNT); return }
var hiddenNT = [], hidIdxNT = 0, wpTextbox1 = document.editform.wpTextbox1
var winScroll = document.documentElement.scrollTop //remember window scroll
wpTextbox1.focus()
if (typeof wpTextbox1.selectionStart != 'undefined'
&& (navigator.productSub > 20031000 || is_safari)) { //Mozilla/Opera/Safari3
var textScroll = wpTextbox1.scrollTop
var startPos = wpTextbox1.selectionStart
var endPos = wpTextbox1.selectionEnd
txtNT = wpTextbox1.value.substring(startPos, endPos)
if (txtNT == '') processAllTextNT()
else{
processTextNT()
wpTextbox1.value = wpTextbox1.value.substring(0, startPos) + txtNT + wpTextbox1.value.substring(endPos)
}
if (addOrthographyTemplate && wpTextbox1.value.indexOf("{{Артаграфія}}") < 0 && wpTextbox1.value.indexOf("{{артаграфія}}") < 0){
wpTextbox1.value = ntOrthographyInsertTemplateCode + wpTextbox1.value;
startPos += ntOrthographyInsertTemplateCode.length;
}
wpTextbox1.selectionStart = startPos
wpTextbox1.selectionEnd = startPos + txtNT.length
wpTextbox1.scrollTop = textScroll
}
else
{
if (document.selection && document.selection.createRange) { //IE
var range = document.selection.createRange()
txtNT = range.text
if (txtNT == ''){
processAllTextNT()
if (addOrthographyTemplate && wpTextbox1.value.indexOf("{{Артаграфія}}") < 0 && wpTextbox1.value.indexOf("{{артаграфія}}") < 0){
wpTextbox1.value = ntOrthographyInsertTemplateCode + wpTextbox1.value;
if (window.opera) {
var extraCharacters = 0;
if (navigator.platform.indexOf("Win") >= 0 || navigator.platform.indexOf("Mac") >= 0) extraCharacters = 2;
if (range.moveStart) range.moveStart('character', ntOrthographyInsertTemplateCode.length + extraCharacters)
range.select()
}
}
else
{
range.select()
}
}
else
{
processTextNT()
range.text = txtNT
//if (!window.opera) txtNT = txtNT.replace(/\r/g,'')
if (range.moveStart) range.moveStart('character', - txtNT.length)
if (addOrthographyTemplate && wpTextbox1.value.indexOf("{{Артаграфія}}") < 0 && wpTextbox1.value.indexOf("{{артаграфія}}") < 0){
wpTextbox1.value = ntOrthographyInsertTemplateCode + wpTextbox1.value;
if (window.opera) {
var extraCharacters = 0;
if (navigator.platform.indexOf("Win") >= 0 || navigator.platform.indexOf("Mac") >= 0) extraCharacters = 2;
if (range.moveStart) range.moveStart('character', ntOrthographyInsertTemplateCode.length + extraCharacters)
if (range.moveEnd) range.moveEnd('character', txtNT.length)
range.select()
}
}
else {
range.select()
}
}
}
else // other browsers
{
if (confirm(wmFullTextNT)){
processAllTextNT()
if (addOrthographyTemplate && wpTextbox1.value.indexOf("{{Артаграфія}}") < 0 && wpTextbox1.value.indexOf("{{артаграфія}}") < 0){
wpTextbox1.value = ntOrthographyInsertTemplateCode + wpTextbox1.value;
}
}
}
}
document.documentElement.scrollTop = winScroll // scroll back, for IE/Opera
//functions
function processAllTextNT(){
txtNT = '\n' + wpTextbox1.value
processTextNT()
txtNT = txtNT.replace(/^[\n\r]+/, '')
wpTextbox1.value = txtNT
txtNT = ''
// if (window.auto_comment && window.insertSummary) insertSummary('вікіфікацыя')
if (window.addSumm && document.getElementById("wpSummary").value.indexOf(ntShortDescription) < 0) addSumm(ntShortDescription)
}
function processTextNT(){
var u = '\u00A0' //unbreakable space
if (wgNamespaceNumber % 2 || wgNamespaceNumber==4) { //is talk page
u = ' '
var sigs = txtNT.match(/\d\d:\d\d, \d\d? \S{3,8} 20\d\d \(UTC\)/g)
if (sigs && sigs.length > 1) {
alert(wmTalkPageNT); return
}
}
txtNT = ' ' + txtNT; // leading space
hideExprNT('<source [^>]+>[\\s\\S]+?<\\/source>')
hideExprNT('(http|https|ftp|tftp|news|nntp|telnet|irc|gopher)://[^ \n\r\u00A0]* ?') //links
hideExprNT('^ #REDIRECT')
hideExprNT('^ #Перанакіраваньне')
hideExprNT('\\[\\[[^\\]|]+') //internal links
// прыстаўкі
hideExprNT('( | |^|\n)ад');
hideExprNT('( | |^|\n)пад');
hideExprNT('( | |^|\n)над');
var sourceText = txtNT
// двойчы для словаў кшталту «сцвярджаць»
adaptTextNT()
adaptTextNT()
var textAffected = sourceText.replace(/^\s\s*/, '').replace(/\s\s*$/, '') != txtNT.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
txtNT = txtNT.substr(1) //remove leading space
restoreAllNT()
addOrthographyTemplate = textAffected;
addOrthographyTemplate = addOrthographyTemplate & (!ntPreventAddingOrthographyTemplate);
}
function hideExprNT(expr){
var ma = txtNT.match(new RegExp(expr, 'mgi'))
if (!ma) return
for (var i=0; i<ma.length; i++) {
txtNT = txtNT.replace(ma[i], '\x01' + hidIdxNT + '\x02')
hiddenNT[hidIdxNT] = ma[i]
if ('0'.replace('0','$$') == '$') //$ in 2nd arg is special even if 1st arg is a string, except in IE
hiddenNT[hidIdxNT] = hiddenNT[hidIdxNT].replace(/\$/g, '$$$$') //$ → $$, then it's converted back to $ on restore
hidIdxNT++
}
}
function hideTagNT(tag){
hideExprNT('<' + tag + '>[\\s\\S]+?<\\/' + tag + '>')
}
function restoreAllNT() {
for (var i=hidIdxNT-1; i>=0; i--)
txtNT = txtNT.replace('\x01' + i + '\x02', hiddenNT[i])
}
}
function applyRegexpNT(source, result){
r = new RegExp(source, "g");
txtNT = txtNT.replace(r, result);
}
var phrasesNT = new Array();
function addPhraseNT(source, result){
var leadingChar = source.substr(0, 1)
source = "(" + leadingChar.toUpperCase() + "|" + leadingChar + ")" + source.substr(1)
result = "$1" + result.substr(1)
phrasesNT[phrasesNT.length] = new Array(source, result);
}
function addStartingPhraseNT(source, result){
var leadingChar = source.substr(0, 1)
source = "((?: | |\\n)(?:" + leadingChar.toUpperCase() + "|" + leadingChar + "))" + source.substr(1)
result = "$1" + result.substr(1)
phrasesNT[phrasesNT.length] = new Array(source, result);
}
function adaptTextNT(){
// усе словы мусяць быць з маленькіх літараў
// дзе трэба, пачатковая вялікая прастаўляецца аўтаматычна
// рэгулярныя выразы нельга выкарыстоўваць у якасьці
// парамэтраў функцыі addPhraseNT, для гэтага патрэбная
// іншая функцыя, якая запаўняе масіў phrasesNT бяз
// зьменаў выразаў.
addPhraseNT("абанемент", "абанэмэнт")
addPhraseNT("абанен(т|ц)", "абанэн$2")
addPhraseNT("абісін", "абісын")
addPhraseNT("акцыянер", "акцыянэр")
addPhraseNT("алфавіт", "альфабэт")
addPhraseNT("амеры(к|ц)", "амэры$2")
addPhraseNT("аналаг", "аналяг")
addPhraseNT("англійск", "ангельск")
addPhraseNT("англія", "ангельшчына")
addPhraseNT("апера(т|ц)", "апэра$2")
addPhraseNT("арсенал", "арсэнал")
addPhraseNT("арфаграфі", "артаграфі")
addPhraseNT("асартымен", "асартымэн")
addPhraseNT("аспект", "аспэкт")
addPhraseNT("баланс", "балянс")
addPhraseNT("бургск", "бурск")
addPhraseNT("бухгалт", "бухгальт")
addPhraseNT("ваяводс", "ваяводз")
addPhraseNT("ветэран", "вэтэран")
addPhraseNT("ветэрынар", "вэтэрынар")
addPhraseNT("водск", "водзк")
addPhraseNT("газет", "газэт")
addPhraseNT("гарадск", "гарадзк")
addPhraseNT("генера", "генэра")
addPhraseNT("гібралтар", "гібральтар")
addPhraseNT("градск", "градзк")
addPhraseNT("грамадс", "грамадз")
addPhraseNT("губерн", "губэрн")
addPhraseNT("гуверн", "гувэрн")
addPhraseNT("дакум(а|е)н", "дакумэн")
addPhraseNT("еўрапе", "эўрапе")
addPhraseNT("імпер", "імпэр")
addPhraseNT("інвентар", "інвэнтар")
addPhraseNT("іспан", "гішпан")
addPhraseNT("каапера", "каапэра")
addPhraseNT("каларыт", "калярыт")
addPhraseNT("каменд", "камэнд")
addPhraseNT("камент", "камэнт")
addPhraseNT("камер", "камэр")
addPhraseNT("кампазі", "кампазы")
addPhraseNT("кампетэн", "кампэтэн")
addPhraseNT("кансерв", "кансэрв")
addPhraseNT("канспект", "канспэкт")
addPhraseNT("кафедр", "катэдр")
addPhraseNT("класі", "клясы")
addPhraseNT("лагічн", "лягічн")
addPhraseNT("ладзімір", "ладзімер")
addPhraseNT("ландск", "ляндзк")
addPhraseNT("логі", "лёгі")
addPhraseNT("максімал", "максымал")
addPhraseNT("манумент", "манумэнт")
addPhraseNT("медал", "мэдал")
addPhraseNT("медык", "мэдык")
addPhraseNT("меліяра", "мэліяра")
addPhraseNT("мемарыял", "мэмарыял")
addPhraseNT("метад", "мэтад")
addPhraseNT("метал", "мэтал")
addPhraseNT("метр( | |\\.|,)", "мэтар$2")
addPhraseNT("метр(а|ы|у)", "мэтр$2")
addPhraseNT("метэа(р|с)", "мэтэа$2")
addPhraseNT("метэор", "мэтэор")
addPhraseNT("механ", "мэхан")
addPhraseNT("мецэна(т|ц)", "мэцэна$2")
addPhraseNT("музе", "музэ")
addPhraseNT("мэнэджмен", "мэнэджмэн")
addPhraseNT("мюнхен", "мюнхэн")
addPhraseNT("нейтрал", "нэўтрал")
addPhraseNT("ніверсітэ", "нівэрсытэ")
addPhraseNT("нланд", "нлянд")
addPhraseNT("нобелеўск", "нобэлеўск")
addPhraseNT("пазіцы", "пазыцы")
addPhraseNT("парамет", "парамэт")
addPhraseNT("педаг(а|о)", "пэдаг$2")
addPhraseNT("пейзаж", "пэйзаж")
addPhraseNT("перпендыкуляр", "пэрпэндыкуляр")
addPhraseNT("персана", "пэрсана")
addPhraseNT("перспекты", "пэрспэкты")
addPhraseNT("перыяд", "пэрыяд")
addPhraseNT("піянер", "піянэр")
addPhraseNT("план", "плян")
addPhraseNT("прафес(а|і|у)", "прафэс$2")
addPhraseNT("прыхадск", "прыхадзк")
addPhraseNT("псіх(а|і|о)", "псых$2")
addPhraseNT("расі(і|ю|я)( | |\\.|,)", "расе$2$3")
addPhraseNT("расійск", "расейск")
addPhraseNT("рланд", "рлянд")
addPhraseNT("рэзерв", "рэзэрв")
addPhraseNT("рэзідэн", "рэзыдэн")
addPhraseNT("рэкаменд", "рэкамэнд")
addPhraseNT("рэклам", "рэклям")
addPhraseNT("рэфер", "рэфэр")
addPhraseNT("сезон", "сэзон")
addPhraseNT("семінар", "сэмінар")
addPhraseNT("сібір", "сыбір")
addPhraseNT("сігнал", "сыгнал")
addPhraseNT("сілезі", "сылезі")
addPhraseNT("сіметры", "сымэтры")
addPhraseNT("сінагог", "сынагог")
addPhraseNT("сінгапур", "сынгапур")
addPhraseNT("сінод", "сынод")
addPhraseNT("сінтакс", "сынтакс")
addPhraseNT("сінтэз", "сынтэз")
addPhraseNT("сінтэт", "сынтэт")
addPhraseNT("сінхра", "сынхра")
addPhraseNT("сістэм", "сыстэм")
addPhraseNT("сітуацы", "сытуацы")
addPhraseNT("сіцылі", "сыцылі")
addPhraseNT("спецыял", "спэцыял")
addPhraseNT("сфер", "сфэр")
addPhraseNT("тланд", "тлянд")
addPhraseNT("транзіт", "транзыт")
addPhraseNT("тэатр( | |\\.|,)", "тэатар$2")
addPhraseNT("тэмпера", "тэмпэра")
addPhraseNT("федэра(л|ц)", "фэдэра$2")
addPhraseNT("фельчар", "фэльчар")
addPhraseNT("ферэнцы", "фэрэнцы")
addPhraseNT("флатылі", "флятылі")
addPhraseNT("фрагмент", "фрагмэнт")
addPhraseNT("цэмент", "цэмэнт")
addPhraseNT("цэнтр( | |\\.|,)", "цэнтар$2")
addPhraseNT("эксперымент", "экспэрымэнт")
addPhraseNT("элемент", "элемэнт")
addPhraseNT("эфект", "эфэкт")
addStartingPhraseNT("года( | |\\.|,)", "году$2")
addStartingPhraseNT("з іх( | |\\.|,)", "зь іх$2")
addStartingPhraseNT("з іхн", "зь іхн")
addStartingPhraseNT("кіла", "кіля")
addStartingPhraseNT("не бачыў", "ня бачыў")
addStartingPhraseNT("не больш", "ня больш")
addStartingPhraseNT("не будзе", "ня будзе")
addStartingPhraseNT("не быў", "ня быў")
addStartingPhraseNT("не веда(е|л|ў|ць|ю)", "ня веда$2")
addStartingPhraseNT("не вельмі", "ня вельмі")
addStartingPhraseNT("не гоначны", "ня гоначны")
addStartingPhraseNT("не горача", "ня горача")
addStartingPhraseNT("не горды", "ня горды")
addStartingPhraseNT("не горны", "ня горны")
addStartingPhraseNT("не горш", "ня горш")
addStartingPhraseNT("не гостры", "ня гостры")
addStartingPhraseNT("не далі( | |\\.|,)", "ня далі$2")
addStartingPhraseNT("не даў( | |\\.|,)", "ня даў$2")
addStartingPhraseNT("не ёсьць", "ня ёсьць")
addStartingPhraseNT("не змо", "ня змо")
addStartingPhraseNT("не колькi", "ня колькi")
addStartingPhraseNT("не лепшы", "ня лепшы")
addStartingPhraseNT("не ломкі", "ня ломкі")
addStartingPhraseNT("не ма(е|ючы|юць)( | |\\.|,)", "ня ма$2$3")
addStartingPhraseNT("не мел(а|і)( | |\\.|,)", "ня мел$2$3")
addStartingPhraseNT("не менш", "ня менш")
addStartingPhraseNT("не меў( | |\\.|,)", "ня меў$2")
addStartingPhraseNT("не мо", "ня мо")
addStartingPhraseNT("не наш", "ня наш")
addStartingPhraseNT("не новы", "ня новы")
addStartingPhraseNT("не піш(а|у)цца( | |\\.|,)", "ня піш$2цца$3")
addStartingPhraseNT("не раз( | |\\.|,)", "ня раз$2")
addStartingPhraseNT("не родны", "ня родны")
addStartingPhraseNT("не рушы", "ня рушы")
addStartingPhraseNT("не ста(не|нуць|ў)( | |\\.|,)", "ня ста$2$3")
addStartingPhraseNT("не той", "ня той")
addStartingPhraseNT("не толькі", "ня толькі")
addStartingPhraseNT("не тыя", "ня тыя")
addStartingPhraseNT("не ўзводз", "ня ўзводз")
addStartingPhraseNT("не ўс(е|ё)( | |\\.|,)", "ня ўс$2$3")
addStartingPhraseNT("не хораша", "ня хораша")
addStartingPhraseNT("не чуў", "ня чуў")
for (i = 0; i < phrasesNT.length; i++){
applyRegexpNT(phrasesNT[i][0], phrasesNT[i][1])
}
txtNT = txtNT.replace(/((?:(?:Д|д)з)|З|з|С|с)(б|в|л|м|н|п|ф|с|ц|дз)(е|ё|ю|я|і|ь)/g, '$1ь$2$3')
txtNT = txtNT.replace(/(З|з)(’|')(е|ё|ю|я|і)/g, '$1ь$3')
txtNT = txtNT.replace(/((?:Д|д)з)(в)(е|ё|ю|я|і|ь)/g, '$1ь$2$3')
txtNT = txtNT.replace(/(Ц|ц)(в)(е|ё|ю|я|і|ь)/g, '$1ь$2$3')
txtNT = txtNT.replace(/(лл)(е|ё|ю|я|і|ь)/g, 'льл$2')
txtNT = txtNT.replace(/(нн)(е|ё|ю|я|і|ь)/g, 'ньн$2')
txtNT = txtNT.replace(/(зз)(е|ё|ю|я|і|ь)/g, 'зьз$2')
txtNT = txtNT.replace(/(цц)(е|ё|ю|я|і|ь)/g, 'цьц$2')
txtNT = txtNT.replace(/(сс)(е|ё|ю|я|і|ь)/g, 'сьс$2')
txtNT = txtNT.replace(/(ддз)(е|ё|ю|я|і|ь)/g, 'дзьдз$2')
txtNT = txtNT.replace(/( | |^|\\n)(З|з)( | )(б|в|л|м|н|п|ф|с|ц|дз)(е|ё|ю|я|і)/gm, '$1$2ь$3$4$5')
txtNT = txtNT.replace(/( | |^|\\n)(З|з)( | )(е|ё|ю|я)/gm, '$1$2ь$3$4')
txtNT = txtNT.replace(/( | |^|\\n)((?:П|п)раз)( | )(б|в|л|м|н|п|ф|с|ц|дз)(е|ё|ю|я|і)/gm, '$1$2ь$3$4$5')
txtNT = txtNT.replace(/( | |^|\\n)((?:П|п)раз)( | )(е|ё|ю|я)/gm, '$1$2ь$3$4')
txtNT = txtNT.replace(/( | |^|\\n)((?:Б|б)(?:е|я)з)( | )(б|в|л|м|н|п|ф|с|ц|дз)(е|ё|ю|я|і)/gm, '$1$2ь$3$4$5')
txtNT = txtNT.replace(/( | |^|\\n)((?:Б|б)(?:е|я)з)( | )(е|ё|ю|я)/gm, '$1$2ь$3$4')
txtNT = txtNT.replace(/( | |^|\\n)((?:Ц|ц)ераз)( | )(б|в|л|м|н|п|ф|с|ц|дз)(е|ё|ю|я|і)/gm, '$1$2ь$3$4$5')
txtNT = txtNT.replace(/( | |^|\\n)((?:Ц|ц)ераз)( | )(е|ё|ю|я)/gm, '$1$2ь$3$4')
}
$(NTButton);
// </nowiki></pre>Атрымана з «http://be-x-old.wikipedia.org/wiki/%D0%A3%D0%B4%D0%B7%D0%B5%D0%BB%D1%8C%D0%BD%D1%96%D0%BA:Zedlik/nt.js»ПраглядыСтаронка ўдзельніка/ўдзельніцы Абмеркаваньне Паказаць крыніцу Гісторыя Назіраць Асабістыя прыладыПаспрабаваць Beta AlexPin Мае гутаркі Мае ўстаноўкі Мой сьпіс назіраньня Мой унёсак Выйсьці Навігацыя
Галоўная старонка
Выпадковая старонка
Рубрыкацыя
Абраныя артыкулы
Пошук
Удзел
Паведаміць пра памылку
Паведаміць пра памылку
Форум
Апошнія зьмены
Новыя старонкі
Дапамога
Ахвяраваньні
Інструмэнты
Спасылкі на старонку
Зьвязаныя праўкі
Загрузіць файл
Спэцыяльныя старонкі
Вэрсія для друку
Сталая спасылка
Гэтая старонка апошні раз рэдагавалася 17 кастрычніка 2009 году ў 20:39. Гэты тэкст даступны на ўмовах ліцэнзіі Creative Commons Attribution/Share-Alike; могуць ужывацца дадатковыя ўмовы. Глядзіце падрабязнасьці ва ўмовах выкарыстаньня. Правілы адносна прыватнасьці Пра Вікіпэдыю Адмова ад адказнасьці