User:Zdzislaw/common.js

/* * Na podstawie skryptu: * Typo * lokalizacja źródła: https://fr.wikisource.org/wiki/MediaWiki:Gadget-Typo.js * Auteur : Marc, Tpt * Dernière révision : 25 mai 2011 * (znacznie) zmodyfikowany przez Zdzislaw * 02.2014 * 08.2015 przejście na ext.gadget.lib-toolbar + modyfikacje (Zdzislaw) */ $.typo = { todo: [], add: function(fonction) { $.typo.todo.push(fonction); },	exec: function { var txt = $('#wpTextbox1').val; for (var i = 0; i < $.typo.todo.length; ++i) { txt = $.typo.todo[i](txt); }		$('#wpTextbox1').val(txt); },  addButtonToWikiEditorToolbar : function ( b ){ var tools = {}; tools[ b.imageId ] = { label: b.speedTip, type: 'button', icon: b.imageFile, action: { type: 'callback', execute: b.onClick }	};	$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {		section: 'main',		group: 'insert',		tools: tools	} ); $( '[rel="' + b.imageId + '"]' ).width( 22 ); },   addButtonToClassicToolbar : function ( b ){ mw.toolbar.addButton( {		imageFile: b.imageFile,		speedTip: b.speedTip,		imageId: b.imageId	} ); $( '#' + b.imageId ).off( 'click' ).click( function {		b.onClick;		return false;	} ).width( 23 ); },   /* Auteur: Helderwiki */ editForm : function { var modules, add, img; // This can be the string "0" if the user disabled the preference (52542) if( mw.user.options.get( 'usebetatoolbar' ) == 1 ){ modules = [ 'ext.wikiEditor', 'schema.Edit' ]; img = '//upload.wikimedia.org/wikipedia/commons/8/82/Toolbaricon_regular_T.png'; add = $.typo.addButtonToWikiEditorToolbar; } else if ( mw.user.options.get( 'showtoolbar' ) == 1 ){ modules = 'mediawiki.action.edit'; img = '//upload.wikimedia.org/wikipedia/commons/9/9f/Button_defaultsort.png'; add = $.typo.addButtonToClassicToolbar; } else { return; }	$.when(		mw.loader.using( modules ),		$.ready	).then( function{		add( { imageFile: img, speedTip: 'Popraw układ i najczęstsze błędy OCR...', imageId: 'wsTypo', onClick: $.typo.exec } );	} );   }, };

if($.inArray(mw.config.get('wgAction'), ['edit', 'submit']) !== -1 ) { $(function {		//typo		$.typo.add(function(str) { if ( mw.user.options.get( 'gadget-Typo-pl-poem', 0) != 1 ) { // tiret conditionnel str = str.replace(/­\n?/g, ""); str = str.replace(/¬\n?/g, ""); // espace str = str.replace(/(\S)- *\n/g, "$1"); str = str.replace(/([^\.>\"]) +\n/g, "$1 ");				str = str.replace(/ +\n/g, "\n\n");			}

// fix divers str = str.replace(/ +/g," ");

//- typographie str = str.replace(/\n +/g, "\n"); str = str.replace(/ -/g, " —"); str = str.replace(/- /g, "— "); str = str.replace(/ - /g, " — "); str = str.replace(/ -,/g, " —,"); str = str.replace(/ - ,/g, " —,"); str = str.replace(/([^ \n])—/g, "$1 —"); str = str.replace(/—([^ \n])/g, "— $1");

str = str.replace(/( *),( *)/g, ", ");

//str = str.replace(/([^'])'([^'])/g, "$1’$2");

str = str.replace(/ \./g, "."); str = str.replace(/ \!/g, "!"); str = str.replace(/ \?/g, "?"); str = str.replace(/ \,/g, ","); str = str.replace(/ \;/g, ";"); str = str.replace(/ \:/g, ":");

//str = str.replace(/"([a-ząćęłóńśżź])/gi, "„$1");			//str = str.replace(/"/g, "“"); str = str.replace(/\" ,/g, "\","); str = str.replace(/\" \./g, "\"."); str = str.replace(/n\. p\./g, "n. p.");

// syntaxe wiki str = str.replace(//gi, " "); str = str.replace(/ /gi, " "); str = str.replace(/ /gi, " "); str = str.replace(/ /gi, "");

//typowe błedy orr str = str.replace(/[■•]/g, ""); str = str.replace(/ [iv]v /g, " w "); str = str.replace(/cb([ \.\,\:\;\?\!])/g, "ch$1"); str = str.replace(/([a-z])6([a-z])/gi, "$1ó$2"); str = str.replace(/([a-z])1([a-z])/gi, "$1l$2"); str = str.replace(/( [Tt])ern/g, "$1em"); str = str.replace(/\/\./g, "z"); str = str.replace(/cbc/g, "chc"); str = str.replace(/ icb/g, " ich"); str = str.replace(/c[lł]i/g, "ch"); str = str.replace(/ ź([eao])/g, " ż$1"); str = str.replace(/ iź/g, " iż"); str = str.replace(/ teź/g, " też"); str = str.replace(/ byl /g, " był "); str = str.replace(/i t\. /g, "i t. "); return $.trim(str); }); $.typo.editForm; }); }