Заўвага: каб пабачыць зьмены пасьля публікацыі, Вам можа спатрэбіцца ачысьціць кэш Вашага браўзэра.

  • Firefox / Safari: трымайце Shift і націсьніце Reload, ці націсьніце Ctrl-F5 ці Ctrl-R (⌘-R на Mac)
  • Google Chrome: націсьніце Ctrl-Shift-R (⌘-Shift-R на Mac)
  • Edge: трымайце Ctrl і націсьніце Refresh, ці націсьніце Ctrl-F5.
mw.loader.using( 'jquery.textSelection' ).done(function () {

window.toHlist = function () {
	var classList = 'hlist';
	var text = $( '#wpTextbox1' ).textSelection( 'getContents' ).replace( /<br ?\/>/g, '<br>' );
	var newText = text.replace( /(\|\s*(?:сьпіс|list|зьмест)\d*\s*=)([^]*?\n\s*)(?=\||\}\})/g, function ( s, m1, m2 ) {
		var m2r = m2.replace( /\{\{(?:[nN]o(?:wrap|br)|[sS])\|([^•·\}]+?)\s*(?:(?:\{\{)?•(?:\}\})?|(?:\'\'\'|\{\{)?·(?:\'\'\'|\}\})?|\{\{\*\}\})\s*\}\}\s*/g, '$1\n* ' );
		if ( m2 !== m2r && classList.indexOf( 'hlist-items-nowrap' ) === -1 ) {
			classList += ' hlist-items-nowrap';
		}
		m2r = m2r.replace( /\s*({\{[·•*т!](w(rap)?)?\}\}|·|•|&#124;)(?:&nbsp;)?\s*(?:&nbsp;)?/g, '\n* ' );
		if ( m2 !== m2r ) {
			m2r = m2r.replace( /^(\s*)<div(?:[\w ]+?=[^<>]+| ?)>([^]*?)\n?<\/div>(\s*)$/, '$1$2$3' );
			m2r = m2r.replace(
				/^(\s*)\{\{[nN]owrap пачатак\}\}([^]*?)\n?\{\{[nN]owrap канец\}\}(\s*)$/,
				'$1$2$3'
			);
			m2r = m2r.replace( /^(\s*)<center>([^]*?)\n?<\/center>(\s*)$/, '$1$2$3' );
			m2r = '\n* ' + m2r.replace( /^\s*/g, '' );
			m2r = m2r.replace( /\* \{\{(?:[nN]o(?:wrap|br)|[sS])\|([^\}]+?)\s*\}\}(\s*)$/, '* $1$2' ); 
			m2r = m2r.replace( / *(\s*)$/, '$1' );
			var prevM2r = m2r;
			// Артэфакты з {{nobr}} застаюцца, калі ўнутры былі шаблёны, прыкладам {{гэта добры артыкул}}
			m2r = m2r.replace( /\* \}\}\n/g, '* ' );
			m2r = m2r.replace( /\* \{\{(?:[nN]o(?:wrap|br)|[sS])\|/g, '* ' );
			m2r = m2r.replace( /(\n\* )([^{].+)\}\}(\s*)$/, '$1$2$3' );
			if ( prevM2r !== m2r && classList.indexOf( 'hlist-items-nowrap' ) === -1 ) {
				classList += ' hlist-items-nowrap';
			}
		}
		return m1 + m2r;
	} );
	if ( !newText.match( /[Нн]авігацыйная паласа/ ) && !newText.match( /[^"']hlist[^"']/ ) ) {
		if ( newText.indexOf( '\n\n' ) !== -1 ) {
			newText = newText.replace( /^([^]*?)(\n\n)/, '$1\n|кляса_сьпісаў = ' + classList + '$2' );
		} else {
			newText = newText.replace(
				/^([^]*\| *state *=[^\n]*\n)/,
				'$1|кляса_сьпісаў = ' + classList + '\n'
			);
		}
	}
	$( '#wpTextbox1' ).textSelection( 'setContents', newText );
	
	var summaryText = $( '#wpSummary' ).val();
	if ( text !== newText && !/hlist/.test( summaryText ) ) {
		$( '#wpSummary' ).val( summaryText + ( /[^,; \/]$/.test( summaryText ) ? ', ' : '' ) +
			'перавод на hlist з дапамогаю [[Шаблён:Навігацыйная табліца2#скрыптазакладка|скрыптазакладкі]]'
		);
	}
};
window.toHlist();

} );