Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.

  • Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
  • Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
  • Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
  • Opera: натисніть Ctrl-F5
/* Взято у  [https://uk.wikisource.org/w/index.php?title=Користувач:Oleandr/poem.js&oldid=60078|Користувача Oleandr] ( [[Користувач:Oleandr/poem.js]] ) і трішки змінено */

$(function(){
    mw.loader.using( 'ext.wikiEditor', function() {
        if ($('#editform').length) {
            $('#wpTextbox1' ).wikiEditor( 'addToToolbar', {
                'section': 'main',
                'groups': {
                    'atoly': {
                        'label': 'Prose'
                        }
                    }
                });
 
            $('#wpTextbox1').wikiEditor('addToToolbar', {
                'section': 'main',
                'group': 'atoly',
                'tools': {
                    id: {
                        type:'button',
                        action: {type:'callback', execute: proseMain},
                        label:'Проза',
                        icon: 'https://uk.wikisource.org/static/1.27.0-wmf.13/extensions/CodeEditor/images/wrapping-off.png'
                    }
                }
            })
        }
    });
});
 
function proseMain() 
{ 
    var text = $('#wpTextbox1').val();
    
    // remove space before ? ! . , e.t.c
    text = text.replace(/\s([\.\!\?\:\;\,])/g, '$1'); 
    
    // (?=шаблон) Позитивний перегляд уперед, Заміна '"' на '“' якщо після символа є крапка, пробільний символ, або кома 
    text = text.replace(/"(?=[\.\s\,])/g, '“');

	// Заміна —t ¬ на —
    text = text.replace(/—t/g, '—');
    text = text.replace(/¬/g, '\-');
    
    // Додати додатковий пустий рядок, якщо є символ нового рядка.  
    text = text.replace(/([\.\!\?\:\;])\s?\n/g, '$1\n\n'); 
    
    // прибрати символ переносу рядка і з'єднати рядки
    text = text.replace(/([А-яІіЇїҐґЄє\,])\-\s?\n([А-яІіЇїҐґЄє])/g, '$1$2');
    
    // прибрати подвійні пусті символи
    text = text.replace(/([А-яІіЇїҐґЄє\,])\s? \n([А-яІіЇїҐґЄє])/g, '$1 $2');
    
    text = text.replace(/([А-яІіЇїҐґЄє\,])\n([А-яІіЇїҐґЄє])/g, '$1 $2');
    
    // заміна — на —
    // замість \s використовуємо  [\f\r\t\v] щоб не символ \n не прибирати
    // text = text.replace(/[ \f\r\t\v]?\{*—\}*\s?/g, '—');
    
    $('#wpTextbox1').val(text);
}