<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://wiki.umki-kit.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AWikificator.js</id>
	<title>MediaWiki:Wikificator.js - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.umki-kit.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AWikificator.js"/>
	<link rel="alternate" type="text/html" href="http://wiki.umki-kit.ru/wiki/index.php?title=MediaWiki:Wikificator.js&amp;action=history"/>
	<updated>2026-04-19T22:51:23Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>http://wiki.umki-kit.ru/wiki/index.php?title=MediaWiki:Wikificator.js&amp;diff=13&amp;oldid=prev</id>
		<title>Evgen: Новая страница: «var wmCantWork = 'Викификатор не может работать в вашем браузере', 	wmFullText = 'Викификатор обработа…»</title>
		<link rel="alternate" type="text/html" href="http://wiki.umki-kit.ru/wiki/index.php?title=MediaWiki:Wikificator.js&amp;diff=13&amp;oldid=prev"/>
		<updated>2016-05-23T20:22:36Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «var wmCantWork = &amp;#039;Викификатор не может работать в вашем браузере&amp;#039;, 	wmFullText = &amp;#039;Викификатор обработа…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;var wmCantWork = 'Викификатор не может работать в вашем браузере',&lt;br /&gt;
	wmFullText = 'Викификатор обработает ВЕСЬ текст на этой странице. Продолжить?',&lt;br /&gt;
	wmTalkPage = 'Викификатор не обрабатывает страницы обсуждения целиком.\n\nВыделите ваше сообщение — обработано будет только оно';&lt;br /&gt;
window.wfPlugins = window.wfPlugins || [];&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function Wikify() {&lt;br /&gt;
	'use strict';&lt;br /&gt;
	var txt = '',&lt;br /&gt;
		hidden = [],&lt;br /&gt;
		wpTextbox1 = document.editform.wpTextbox1,&lt;br /&gt;
		winScroll = document.documentElement.scrollTop;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	// FUNCTIONS&lt;br /&gt;
&lt;br /&gt;
	function r( r1, r2 ) {&lt;br /&gt;
		txt = txt.replace( r1, r2 );&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function hide( re ) {&lt;br /&gt;
		r( re, function ( s ) {&lt;br /&gt;
			return '\x01' + hidden.push( s ) + '\x02';&lt;br /&gt;
		} );&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function hideTag ( tag ) {&lt;br /&gt;
		hide( new RegExp( '&amp;lt;' + tag + '( [^&amp;gt;]+)?&amp;gt;[\\s\\S]+?&amp;lt;\\/' + tag + '&amp;gt;', 'gi' ) );&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function hideTemplates() {&lt;br /&gt;
		var pos = 0,&lt;br /&gt;
			stack = [],&lt;br /&gt;
			tpl,&lt;br /&gt;
			left,&lt;br /&gt;
			right;&lt;br /&gt;
		while ( true ) {&lt;br /&gt;
			left = txt.indexOf( '{{', pos );&lt;br /&gt;
			right = txt.indexOf( '}}', pos );&lt;br /&gt;
			if ( left === -1 &amp;amp;&amp;amp; right === -1 &amp;amp;&amp;amp; !stack.length ) {&lt;br /&gt;
				break;&lt;br /&gt;
			}&lt;br /&gt;
			if ( left !== -1 &amp;amp;&amp;amp; ( left &amp;lt; right || right === -1 ) ) {&lt;br /&gt;
				stack.push( left );&lt;br /&gt;
				pos = left + 2;&lt;br /&gt;
			} else {&lt;br /&gt;
				left = stack.pop();&lt;br /&gt;
				if ( typeof left === 'undefined' ) {&lt;br /&gt;
					if ( right === -1 ) {&lt;br /&gt;
						pos += 2;&lt;br /&gt;
						continue;&lt;br /&gt;
					} else {&lt;br /&gt;
						left = 0;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				if ( right === -1 ) {&lt;br /&gt;
					right = txt.length;&lt;br /&gt;
				}&lt;br /&gt;
				right += 2;&lt;br /&gt;
				tpl = txt.substring( left, right );&lt;br /&gt;
				txt = txt.substring( 0, left ) +&lt;br /&gt;
					'\x01' + hidden.push( tpl ) + '\x02' +&lt;br /&gt;
					txt.substr( right );&lt;br /&gt;
				pos = right - tpl.length;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function processText() {&lt;br /&gt;
		var i,&lt;br /&gt;
			u = '\u00A0'; // unbreakable space&lt;br /&gt;
		if ( mw.config.get('wgNamespaceNumber') % 2 || mw.config.get('wgNamespaceNumber') === 4 ) { // is talk page&lt;br /&gt;
			var sigs = txt.match( /\d\d:\d\d, \d\d? \S{3,8} 20\d\d \(UTC\)/g );&lt;br /&gt;
			if ( sigs &amp;amp;&amp;amp; sigs.length &amp;gt; 1 ) {&lt;br /&gt;
				alert( wmTalkPage );&lt;br /&gt;
				return;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		hideTag( 'nowiki' );&lt;br /&gt;
		hideTag( 'pre' );&lt;br /&gt;
		hideTag( 'source' );&lt;br /&gt;
		hideTag( 'syntaxhighlight' );&lt;br /&gt;
		hideTag( 'templatedata' );&lt;br /&gt;
&lt;br /&gt;
		hideTag( 'code' );&lt;br /&gt;
		hideTag( 'tt' );&lt;br /&gt;
&lt;br /&gt;
		hideTag( 'graph' );&lt;br /&gt;
		hideTag( 'hiero' );&lt;br /&gt;
		hideTag( 'math' );&lt;br /&gt;
		hideTag( 'timeline' );&lt;br /&gt;
&lt;br /&gt;
		r( /( |\n|\r)+\{\{(·|•|\*)\}\}/g, '{{$2}}' ); // before {{·/•/*}}, usually in templates&lt;br /&gt;
		r( /\{\{\s*[Шш]аблон:([\s\S]+?)\}\}/g, '{{$1}}' );&lt;br /&gt;
		r( /(\{\{\s*)(?:reflist|список примечаний)(\s*[\|\}])/ig, '$1примечания$2' );&lt;br /&gt;
&lt;br /&gt;
		hideTemplates();&lt;br /&gt;
		hide( /^[ \t].*/mg );&lt;br /&gt;
		hide( /(https?|ftp|news|nntp|telnet|irc|gopher):\/\/[^\s\[\]&amp;lt;&amp;gt;&amp;quot;]+ ?/gi );&lt;br /&gt;
		hide( /^#(redirect|перенапр(авление)?)/i );&lt;br /&gt;
		hideTag( 'gallery' );&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		r( / +(\n|\r)/g, '$1' ); // spaces at EOL&lt;br /&gt;
		txt = '\n' + txt + '\n';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		// LINKS&lt;br /&gt;
		r( /(\[\[:?)(category|категория):( *)/ig, '$1Категория:' );&lt;br /&gt;
		r( /(\[\[:?)(module|модуль):( *)/ig, '$1Модуль:' );&lt;br /&gt;
		r( /(\[\[:?)(template|шаблон):( *)/ig, '$1Шаблон:' );&lt;br /&gt;
		r( /(\[\[:?)(image|изображение|file|файл):( *)/ig, '$1Файл:' );&lt;br /&gt;
		// Linked years, centuries and ranges&lt;br /&gt;
		r( /(\(|\s)(\[\[[12]?\d{3}\]\])[\u00A0 ]?(-{1,3}|–|—) ?(\[\[[12]?\d{3}\]\])(\W)/g, '$1$2—$4$5' );&lt;br /&gt;
		r( /(\[\[[12]?\d{3}\]\]) ?(гг?\.)/g, '$1' + u + '$2' );&lt;br /&gt;
		r( /(\(|\s)(\[\[[IVX]{1,5}\]\])[\u00A0 ]?(-{1,3}|–|—) ?(\[\[[IVX]{1,5}\]\])(\W)/g, '$1$2—$4$5' );&lt;br /&gt;
		r( /(\[\[[IVX]{1,5}\]\]) ?(вв?\.)/g, '$1' + u + '$2' );&lt;br /&gt;
		r( /\[\[(\d+)\]\]\sгод/g, '[[$1' + u + 'год]]' );&lt;br /&gt;
		r( /\[\[(\d+)\sгод\|\1\]\]\sгод/g, '[[$1' + u + 'год]]' );&lt;br /&gt;
		r( /\[\[(\d+)\sгод\|\1\sгод([а-я]{0,3})\]\]/g, '[[$1' + u + 'год]]$2' );&lt;br /&gt;
		r( /\[\[((\d+)(?: (?:год )?в [\wa-яёА-ЯЁ ]+\|\2)?)\]\][\u00A0 ](год[а-яё]*)/g, '[[$1' + u + '$3]]' );&lt;br /&gt;
		r( /\[\[([XVI]+)\]\]\sвек/g, '[[$1' + u + 'век]]' );&lt;br /&gt;
		r( /\[\[([XVI]+)\sвек\|\1\]\]\sвек/g, '[[$1' + u + 'век]]' );&lt;br /&gt;
		r( /\[\[([XVI]+)\sвек\|\1\sвек([а-я]{0,3})\]\]/g, '[[$1' + u + 'век]]$2' );&lt;br /&gt;
		r( /\[\[(([XVI]+) век\|\2)\]\][\u00A0 ]век/g, '[[$2' + u + 'век]]' );&lt;br /&gt;
		// Nice links&lt;br /&gt;
		r( /(\[\[[^|\[\]]*)[\u00AD\u200E\u200F]+([^\[\]]*\]\])/g, '$1$2' ); // Soft Hyphen &amp;amp; DirMark&lt;br /&gt;
		r( /\[\[ *([^|\[\]]+) *\| *(\1)([a-zа-яё]*) *\]\]/g, '[[$2]]$3' );&lt;br /&gt;
		r( /\[\[ *([^|\[\]]+)([^|\[\]()]+) *\| *\1 *\]\]\2/g, '[[$1$2]]' ); // text repetition after link&lt;br /&gt;
		r( /\[\[ *(?!Файл:|Категория:)([a-zA-Zа-яёА-ЯЁ\u00A0-\u00FF %!\&amp;quot;$&amp;amp;'()*,\-—.\/0-9:;=?\\@\^_`’~]+) *\| *([^\|\[\]]+) *\]\]([a-zа-яё]+)/g, '[[$1|$2$3]]' ); // &amp;quot;&lt;br /&gt;
		hide( /\[\[[^\]|]+/g); // only link part&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		// TAGS&lt;br /&gt;
		r( /&amp;lt;&amp;lt;(\S.+\S)&amp;gt;&amp;gt;/g, '&amp;quot;$1&amp;quot;' ); // &amp;lt;&amp;lt; &amp;gt;&amp;gt;&lt;br /&gt;
		r( /(su[pb]&amp;gt;)-(\d)/g, '$1−$2' ); // -&amp;gt;minus&lt;br /&gt;
		r( /&amp;lt;(b|strong)&amp;gt;(.*?)&amp;lt;\/(b|strong)&amp;gt;/gi, &amp;quot;'''$2'''&amp;quot; );&lt;br /&gt;
		r( /&amp;lt;(i|em)&amp;gt;(.*?)&amp;lt;\/(i|em)&amp;gt;/gi, &amp;quot;''$2''&amp;quot; );&lt;br /&gt;
		r( /^&amp;lt;hr ?\/?&amp;gt;/gim, '----' );&lt;br /&gt;
		r( /&amp;lt;[\/\\]?(hr|br)( [^\/\\&amp;gt;]+?)? ?[\/\\]?&amp;gt;/gi, '&amp;lt;$1$2 /&amp;gt;' );&lt;br /&gt;
		r( /[\u00A0 \t]*&amp;lt;ref(?:\s+name=&amp;quot;&amp;quot;)?(\s|&amp;gt;)/gi, '&amp;lt;ref$1' );&lt;br /&gt;
		r( /(\n== *[a-zа-я\s\.:]+ *==\n+)&amp;lt;references *\/&amp;gt;/ig, '$1{' + '{примечания}}' );&lt;br /&gt;
		hide( /&amp;lt;[a-z][^&amp;gt;]*?&amp;gt;/gi);&lt;br /&gt;
&lt;br /&gt;
		hide( /^(\{\||\|\-).*/mg); // table/row def&lt;br /&gt;
		hide( /(^\||^!|!!|\|\|) *[a-z]+=[^|]+\|(?!\|)/mgi); // cell style&lt;br /&gt;
		hide( /\| +/g); // formatted cell&lt;br /&gt;
&lt;br /&gt;
		r( /[ \t\u00A0]+/g, ' ' ); // double spaces&lt;br /&gt;
&lt;br /&gt;
		// Entities etc. → Unicode chars&lt;br /&gt;
		if ( mw.config.get('wgNamespaceNumber') !== 10 ) {&lt;br /&gt;
			r( /&amp;amp;(#x[0-9a-f]{2,4}|#[0-9]{3,4}|[0-9a-z]{2,8});/gi, function ( s ) {&lt;br /&gt;
				var t = document.createElement( 'textarea' );&lt;br /&gt;
				t.innerHTML = s;&lt;br /&gt;
				var c = t.value;&lt;br /&gt;
				if ( c.length === 1 &amp;amp;&amp;amp; c.charCodeAt( 0 ) &amp;gt; 127 ) {&lt;br /&gt;
					return c;&lt;br /&gt;
				}&lt;br /&gt;
				return s;&lt;br /&gt;
			});&lt;br /&gt;
		}&lt;br /&gt;
		r( /\(tm\)/gi, '™' );&lt;br /&gt;
		r( /\.\.\./g, '…' );&lt;br /&gt;
		r( /(^|[^+])\+-(?!\+|-)/g, '$1±' );&lt;br /&gt;
		r( /~=/g, '≈' );&lt;br /&gt;
		r( /\^2(\D)/g, '²$1' );&lt;br /&gt;
		r( /\^3(\D)/g, '³$1' );&lt;br /&gt;
		r( /(\s)кв\.\s*(дм|см|мм|мкм|нм|км|м)(\s)/g, '$1' + u + '$2²$3' );&lt;br /&gt;
		r( /(\s)куб\.\s*(дм|см|мм|мкм|нм|км|м)(\s)/g, '$1' + u + '$2³$3' );&lt;br /&gt;
		r( /((?:^|[\s&amp;quot;])\d+(?:[\.,]\d+)?)\s*[xх]\s*(\d+(?:[\.,]\d+)?)\s*([мm]{1,2}(?:[\s&amp;quot;\.,;?!]|$))/g, '$1×$2' + u + '$3' );&lt;br /&gt;
		r( /\s+×\s+/g, u + '×' + u );&lt;br /&gt;
		r( /([\wа-яА-ЯёЁ])'([\wа-яА-ЯёЁ])/g, '$1’$2' ); //'&lt;br /&gt;
		r( /№№/g, '№' );&lt;br /&gt;
&lt;br /&gt;
		// Headings&lt;br /&gt;
		r( /^(=+)[ \t\f\v]*(.*?)[ \t\f\v]*=+$/gm, '$1 $2 $1' ); //add spaces inside&lt;br /&gt;
		r( /([^\r\n])(\r?\n==.+==\r?\n)/g, '$1\n$2' ); //add empty line before&lt;br /&gt;
		r( /(==.+==)[\r\n]{2,}(?!=)/g, '$1\n' ); //remove empty line after&lt;br /&gt;
		r( /^== см(\.?|отри|отрите) ?также ==$/gmi, '== См. также ==' );&lt;br /&gt;
		r( /^== сноски ==$/gmi, '== Примечания ==' );&lt;br /&gt;
		r( /^== внешние\sссылки ==$/gmi, '== Ссылки ==' );&lt;br /&gt;
		r( /^== (.+)[.:] ==$/gm, '== $1 ==' );&lt;br /&gt;
		r( /^== '''(?!.*'''.*''')(.+)''' ==$/gm, '== $1 ==' );&lt;br /&gt;
&lt;br /&gt;
		r( /«|»|“|”|„/g, '&amp;quot;' ); // temp&lt;br /&gt;
&lt;br /&gt;
		// Hyphens and en dashes to pretty dashes&lt;br /&gt;
		r( /–/g, '-' ); // &amp;amp;ndash; -&amp;gt; hyphen&lt;br /&gt;
		r( /(\s)-{1,3} /g, '$1— ' ); // hyphen -&amp;gt; &amp;amp;mdash;&lt;br /&gt;
		r( /(\d)--(\d)/g, '$1—$2' ); // -&amp;gt; &amp;amp;mdash;&lt;br /&gt;
		r( /(\s)-(\d)/g, '$1−$2' ); // hyphen -&amp;gt; minus&lt;br /&gt;
&lt;br /&gt;
		// Year and century ranges&lt;br /&gt;
		r( /(\(|\s)([12]?\d{3})[\u00A0 ]?(-{1,3}|—) ?([12]?\d{3})(?![\wА-ЯЁа-яё]|-[^ех]|-[ех][\wА-ЯЁа-яё])/g, '$1$2—$4' );&lt;br /&gt;
		r( /([12]?\d{3}) ?(гг?\.)/g, '$1' + u + '$2' );&lt;br /&gt;
		r( /(\(|\s)([IVX]{1,5})[\u00A0 ]?(-{1,3}|—) ?([IVX]{1,5})(?![\w\-])/g, '$1$2—$4' );&lt;br /&gt;
		r( /([IVX]{1,5}) ?(вв?\.)/g, '$1' + u + '$2' );&lt;br /&gt;
&lt;br /&gt;
		// Reductions&lt;br /&gt;
		r( /(Т|т)\.\s?е\./g, '$1о есть' );&lt;br /&gt;
		r( /(Т|т)\.\s?к\./g, '$1ак как' );&lt;br /&gt;
		r( /(В|в)\sт\. ?ч\./g, '$1 том числе' );&lt;br /&gt;
		r( /(И|и)\sт\.\s?д\./g, '$1' + u + 'т.' + u + 'д.' );&lt;br /&gt;
		r( /(И|и)\sт\.\s?п\./g, '$1' + u + 'т.' + u + 'п.' );&lt;br /&gt;
		r( /(Т|т)\.\s?н\./g, '$1.' + u + 'н.' );&lt;br /&gt;
		r( /(И|и)\.\s?о\./g, '$1.' + u + 'о.' );&lt;br /&gt;
		r( /н\.\s?э(\.|(?=\s))/g, 'н.' + u + 'э.' );&lt;br /&gt;
		r( /(Д|д)(о|\.)\sн\.\s?э\./g, '$1о' + u + 'н.' + u + 'э.' );&lt;br /&gt;
		r( /(\d)[\u00A0 ]?(млн|млрд|трлн|(?:м|с|д|к)?м|[км]г)\.?(?=[,;.]| &amp;quot;?[а-яё\-])/g, '$1' + u + '$2' );&lt;br /&gt;
		r( /(\d)[\u00A0 ](тыс)([^\.А-Яа-яЁё])/g, '$1' + u + '$2.$3' );&lt;br /&gt;
		r( /ISBN:\s?(?=[\d\-]{8,17})/, 'ISBN ' );&lt;br /&gt;
&lt;br /&gt;
		// Insert/delete spaces&lt;br /&gt;
		r( /^([#*:]+)[ \t\f\v]*(?!\{\|)([^ \t\f\v*#:;])/gm, '$1 $2' ); // space after #*: unless before table&lt;br /&gt;
		r( /(\S)[\u00A0 \t](-{1,3}|—)[\u00A0 \t](\S)/g, '$1' + u + '— $3' );&lt;br /&gt;
		r( /([А-ЯЁ]\.) ?([А-ЯЁ]\.) ?([А-ЯЁ][а-яё])/g, '$1' + u + '$2' + u + '$3' );&lt;br /&gt;
		r( /([А-ЯЁ]\.)([А-ЯЁ]\.)/g, '$1 $2' );&lt;br /&gt;
		r( /([а-яё]&amp;quot;?\)?[\.\?!:])((?:\x01\d+\x02\|)?[A-ZА-ЯЁ])/g, '$1 $2' ); // word. word&lt;br /&gt;
		r( /([)&amp;quot;a-zа-яё\]²³])\s*([,:])([\[(a-zа-яё])/g, '$1$2 $3' ); // &amp;quot;word, word&amp;quot;, &amp;quot;word: word&amp;quot;; except &amp;quot;:&amp;quot;&lt;br /&gt;
		r( /([)a-zа-яё\]²³])\s*([,:])&amp;quot;/g, '$1$2 &amp;quot;' );&lt;br /&gt;
		r( /([)&amp;quot;a-zа-яё\]²³])\s([,;])\s([\[(&amp;quot;a-zа-яё])/g, '$1$2 $3' );&lt;br /&gt;
		r( /([^%\/\wА-Яа-яЁё]\d+?(?:[\.,]\d+?)?) ?([%‰])(?!-[А-Яа-яЁё])/g, '$1' + u + '$2' ); //5 %&lt;br /&gt;
		r( /(\d) ([%‰])(?=-[А-Яа-яЁё])/g, '$1$2' ); //5%-й&lt;br /&gt;
		r( /([№§])(\s*)(\d)/g, '$1' + u + '$3' );&lt;br /&gt;
		// inside ()&lt;br /&gt;
		r( /\( +/g, '(' );&lt;br /&gt;
		r( / +\)/g, ')' );&lt;br /&gt;
&lt;br /&gt;
		// Temperature&lt;br /&gt;
		r( /([\s\d=≈≠≤≥&amp;lt;&amp;gt;—(&amp;quot;'|])([+±−\-]?\d+?(?:[.,]\d+?)?)(([ °\^*]| [°\^*])(C|F))(?=[\s&amp;quot;').,;!?|\x01])/gm, '$1$2' + u + '°$5' ); //'&lt;br /&gt;
&lt;br /&gt;
		// Dot → comma in numbers&lt;br /&gt;
		r( /(\s\d+)\.(\d+[\u00A0 ]*[%‰°×])/gi, '$1,$2' );&lt;br /&gt;
&lt;br /&gt;
		// Plugins&lt;br /&gt;
		for ( i in window.wfPlugins ) {&lt;br /&gt;
			if ( window.wfPlugins.hasOwnProperty( i ) ) {&lt;br /&gt;
				window.wfPlugins[i]( txt, r );&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		// &amp;quot;&amp;quot; → «»&lt;br /&gt;
		for ( i = 1; i &amp;lt;= 2; i++ ) {&lt;br /&gt;
			r( /([\s\x02!|#'&amp;quot;\/(;+\-])&amp;quot;([^&amp;quot;]*)([^\s&amp;quot;(|])&amp;quot;([^a-zа-яё])/ig, '$1«$2$3»$4' ); //&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
		while ( /«[^»]*«/.test( txt ) ) {&lt;br /&gt;
			r( /«([^»]*)«([^»]*)»/g, '«$1„$2“' );&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		if ( '0'.replace( '0', '$$' ) === '$' ) { ////$ in replacing string is special, except in IE&lt;br /&gt;
			for ( i = 0; i &amp;lt; hidden.length; i++ ) {&lt;br /&gt;
				hidden[i] = hidden[i].replace( /\$/g, '$$$$' );&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		while ( hidden.length &amp;gt; 0 ) {&lt;br /&gt;
			r( '\x01' + hidden.length + '\x02', hidden.pop());&lt;br /&gt;
		}&lt;br /&gt;
		txt = txt.substr( 1, txt.length - 2 );&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	function processAllText() {&lt;br /&gt;
		txt = wpTextbox1.value;&lt;br /&gt;
		processText();&lt;br /&gt;
		r( /^[\n\r]+/, '' );&lt;br /&gt;
		wpTextbox1.value = txt;&lt;br /&gt;
		txt = '';&lt;br /&gt;
		if ( window.auto_comment &amp;amp;&amp;amp;&lt;br /&gt;
			window.insertSummary &amp;amp;&amp;amp;&lt;br /&gt;
			!document.editform.wpSection.value&lt;br /&gt;
		) {&lt;br /&gt;
			window.insertSummary( 'викификатор' );&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	// Check regexp support&lt;br /&gt;
	try {&lt;br /&gt;
		txt = 'ая'.replace( /а/g, 'б' ).replace( /б(?=я)/, 'в' );&lt;br /&gt;
	} catch ( e ) {}&lt;br /&gt;
	if ( txt !== 'вя' ) {&lt;br /&gt;
		alert( wmCantWork );&lt;br /&gt;
		return;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	wpTextbox1.focus();&lt;br /&gt;
&lt;br /&gt;
	// Modern browsers&lt;br /&gt;
	if ( typeof wpTextbox1.selectionStart !== 'undefined' ) {&lt;br /&gt;
		var textScroll = wpTextbox1.scrollTop,&lt;br /&gt;
			startPos = wpTextbox1.selectionStart,&lt;br /&gt;
			endPos = wpTextbox1.selectionEnd;&lt;br /&gt;
		txt = wpTextbox1.value.substring( startPos, endPos );&lt;br /&gt;
		if ( txt === '' ) {&lt;br /&gt;
			processAllText();&lt;br /&gt;
		} else {&lt;br /&gt;
			processText();&lt;br /&gt;
			wpTextbox1.value = wpTextbox1.value.substring( 0, startPos ) +&lt;br /&gt;
				txt + wpTextbox1.value.substring( endPos );&lt;br /&gt;
		}&lt;br /&gt;
		wpTextbox1.selectionStart = startPos;&lt;br /&gt;
		wpTextbox1.selectionEnd = startPos + txt.length;&lt;br /&gt;
		wpTextbox1.scrollTop = textScroll;&lt;br /&gt;
&lt;br /&gt;
	// IE&lt;br /&gt;
	} else if ( document.selection &amp;amp;&amp;amp; document.selection.createRange ) {&lt;br /&gt;
		var range = document.selection.createRange();&lt;br /&gt;
		txt = range.text;&lt;br /&gt;
		if ( txt === '' ) {&lt;br /&gt;
			processAllText();&lt;br /&gt;
		} else {&lt;br /&gt;
			processText();&lt;br /&gt;
			range.text = txt;&lt;br /&gt;
			if ( range.moveStart ) {&lt;br /&gt;
			range.moveStart( 'character', -txt.length );&lt;br /&gt;
			}&lt;br /&gt;
			range.select();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
	// Other browsers&lt;br /&gt;
	} else if ( confirm( wmFullText ) ) {&lt;br /&gt;
		processAllText();&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	document.documentElement.scrollTop = winScroll; // scroll back, for IE/Opera&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Toolbar buttons&lt;br /&gt;
&lt;br /&gt;
var addOldToolbarButton = function() {&lt;br /&gt;
	var $toolbar = $( '#gadget-toolbar' );&lt;br /&gt;
	if ( !$toolbar.length ) {&lt;br /&gt;
		$toolbar = $( '#toolbar' );&lt;br /&gt;
	}&lt;br /&gt;
	$( '&amp;lt;div&amp;gt;' )&lt;br /&gt;
		.addClass( 'mw-toolbar-editbutton' )&lt;br /&gt;
		.attr( 'alt', 'Викификатор' )&lt;br /&gt;
		.attr( 'title', 'Викификатор — автоматический обработчик текста' )&lt;br /&gt;
		.css( {&lt;br /&gt;
			'width': '69px',&lt;br /&gt;
			'backgroundImage': 'url(//upload.wikimedia.org/wikipedia/commons/3/38/Button_wikify.png)'&lt;br /&gt;
		} )&lt;br /&gt;
		.appendTo( $toolbar )&lt;br /&gt;
		.on( 'click', Wikify );&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
var addNewToolbarButton = function() {&lt;br /&gt;
	$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {&lt;br /&gt;
		'section': 'main',&lt;br /&gt;
		'group': 'gadgets',&lt;br /&gt;
		'tools': {&lt;br /&gt;
			'wikif': {&lt;br /&gt;
				label: 'Викификатор — автоматический обработчик текста',&lt;br /&gt;
				type: 'button',&lt;br /&gt;
				icon: '//upload.wikimedia.org/wikipedia/commons/0/06/Wikify-toolbutton.png',&lt;br /&gt;
				action: {&lt;br /&gt;
					type: 'callback',&lt;br /&gt;
					execute: function() {&lt;br /&gt;
						Wikify();&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	} );&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {&lt;br /&gt;
	mw.loader.using( [ 'user.options', 'jquery.textSelection' ], function () {&lt;br /&gt;
		if ( mw.user.options.get( 'usebetatoolbar' ) === 1 ) {&lt;br /&gt;
			if ( mw.user.options.get( 'showtoolbar' ) === 1 ) {&lt;br /&gt;
				$.when(&lt;br /&gt;
					mw.loader.using( 'ext.wikiEditor.toolbar' ),&lt;br /&gt;
					$.ready&lt;br /&gt;
				).then( addNewToolbarButton );&lt;br /&gt;
			}&lt;br /&gt;
		} else {&lt;br /&gt;
			mw.loader.using( 'mediawiki.toolbar', function() {&lt;br /&gt;
				$( addOldToolbarButton );&lt;br /&gt;
			});&lt;br /&gt;
		}&lt;br /&gt;
	} );&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Evgen</name></author>
	</entry>
</feed>