Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page.
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// <syntaxhighlight lang="javascript">/*(Script is operational, but needs testing on many pages)ViewAsOutline-Book.jsWhat it does:This script converts the page onscreen into outline format, including adding headingand list item wikicode (yes, shown on-screen), so that it can be easily copied andpasted into list and outline pages being edited. Brief comments are provided within the source code below. For extensive explanatory notes on what the source code does and how it works, see the Script's workshop on the talk page.*/// ============== Set up ==============// Start off with a bodyguard function to reserve the aliases mw and $(function(mw,$){// we can now rely on mw and $ within the safety of our “bodyguard” function, to mean // "mediawiki" and "jQuery", respectively// ============== ready() event listener/handler ==============// below is jQuery short-hand for $(document).ready(function() { ... });// it makes the rest of the script wait until the page's DOM is loaded and ready$(function(){// ============== activation filters ==============// Only activate on Vector skinif(mw.config.get('skin')==='vector'){// Run this script only if "Book:" is in the page titleif(document.title.indexOf("Book:")!=-1){// End of set up// =================== Prep work =====================// Variable declarations, etc., go here// ================= Core program ================= $(function(){// BODY OF PROGRAM// Make the superfluous headings go bye bye ( ".mw-headline" )$("h2").remove();$("h3").remove();// Remove notice boxes from top of screen (see [[Templage:Saved book]] - outline editors need to get right to the content// Remove warning box:$("td").remove(".mbox-image");$("td").remove(".mbox-text");// Remove "This is a Wikipedia book" banner$("table").remove(".ombox");// Add h2 heading delimiters to all the dt entriesvarmwContentLtrDts=$(".mw-content-ltr").find("dt");vari;for(i=0;i<mwContentLtrDts.length;i++){mwContentLtrDts[i].prepend("== ");mwContentLtrDts[i].append(" ==");}// for all dd entries of class mw-content-ltr, wrap the page names with *[[]] - links go between the double square bracketsvarmwContentLtrDds=$(".mw-content-ltr").find("dd");varj;for(j=0;j<mwContentLtrDds.length;j++){mwContentLtrDds[j].outerHTML=mwContentLtrDds[j].outerHTML.replace(/(<a.*?(<\/a>))/g,'* [[$1]]');}});}}});}(mediaWiki,jQuery));// </syntaxhighlight>