User:Jpez/common.js
Jump to navigation
Jump to search
Note: After saving, changes may not occur immediately. Click here to learn how to bypass your browser's cache.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (Cmd-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (Cmd-Shift-R on a Mac)
- Internet Explorer: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Clear the cache in Tools → Preferences
For details and instructions about other browsers, see Wikipedia:Bypass your cache.
Code that you insert on this page could contain malicious content capable of compromising your account. If you are unsure whether code you are adding to this page is safe, you can ask at the central discussion page, Scriptorium. The code will be executed when previewing this page under some skins, including Monobook. You can in the interim if you wish to refresh the content sooner under another skin. |
The accompanying .css page for this skin can be added at User:Jpez/common.css. |
//activate typoscan script of User:username/common.js/typoscan.js
mw.loader.load('//en.wikisource.org/w/index.php?title=User:username/common.js/typoscan.js&action=raw&ctype=text/javascript');
mw.loader.load('//en.wikisource.org/w/index.php?title=User:Samwilson/PageCleanUp.js&action=raw&ctype=text/javascript');
mw.loader.load('//en.wikisource.org/w/index.php?title=User:Samwilson/FullScreenEditing.js&action=raw&ctype=text/javascript');
/* ProofreadPage extension specific */
self.layout_overrides_have_precedence = true;
// self.proofreadpage_disable_ocr = true; Now handled by User pref gadget
/* CharInsert specific */
// window.charinsertDontMove = true;
// window.charinsertMoveTop = true;
window.editToolsRecall = true;
window.charinsertCustom = { User: '[[Bible.(King.James)/#:|+]] {{lh2/s|125%}} {{lh2/e}} {{nop}}' };
// if(window.updateEditTools) window.updateEditTools();
/* special formats for proofreading tools */
// <nowiki>
var pageNumber = parseInt((mw.config.get('wgTitle').match(/\.djvu\/(\d+)$/) || {})[1], 10);
var specialFormats = [
// add as many as you like...
{
title: /History of England /,
evenHeader: "{{rh|" + (pageNumber - 20) + "|''REIGN OF QUEEN MARY.''|[{{sc|ch. 33.}}}}",
oddHeader: "{{rh|1556.]|''THE MARTYRS.''|" + (pageNumber - 20) + "}}",
footer: "",
footerWithReferences: "{{smallrefs}}"
},
{
title: /Ante-Nicene Christian /, evenHeader: "{{rh|" + (pageNumber - 4) + "|''THE MISCELLANIES.''|{{sc|[Book i.}}}}",
oddHeader: "{{rh|{{sc|Book i.}}]|''THE MISCELLANIES.''|" + (pageNumber - 4) + "}}",
footer: "{{smallrefs}}",
footerWithReferences: "{{smallrefs}}"
},
{
title: /Boys of /,
evenHeader: "{{rh|" + (pageNumber - 18) + "|''COLUMBIA HIGH ON THE GRIDIRON''}}",
oddHeader: "{{rh||''xx''|" + (pageNumber - 18) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Secret History /,
evenHeader: "{{rh|" + (pageNumber - 14) + "|SECRET HISTORY OF THE FRENCH COURT}}",
oddHeader: "{{rh||UNDER RICHELIEU AND MAZARIN.|" + (pageNumber - 14) + "}}",
footer: "{{smallrefs}}",
footerWithReferences: "{{smallrefs}}"
},
{
title: /A Voyage of Discovery /,
evenHeader: "{{rh|" + (pageNumber - 28) + "|XX|[{{sc|Chap. VII.}}}}{{sidenotes begin}}{{left sidenote|1842}}",
oddHeader: "{{rh|{{sc|Chap. VII.}}]|XX|" + (pageNumber - 28) + "}}{{sidenotes begin}}{{RL sidenote|1842}}",
footer: "{{sidenotes end}}",
footerWithReferences: "{{sidenotes end}}"
},
{
title: /Tracts for /,
evenHeader: "{{rh|" + pageNumber + "|TRACTS FOR THE TIMES.}}",
oddHeader: "{{rh||TRACTS FOR THE TIMES.|" + pageNumber + "}}",
footer: "",
footerWithReferences: "{{smallrefs}}"
},
{
title: /Maori /,
evenHeader: "{{rh|" + (pageNumber - 14) + "|MAORI COSMOGONY|{{smaller|CH. ii.}}}}",
oddHeader: "{{rh|{{smaller|CH. ii.}}|AND MYTHOLOGY.|" + (pageNumber - 14) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Tom Swift and /,
evenHeader: "{{rh|" + (pageNumber - 10) + "|''TOM SWIFT AND HIS SUBMARINE BOAT''}}",
oddHeader: "{{rh||''A''|" + (pageNumber - 10) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Ruth Fielding /,
evenHeader: "{{rh|" + (pageNumber - 8) + "|RUTH FIELDING AT BRIARWOOD HALL}}",
oddHeader: "{{rh||A|" + (pageNumber - 8) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Rover Boys /,
evenHeader: "{{rh|" + (pageNumber - 18) + "|''THE ROVER BOYS AT COLLEGE''}}",
oddHeader: "{{rh||''A''|" + (pageNumber - 18) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Romeo and /,
evenHeader: "{{rh|" + (pageNumber - 44) + "|ROMEO AND JULIET|{{smaller|[ACT I}}}}",
oddHeader: "{{rh|{{smaller|SC I}}|ROMEO AND JULIET|" + (pageNumber - 44) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Dave Porter /,
evenHeader: "{{rh|" + (pageNumber - 26) + "|DAVE PORTER AND HIS CLASSMATES}}",
oddHeader: "{{rh||XX|" + (pageNumber - 26) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Bunny Brown /,
evenHeader: "{{rh|" + (pageNumber - 12) + "| |{{sc|Bunny Brown and His Sister Sue at Camp Rest-a-While}}}}",
oddHeader: "{{rh|left={{sc|Bunny Brown and His Sister Sue at Camp Rest-a-While}}|right=" + (pageNumber - 12) + "}}",
footer: "",
footerWithReferences: ""
},
{
title: /Framley /,
evenHeader: "{{rh|" + (pageNumber - 6) + "|FRAMLEY PARSONAGE.}}",
oddHeader: "{{rh||FRAMLEY PARSONAGE|" + (pageNumber - 6) + "}}",
footer: "",
footerWithReferences: ""
}
];
// </nowiki>
/**
* TemplateScript adds configurable templates and scripts to the sidebar, and adds an example regex editor.
* @see https://meta.wikimedia.org/wiki/TemplateScript
* @update-token [[File:Pathoschild/templatescript.js]]
*/
$.ajax('//tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js', { dataType:'script', cache:true }).then(function() {
// customise proofreading tools
pathoschild.TemplateScript.library.override('wikisource.proofreading', 'add-header', { accessKey: 'z' });
pathoschild.TemplateScript.library.override('wikisource.proofreading', 'add-footer', { accessKey: 'f' });
pathoschild.TemplateScript.library.override('wikisource.proofreading', 'cleanup-ocr', { accessKey: 'x' });
pathoschild.TemplateScript.library.override('wikisource.proofreading', 'smallcaps', { accessKey: 'c' });
pathoschild.TemplateScript.library.override('wikisource.proofreading', 'uppercase', { accessKey: 'u' });
});
/**
* Add several tools useful when proofreading pages in the Page: namespace.
* @see https://en.wikisource.org/wiki/Wikisource:TemplateScript
*/
mw.loader.load('//en.wikisource.org/w/index.php?title=MediaWiki:TemplateScript/proofreading.js&action=raw&ctype=text/javascript');
// == SIDEBAR TOOLS ==
/**
* WikiEditor specific
*
* Custom buttons ONLY when Prefs set to - Enable enhanced editing toolbar - is selected,
* Enable wizards for... - must not be selected. Show [old]edit toolbar - should be off.
* based upon - https://github.com/he7d3r/mw-gadget-ExtraEditButtons
*/
// <nowiki>
var customizeToolbar = function() {
$( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', { section: 'main', group: 'insert', tool: 'xlink' } )
.wikiEditor( 'removeFromToolbar', { section: 'main', group: 'insert', tool: 'ilink' } )
.wikiEditor( 'removeFromToolbar', { section: 'main', group: 'insert', tool: 'file' } )
.wikiEditor( 'removeFromToolbar', { section: 'main', group: 'insert', tool: 'reference' } )
.wikiEditor( 'removeFromToolbar', { section: 'main', group: 'insert', tool: 'signature' } )
.wikiEditor( 'removeFromToolbar', { section: 'characters' } )
.wikiEditor( 'removeFromToolbar', { section: 'advanced' } )
.wikiEditor( 'removeFromToolbar', { section: 'help' } )
.wikiEditor( 'addToToolbar', {
section: 'main',
group: 'format',
tools: {
underline: {
labelMsg: 'wikieditor-toolbar-tool-underline',
label: 'Underline',
id: 'underline',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/8/8b/Button_underline_he.png',
action: {
type: 'encapsulate',
options: {
pre: "<u>",
periMsg: 'wikieditor-toolbar-tool-underline-example',
post: "</u>"
}
}
},
strikeout: {
labelMsg: 'wikieditor-toolbar-tool-strikeout',
label: 'Strike out',
id: 'strikeout',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/6/6d/Vector_strikeout.png',
action: {
type: 'encapsulate',
options: {
pre: "<s>",
periMsg: 'wikieditor-toolbar-tool-strikeout-example',
post: "</s>"
}
}
},
emdash: {
labelMsg: 'wikieditor-toolbar-tool-emdash',
label: 'em-dash',
id: 'emdash',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/8/8b/Button_m-dash.png',
action: {
type: 'replace',
options: {
'peri': '\u2014',
'selectPeri': false
}
}
},
endash: {
labelMsg: 'wikieditor-toolbar-tool-endash',
label: 'en-dash',
id: 'endash',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/8/8b/Button_n-dash.png',
action: {
type: 'replace',
options: {
'peri': '\u2013',
'selectPeri': false
}
}
},
bar2: {
labelMsg: 'wikieditor-toolbar-tool-bar2',
label: 'bar2',
id: 'bar2',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/b/bd/Button_number_2.png',
action: {
type: 'replace',
options: {
'peri': '{{bar|2}}',
'selectPeri': false
}
}
},
'break': {
labelMsg: 'wikieditor-toolbar-tool-break',
label: 'break',
id: 'break',
filters: [ 'body:not(.ns-2, .ns-8, .ns-828)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/f/f2/Button-br.png',
action: {
type: 'replace',
options: {
'peri': '<br />',
'selectPeri': false
}
}
},
'zoom-in': {
labelMsg: 'proofreadpage-button-zoom-in-label',
label: 'Zoom in',
id: 'zoom-in',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/0/04/Button_zoom_in.png',
action: {
type: 'callback',
execute: function() {
$zoomImage.prpZoom( 'zoomIn' );
}
}
},
'zoom-out': {
labelMsg: 'proofreadpage-button-zoom-out-label',
label: 'Zoom out',
id: 'zoom-out',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/0/03/Button_zoom_out.png',
action: {
type: 'callback',
execute: function() {
$zoomImage.prpZoom( 'zoomOut' );
}
}
},
'reset-zoom': {
labelMsg: 'proofreadpage-button-reset-zoom-label',
label: 'Reset zoom',
id: 'reset-zoom',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/2/2a/Button_examine.png',
action: {
type: 'callback',
'execute': function() {
$zoomImage.prpZoom( 'reset' );
}
}
},
hyphword: {
labelMsg: 'wikieditor-toolbar-tool-hyphword',
label: 'hyphword',
id: 'hyphword',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/5/5a/Button_hyphenated_word.svg',
action: {
type: 'callback',
execute: function(context) {
hyphenated_word();
}
}
},
'toggle-visibility': {
labelMsg: 'proofreadpage-button-toggle-visibility-label',
label: 'Toggle visible headers and footers',
id: 'toggle-visibility',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/2/2a/Button_category_plus.png',
action: {
type: 'callback',
'execute': function() {
toggleHeaders( 'fast' );
}
}
},
'toggle-layout': {
labelMsg: 'proofreadpage-button-toggle-layout-label',
label: 'Toggle layout',
id: 'toggle-layout',
filters: [ 'body.ns-104' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/0/04/Button_multicol.png',
action: {
type: 'callback',
execute: function() {
toogleLayout();
}
}
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
section: 'main',
group: 'insert',
tools: {
'ilink': {
labelMsg: 'wikieditor-toolbar-tool-ilink',
label: 'Wiki link',
id: 'ilink',
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/4/48/Toolbar_Insert_link.png',
offset: [2, -1582],
action: {
type: 'encapsulate',
options: {
pre: "[[",
periMsg: 'wikieditor-toolbar-tool-ilink-example',
post: "]]"
}
}
},
'xlink': {
labelMsg: 'wikieditor-toolbar-tool-xlink',
label: 'URL link',
id: 'xlink',
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/5/55/Toolbar_insert_xlink.png',
offset: [-70, 2],
action: {
type: 'encapsulate',
options: {
pre: "[",
periMsg: 'wikieditor-toolbar-tool-xlink-example',
post: "]"
}
}
},
'nowiki': {
labelMsg: 'wikieditor-toolbar-tool-nowiki',
label: 'NoWiki',
id: 'nowiki',
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/8/80/Toolbar_insert_nowiki.png',
offset: [-70, -70],
action: {
type: 'encapsulate',
options: {
pre: '<' + 'nowiki>',
periMsg: 'wikieditor-toolbar-tool-nowiki-example',
post: '<' + '/nowiki>'
}
}
},
redirect: {
labelMsg: 'wikieditor-toolbar-tool-redirect',
label: 'ReDirect',
id: 'redirect',
filters: [ 'body:not(.ns-828, .ns-829)' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/7/76/Insert_redirect.png',
offset: [-70, -142],
action: {
type: 'encapsulate',
options: {
pre: mw.config.get( 'wgWikiEditorMagicWords' ).redirect + ' [[',
periMsg: 'wikieditor-toolbar-tool-redirect-example',
post: "]]",
ownline: true
}
}
},
signature: {
labelMsg: 'wikieditor-toolbar-tool-signature',
label: 'Your Signature',
id: 'signature',
filters: [ 'body.ns-talk, body.ns-4' ],
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/7/79/Insert-signature.png',
offset: [2, -1872],
action: {
type: 'encapsulate',
options: {
pre: '— ~~~~'
}
}
}
}
} );
};
/* Check for edit mode and required modules are available. Then, customize */
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
mw.loader.using( 'user.options', function () {
if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
$.when(
mw.loader.using( ['ext.wikiEditor'] ),
$.ready
).then( customizeToolbar );
}
} );
}
var addExtraButtons = function(){
mw.toolbar.addButtons(
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/8/8b/Button_m-dash.png",
"speedTip": "M-dash",
"tagOpen": '—',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/8/8b/Button_n-dash.png",
"speedTip": "N-dash",
"tagOpen": '–',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/b/bd/Button_number_2.png",
"speedTip": "2em",
"tagOpen": '{{bar|2}}',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/2/22/Button_ellipsis.png",
"speedTip": "Ellipsis",
"tagOpen": '…',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/b/b1/Button_dagger.png",
"speedTip": "dagger",
"tagOpen": '†',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/f/f2/Button-br.png",
"speedTip": "Break",
"tagOpen": '<br />',
"tagClose": '',
"sampleText": ""
},
{
"imageFile": "//upload.wikimedia.org/wikipedia/commons/c/cd/Button_poem.png",
"speedTip": "Break & gap",
"tagOpen": '<br />\n{{gap}}',
"tagClose": '',
"sampleText": ""
}
);
}; //end of var addExtraButtons
// </nowiki>
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
mw.loader.using( 'user.options', function () {
if ( mw.user.options.get( 'showtoolbar' ) == 1 ) {
$.when(
mw.loader.using( 'mediawiki.toolbar' ),
$.ready
).then( addExtraButtons );
}
} );
}
// From Inductiveload page
/*
* Does a lookup on the previous page to see if there is a hyphenated
* word and tries to complete it
*
* To use this script, add the following to your .js:
* importScript('User:Inductiveload/Hyphenated word.js');
*
*/
function check_hws(data) {
try {
var editbox = document.getElementsByName('wpTextbox1')[0];
if (editbox && !data.query.pages["-1"]) {
for (var ids in data.query.pages) {
var content = data.query.pages[ids].revisions[0]['*'];
var match = content.match( /{{ *([Hh]ws|[Hh]yphenated word start)\|([^\|}]*)\|?([^\|}]*)?}}/ );
if (match !== undefined && match.length > 3) {
var hws = match[2];
var word = match[3];
var hwe = word.slice(hws.length);
var hwestring = '{{hwe|'+hwe+'|'+word+'}} ';
editbox.value = hwestring + editbox.value;
}
break;
}
}
}
catch (err) { }
}
function hyphenated_word() {
var r = new RegExp("(\\d+)$");
var page = Number(r.exec(mw.config.get('wgPageName'))[1]) - 1; //previous page
var pagename = mw.config.get('wgPageName').replace(/\d+$/g, page);
var url = mw.config.get('wgServer') + mw.config.get('wgScriptPath')
+ "/api.php?action=query&prop=revisions&callback=check_hws&rvprop=content"
+ "&format=json&titles=" + encodeURIComponent(pagename);
$('body').append('<script type="text/javascript" src="' + url + '"/>');
}
$(function() {
var tb = document.getElementById("toolbar");
if(tb) {
var image = document.createElement("img");
image.width = 23;
image.height = 23;
image.border = 0;
image.className = "mw-toolbar-editbutton";
image.style.cursor = "pointer";
image.alt = "Hyph. word";
image.title = "Add hyphenated word started on the previous page";
image.src = "//upload.wikimedia.org/wikipedia/commons/thumb/5/5a/Button_hyphenated_word.svg/23px-Button_hyphenated_word.svg.png";
image.onclick = hyphenated_word;
tb.appendChild(image);
}
});