Aller au contenu

« Utilisateur:Tractopelle-jaune/Toolbar.js » : différence entre les versions

Une page de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
m déclaration sections en-dehors (lisibilité)
m nettoyage code
Ligne 24 : Ligne 24 :
'tracto-tools': {
'tracto-tools': {
type: 'toolbar',
type: 'toolbar',
label: 'Tracto-Tools'
label: 'Tracto-Tools',
groups: {
}},
'code': { label: 'Code' }
}}},
section: 'tracto-tools',
section: 'tracto-tools',
group: 'code',
groups: {
tools: { //</nowiki>
'code': {
'code-add-code': {
label: 'Code',
tools: { //</nowiki>
type: 'button',
'code-add-code': {
label: 'Ajouter balises <code></code>',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/4/45/Farm-Fresh_script_code.png/22px-Farm-Fresh_script_code.png',
type: 'button',
action: {
label: 'Ajouter balises <code></code>',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/4/45/Farm-Fresh_script_code.png/22px-Farm-Fresh_script_code.png',
action: {
options: {
type: 'encapsulate',
pre: '<code>',
options: {
peri: '',
pre: '<code>',
post: '</code>'
}}},
peri: '',
'code-add-code-with-id': {
post: '</code>'
}}},
type: 'button',
label: 'Ajouter balises <code id=""></code> avec l\'id contenant le texte séléctionné',
'code-add-code-with-id': {
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Farm-Fresh_script_go.png/22px-Farm-Fresh_script_go.png',
type: 'button',
action: {
label: 'Ajouter balises <code id=""></code> avec l\'id contenant le texte séléctionné',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Farm-Fresh_script_go.png/22px-Farm-Fresh_script_go.png',
action: {
options: {
type: 'encapsulate',
pre: '<code id="param-xxx">',
options: {
peri: '',
pre: '<code id="param-xxx">',
post: '</code>',
regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
peri: '',
post: '</code>',
regexReplace: '$1<code id="param-$2">$2</code>$3'
}}},
regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
'code-add-code-with-link-id': {
regexReplace: '$1<code id="param-$2">$2</code>$3'
}}},
type: 'button',
label: 'Ajouter balises <code>[[#param-xxx|...]]</code> avec lien vers le paramètre séléctionné',
'code-add-code-with-link-id': {
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/68/Farm-Fresh_script_link.png/22px-Farm-Fresh_script_link.png',
type: 'button',
action: {
label: 'Ajouter balises <code>[[#param-xxx|...]]</code> avec lien vers le paramètre séléctionné',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/68/Farm-Fresh_script_link.png/22px-Farm-Fresh_script_link.png',
action: {
options: {
type: 'encapsulate',
pre: '<code>[[#param-xxx|',
options: {
peri: '',
pre: '<code>[[#param-xxx|',
post: ']]</code>',
regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
peri: '',
post: ']]</code>',
regexReplace: '$1<code>[[#param-$2|$2]]</code>$3'
}}},
regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
'code-add-magic-word': {
regexReplace: '$1<code>[[#param-$2|$2]]</code>$3'
label: 'Ajout balises code + lien vers Aide:Mot magique',
}}},
type: 'button',
'code-add-magic-word': {
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/61/Farm-Fresh_script_palette.png/22px-Farm-Fresh_script_palette.png',
label: 'Ajout balises code + lien vers Aide:Mot magique',
action: {
type: 'button',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/61/Farm-Fresh_script_palette.png/22px-Farm-Fresh_script_palette.png',
action: {
options: {
pre: '<code>[[Aide:Mot magique#XXX|<nowiki>',
type: 'encapsulate',
options: {
peri: 'XXX',
pre: '<code>[[Aide:Mot magique#XXX|<nowiki>',
post: '</nowiki>]]</code>',
/* 1 2 3 4 5 6 7 8 9 10 11 12 */
peri: 'XXX',
regex: /(?:<code>(?:<nowiki>)?|^( *))(?:(__)([A-Z]+)(__)|(\{\{)([A-Za-z0-9 _!]+):?(\}\})|(\{\{)m\|([A-Za-z0-9 _!]+)(\}\})|([A-Za-z0-9 _!]+):?)(?:(?:<\/nowiki>)?<\/code>|( *)$)/g,
post: '</nowiki>]]</code>',
regexReplace: '$1<code>[[Aide:Mot magique#$3$6$9$11|<nowiki>$2$3$4$5$6$7$8$9$10$11</nowiki>]]</code>$12'
/* 1 2 3 4 5 6 7 8 9 10 11 12 */
}}},
regex: /(?:<code>(?:<nowiki>)?|^( *))(?:(__)([A-Z]+)(__)|(\{\{)([A-Za-z0-9 _!]+):?(\}\})|(\{\{)m\|([A-Za-z0-9 _!]+)(\}\})|([A-Za-z0-9 _!]+):?)(?:(?:<\/nowiki>)?<\/code>|( *)$)/g,
'code-add-code+nowiki': {
regexReplace: '$1<code>[[Aide:Mot magique#$3$6$9$11|<nowiki>$2$3$4$5$6$7$8$9$10$11</nowiki>]]</code>$12'
}}},
type: 'button',
'code-add-code+nowiki': {
label: 'Ajouter balises <code><nowiki></nowiki></code>',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/a/ac/Farm-Fresh_script_visual_studio.png/22px-Farm-Fresh_script_visual_studio.png',
type: 'button',
action: {
label: 'Ajouter balises <code><nowiki></nowiki></code>',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/a/ac/Farm-Fresh_script_visual_studio.png/22px-Farm-Fresh_script_visual_studio.png',
action: {
options: {
type: 'encapsulate',
pre: '<code><nowiki>',
options: {
peri: '',
pre: '<code><nowiki>',
post: '</nowiki></code>'
}}},
peri: '',
'code-add-nowiki': {
post: '</nowiki></code>'
}}},
type: 'button',
'code-add-nowiki': {
label: 'Ajouter balises <nowiki></nowiki>',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Farm-Fresh_script_code_red.png/22px-Farm-Fresh_script_code_red.png',
type: 'button',
action: {
label: 'Ajouter balises <nowiki></nowiki>',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Farm-Fresh_script_code_red.png/22px-Farm-Fresh_script_code_red.png',
action: {
options: {
type: 'encapsulate',
pre: '<nowiki>',
options: {
peri: '',
pre: '<nowiki>',
post: '</nowiki>'
}}},
peri: '',
'code-decode': {
post: '</nowiki>'
}}},
type: 'button',
'code-decode': {
label: 'De-code',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/87/Farm-Fresh_script_delete.png/22px-Farm-Fresh_script_delete.png',
type: 'button',
label: 'De-code',
action: {
type: 'replace',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/87/Farm-Fresh_script_delete.png/22px-Farm-Fresh_script_delete.png',
action: {
options: {
type: 'replace',
pre: '',
options: {
peri: '',
pre: '',
post: '',
regex: /(?:<code>|<nowiki>)+(.+?)(?:<\/nowiki>|<\/code>)+/g,
peri: '',
post: '',
regexReplace: '$1'
}}},
regex: /(?:<code>|<nowiki>)+(.+?)(?:<\/nowiki>|<\/code>)+/g,
'code-apos2code': {
regexReplace: '$1'
}}},
type: 'button',
label: 'Remplacer \'\'\'texte\'\'\' par <code>texte</code>',
'code-apos2code': {
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/b/be/Farm-Fresh_script_flash.png/22px-Farm-Fresh_script_flash.png',
type: 'button',
action: {
label: 'Remplacer \'\'\'texte\'\'\' par <code>texte</code>',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/b/be/Farm-Fresh_script_flash.png/22px-Farm-Fresh_script_flash.png',
action: {
options: {
type: 'encapsulate',
pre: '<code>',
options: {
peri: '',
pre: '<code>',
post: '</code>',
regex: /(?:\'{2,5}(?:<code>)?(.+?)(?:<\/code>)?\'{2,5}|« *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *»|\" *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *\")/g,
peri: '',
post: '</code>',
regexReplace: '<code>$1$2$3</code>'
}}},
regex: /(?:\'{2,5}(?:<code>)?(.+?)(?:<\/code>)?\'{2,5}|« *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *»|\" *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *\")/g,
'code-code2definitionList': {
regexReplace: '<code>$1$2$3</code>'
}}},
type: 'button',
label: 'Remplacer "* \'\'\'<code>param</code>\'\'\' : " par "; <code>param</code> : " sur toutes les lignes sélectionnées',
'code-code2definitionList': {
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/89/Farm-Fresh_macro_show_all_actions.png/22px-Farm-Fresh_macro_show_all_actions.png',
type: 'button',
action: {
label: 'Remplacer "* \'\'\'<code>param</code>\'\'\' : " par "; <code>param</code> : " sur toutes les lignes sélectionnées',
type: 'encapsulate',
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/89/Farm-Fresh_macro_show_all_actions.png/22px-Farm-Fresh_macro_show_all_actions.png',
action: {
options: {
type: 'encapsulate',
pre: '; <code>',
options: {
peri: '',
pre: '; <code>',
post: '</code> : ',
regex: /^[*;]+ *(?:\'{2,5} *([^<>=\n;*]+?) *(?:[:=—–] *| +- +)?\'{2,5} *(?:[:=—–] *| +- +)?|(?:\'{2,5})?<code>((?:<nowiki>)?[^<>=\n;*]+?(?:<\/nowiki>)?)<\/code>(?:\'{2,5})? *(?:[:=—–] *| +- +)?|([^<>:=\n—–;*]+?) *[:=—–] *| +- +)/mg,
peri: '',
post: '</code> : ',
regexReplace: '; <code>$1$2$3</code> : '
}}}
regex: /^[*;]+ *(?:\'{2,5} *([^<>=\n;*]+?) *(?:[:=—–] *| +- +)?\'{2,5} *(?:[:=—–] *| +- +)?|(?:\'{2,5})?<code>((?:<nowiki>)?[^<>=\n;*]+?(?:<\/nowiki>)?)<\/code>(?:\'{2,5})? *(?:[:=—–] *| +- +)?|([^<>:=\n—–;*]+?) *[:=—–] *| +- +)/mg,
} //<nowiki>
regexReplace: '; <code>$1$2$3</code> : '
}}}
} //<nowiki>
}
}
});
});
};
};

Version du 29 avril 2022 à 10:23

//<nowiki>

/* Boutons supplémentaires pour la barre d'outils WikiEditor (barre d'outils par défaut) */
// [[mw:Extension:WikiEditor/Toolbar customization]]

/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar … */
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
	mw.loader.using( 'user.options' ).then( function () {
		// This can be the string "0" if the user disabled the preference ([[phab:T54542#555387]])
		if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
			$.when(
				mw.loader.using( 'ext.wikiEditor' ), $.ready
			).then( customizeToolbar );
		}
	} );
}

/* Barre d'outils supplémentaires */

// Boutons supplémentaires
var customizeToolbar = function() { $('#wpTextbox1').wikiEditor('addToToolbar',
{
	sections: {
		'tracto-tools': {
			type: 'toolbar',
			label: 'Tracto-Tools',
			groups: {
				'code': { label: 'Code' }
	}}},
	
	section: 'tracto-tools',
	group: 'code',
	tools: { //</nowiki>
		'code-add-code': {
			type: 'button',
			label: 'Ajouter balises <code></code>',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/4/45/Farm-Fresh_script_code.png/22px-Farm-Fresh_script_code.png',
			action:	{
				type: 'encapsulate',
				options: {
					pre: '<code>',
					peri: '',
					post: '</code>'
		}}},
		'code-add-code-with-id': {
			type: 'button',
			label: 'Ajouter balises <code id=""></code> avec l\'id contenant le texte séléctionné',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Farm-Fresh_script_go.png/22px-Farm-Fresh_script_go.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '<code id="param-xxx">',
					peri: '',
					post: '</code>',
					regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
					regexReplace: '$1<code id="param-$2">$2</code>$3'
		}}},
		'code-add-code-with-link-id': {
			type: 'button',
			label: 'Ajouter balises <code>[[#param-xxx|...]]</code> avec lien vers le paramètre séléctionné',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/68/Farm-Fresh_script_link.png/22px-Farm-Fresh_script_link.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '<code>[[#param-xxx|',
					peri: '',
					post: ']]</code>',
					regex: /(?:<code>|\'{2,5}|\"|^( *))([^<>|{}\[\]#]+?)(?:<\/code>|\'{2,5}|\"|( *)$)/g,
					regexReplace: '$1<code>[[#param-$2|$2]]</code>$3'
		}}},
		'code-add-magic-word': {
			label: 'Ajout balises code + lien vers Aide:Mot magique',
			type: 'button',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/6/61/Farm-Fresh_script_palette.png/22px-Farm-Fresh_script_palette.png',
			action:	{
				type: 'encapsulate',
				options: {
					pre: '<code>[[Aide:Mot magique#XXX|<nowiki>',
					peri: 'XXX',
					post: '</nowiki>]]</code>',
					/*                               1       2   3       4    5     6                  7      8        9                10     11                                             12   */
					regex: /(?:<code>(?:<nowiki>)?|^( *))(?:(__)([A-Z]+)(__)|(\{\{)([A-Za-z0-9 _!]+):?(\}\})|(\{\{)m\|([A-Za-z0-9 _!]+)(\}\})|([A-Za-z0-9 _!]+):?)(?:(?:<\/nowiki>)?<\/code>|( *)$)/g,
					regexReplace: '$1<code>[[Aide:Mot magique#$3$6$9$11|<nowiki>$2$3$4$5$6$7$8$9$10$11</nowiki>]]</code>$12'
		}}},
		'code-add-code+nowiki': {
			type: 'button',
			label: 'Ajouter balises <code><nowiki></nowiki></code>',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/a/ac/Farm-Fresh_script_visual_studio.png/22px-Farm-Fresh_script_visual_studio.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '<code><nowiki>',
					peri: '',
					post: '</nowiki></code>'
		}}},
		'code-add-nowiki': {
			type: 'button',
			label: 'Ajouter balises <nowiki></nowiki>',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Farm-Fresh_script_code_red.png/22px-Farm-Fresh_script_code_red.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '<nowiki>',
					peri: '',
					post: '</nowiki>'
		}}},
		'code-decode': {
			type: 'button',
			label: 'De-code',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/87/Farm-Fresh_script_delete.png/22px-Farm-Fresh_script_delete.png',
			action: {
				type: 'replace',
				options: {
					pre: '',
					peri: '',
					post: '',
					regex: /(?:<code>|<nowiki>)+(.+?)(?:<\/nowiki>|<\/code>)+/g,
					regexReplace: '$1'
		}}},
		'code-apos2code': {
			type: 'button',
			label: 'Remplacer \'\'\'texte\'\'\' par <code>texte</code>',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/b/be/Farm-Fresh_script_flash.png/22px-Farm-Fresh_script_flash.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '<code>',
					peri: '',
					post: '</code>',
					regex: /(?:\'{2,5}(?:<code>)?(.+?)(?:<\/code>)?\'{2,5}|« *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *»|\" *(?:<code>)?([^«»\n]+?)(?:<\/code>)? *\")/g,
					regexReplace: '<code>$1$2$3</code>'
		}}},
		'code-code2definitionList': {
			type: 'button',
			label: 'Remplacer "* \'\'\'<code>param</code>\'\'\' : " par "; <code>param</code> : " sur toutes les lignes sélectionnées',
			icon: '//upload.wikimedia.org/wikipedia/commons/thumb/8/89/Farm-Fresh_macro_show_all_actions.png/22px-Farm-Fresh_macro_show_all_actions.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: '; <code>',
					peri: '',
					post: '</code> : ',
					regex: /^[*;]+ *(?:\'{2,5} *([^<>=\n;*]+?) *(?:[:=—–] *| +- +)?\'{2,5} *(?:[:=—–] *| +- +)?|(?:\'{2,5})?<code>((?:<nowiki>)?[^<>=\n;*]+?(?:<\/nowiki>)?)<\/code>(?:\'{2,5})? *(?:[:=—–] *| +- +)?|([^<>:=\n—–;*]+?) *[:=—–] *| +- +)/mg,
					regexReplace: '; <code>$1$2$3</code> : '
		}}}
	} //<nowiki>
});
};
// </nowiki>