Javascript examples/ToolbarCustomization
From Linkwiki
| tbd @ |
|---|
/* ============================================================
* START Edit-Toolbar Customization
* signature button on all pages
* add strike
* remove <big>
* dropdown menu for redirects with fitting categories
*
* @source https://www.mediawiki.org/wiki/Extension:WikiEditor/Toolbar_customization
* @version 01.08.2026
* @author [[wde:Benutzer:StipenTreublatt]]
*/
// Check if we're editing a page.
if ( [ 'edit', 'submit' ].indexOf( mw.config.get( 'wgAction' ) ) !== -1 ) {
// Add a hook handler.
mw.hook( 'wikiEditor.toolbarReady' ).add( function ( $textarea ) {
// Configure a new toolbar entry on the given $textarea jQuery object.
/* Remove button for <big> */
$textarea.wikiEditor( 'removeFromToolbar', {
section: 'advanced',
group: 'size',
tool: 'big'
});
/* Remove button for signature */
$textarea.wikiEditor( 'removeFromToolbar', {
section: 'main',
group: 'insert',
tool: 'signature'
});
/* button for signature everywhere */
$textarea.wikiEditor( 'addToToolbar', {
section: 'main',
group: 'format',
tools: {
'signaturen': {
label: mw.msg( "wikieditor-toolbar-tool-signature" ),
type: 'button',
icon: 'https://de.wiki-aventurica.de/de/images/7/79/Insert-signature.png',
action: {
type: 'encapsulate',
options: {
pre: mw.msg( 'wikieditor-toolbar-help-content-signaturetimestamp-syntax' )
}
}
}
}
} );
/* add button for strikethrough */
$textarea.wikiEditor( 'addToToolbar', {
section: 'advanced',
group: 'format',
tools: {
'strikethrough': {
label: 'Text als durchgestrichen darstellen',
type: 'button',
icon: 'https://de.wiki-aventurica.de/de/images/6/6d/Vector_strikeout.png',
action: {
type: 'encapsulate',
options: {
pre: "<s>",
post: "</s>"
}
}
}
}
});
/* Remove button for redirect */
$textarea.wikiEditor( 'removeFromToolbar', {
section: 'advanced',
group: 'insert',
tool: 'redirect'
});
/* add dropdown for redirects <nowiki> */
$textarea.wikiEditor( 'addToToolbar', {
section: 'advanced',
group: 'insert',
tools: {
templates: {
label: 'Weiterleitungen',
type: 'select',
list: {
'Abk-button': {
label: 'Abkürzung',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: ']]\n[[Kategorie:Abkürzung]]'
}
}
},
'Auflage-button': {
label: 'Auflage',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: ']]\n[[Kategorie:Auflagenweiterleitung]]'
}
}
},
'Numm-button': {
label: 'Nummerierung',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: ']]\n[[Kategorie:Nummerierung]]'
}
}
},
'Sonder-button': {
label: 'Sonderzeichen',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: ']]\n[[Kategorie:Sonderzeichen-Weiterleitung]]'
}
}
},
'Synonym-button': {
label: 'Synonym',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: ']]\n[[Kategorie:Synonym]]'
}
}
},
'Regeltechnik-button': {
label: 'Regeltechnik',
action: {
type: 'encapsulate',
options: {
pre: '#redirect [[',
post: '#Regeltechnisches]]\n[[Kategorie:Regeltechnik-Weiterleitung]]'
}
}
}
}
}
}
} );
/* </nowiki> add dropdown for templates */
$textarea.wikiEditor( 'addToToolbar', {
section: 'advanced',
group: 'insert',
tools: {
templates: {
label: 'Vorlagen',
type: 'select',
list: {
'Done-button': {
label: 'Done',
action: {
type: 'encapsulate',
options: {
pre: '{{done}}'
}
}
},
'Todo-button': {
label: 'Todo',
action: {
type: 'encapsulate',
options: {
pre: '{{todo}}'
}
}
}
}
}
}
} );
} );
}
/*
* END Edit-Toolbar Customization
* ============================================================
*/
