User:Mike Peel/common.js

From Wikisource
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.

/**
 * 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() {
	pathoschild.TemplateScript.add([
		// clumps paragraphs by removing line ends, and hyphenate line ends
		// note that fixing paragraphs to have a clear empty line b/w each paragraph
		{
			name: 'fix lines',
			script: function(editor) {
				editor
					.replace(/ \n/g, '\n')
					.replace(/\n\n/g, '<p>')
					.replace(/-\n/g, '')
					.replace(/\n/g, ' ')
					.replace(/<p>/g, '\n\n')
					.replace(/(\w+)\s([\:\;])/,'$1$2');
			}
		},
		
		// puts running header template into header in page namespace
		{
			name: '{{rh}}',
			script: function(editor) {
				editor.forField('#wpHeaderTextbox')
					.append('{{RunningHeader|||}}');
			},
			forNamespaces: 'page'
		},
		
		// converts -- to —
		{
			name: 'fix dashes',
			script: function(editor) {
				editor
					.replace(/--/g, '—');
			}
		}
	]);
});