<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.geministation.com/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-readableRC-core.js</id>
	<title>MediaWiki:Gadget-readableRC-core.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.geministation.com/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-readableRC-core.js"/>
	<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;action=history"/>
	<updated>2026-06-04T12:11:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=9206&amp;oldid=prev</id>
		<title>Banri at 18:46, 9 August 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=9206&amp;oldid=prev"/>
		<updated>2021-08-09T18:46:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;amp;diff=9206&amp;amp;oldid=7863&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Banri</name></author>
	</entry>
	<entry>
		<id>https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=7863&amp;oldid=prev</id>
		<title>Banri at 22:01, 28 January 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=7863&amp;oldid=prev"/>
		<updated>2021-01-28T22:01:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:01, 28 January 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;// @author Iiii_I_I_I&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;//&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;// @todo make it run automatically instead of on button click?&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;(function($, mw) {&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;(function($, mw) {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Banri</name></author>
	</entry>
	<entry>
		<id>https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=5164&amp;oldid=prev</id>
		<title>Banri at 16:13, 9 June 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=5164&amp;oldid=prev"/>
		<updated>2020-06-09T16:13:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:13, 9 June 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;// &amp;lt;nowiki&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// Formats the rows on Special:RecentChanges where all the information runs together&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// Formats the rows on Special:RecentChanges where all the information runs together&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Banri</name></author>
	</entry>
	<entry>
		<id>https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=5163&amp;oldid=prev</id>
		<title>Banri at 16:12, 9 June 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=5163&amp;oldid=prev"/>
		<updated>2020-06-09T16:12:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:12, 9 June 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;// &amp;lt;nowiki&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// Formats the rows on Special:RecentChanges where all the information runs together&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// Formats the rows on Special:RecentChanges where all the information runs together&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// into three columns (page, diff/byte change, and user links) to make it more readable&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Banri</name></author>
	</entry>
	<entry>
		<id>https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=4257&amp;oldid=prev</id>
		<title>Banri: Created page with &quot;// &lt;nowiki&gt; // Formats the rows on Special:RecentChanges where all the information runs together // into three columns (page, diff/byte change, and user links) to make it more...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.geministation.com/index.php?title=MediaWiki:Gadget-readableRC-core.js&amp;diff=4257&amp;oldid=prev"/>
		<updated>2020-06-02T18:54:09Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;// &amp;lt;nowiki&amp;gt; // Formats the rows on Special:RecentChanges where all the information runs together // into three columns (page, diff/byte change, and user links) to make it more...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;// &amp;lt;nowiki&amp;gt;&lt;br /&gt;
// Formats the rows on Special:RecentChanges where all the information runs together&lt;br /&gt;
// into three columns (page, diff/byte change, and user links) to make it more readable&lt;br /&gt;
//&lt;br /&gt;
// @author Iiii_I_I_I&lt;br /&gt;
//&lt;br /&gt;
// @todo make it run automatically instead of on button click?&lt;br /&gt;
&lt;br /&gt;
(function($, mw) {&lt;br /&gt;
    function readableRC($content) {&lt;br /&gt;
        if ($content.hasClass(&amp;#039;mw-changeslist&amp;#039;)) {&lt;br /&gt;
            var rows = document.getElementsByClassName(&amp;#039;mw-changeslist-line&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
            function select(className) {&lt;br /&gt;
                return row.getElementsByClassName(className)[0];&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            function insert(newNode, referenceNode) {&lt;br /&gt;
                return select(referenceNode).parentNode.insertBefore(select(newNode), select(referenceNode));&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            function wrap(referenceNode, wrapperEl, wrapperClass) {&lt;br /&gt;
                var wrapper = document.createElement(wrapperEl);&lt;br /&gt;
&lt;br /&gt;
                referenceNode.parentNode.insertBefore(wrapper, referenceNode);&lt;br /&gt;
                wrapper.appendChild(referenceNode);&lt;br /&gt;
                wrapper.classList.add(wrapperClass);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            function cleanUserLinks() {&lt;br /&gt;
                // (talk | contribs | block) -&amp;gt; (t | c | b)&lt;br /&gt;
                // possible variations: (talk), (talk | contribs), (talk | block), (talk | contribs | block)&lt;br /&gt;
                select(&amp;#039;mw-usertoollinks-talk&amp;#039;).childNodes[0].nodeValue = &amp;#039;t&amp;#039;;&lt;br /&gt;
                if (select(&amp;#039;mw-usertoollinks-contribs&amp;#039;)) select(&amp;#039;mw-usertoollinks-contribs&amp;#039;).childNodes[0].nodeValue = &amp;#039;c&amp;#039;;&lt;br /&gt;
                if (select(&amp;#039;mw-usertoollinks-block&amp;#039;)) select(&amp;#039;mw-usertoollinks-block&amp;#039;).childNodes[0].nodeValue = &amp;#039;b&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                // remove spaces around pipes&lt;br /&gt;
                var toolLinks = select(&amp;#039;mw-usertoollinks&amp;#039;).childNodes;&lt;br /&gt;
&lt;br /&gt;
                if (toolLinks.length &amp;gt; 3) {&lt;br /&gt;
                    toolLinks[2].nodeValue = &amp;#039;|&amp;#039;;&lt;br /&gt;
                    if (toolLinks[4].nodeValue === &amp;#039; | &amp;#039;) toolLinks[4].nodeValue = &amp;#039;|&amp;#039;;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            for (var i = 0, rowTotal = rows.length; i &amp;lt; rowTotal; ++i) {&lt;br /&gt;
                var row = rows[i];&lt;br /&gt;
&lt;br /&gt;
                // top-level rows&lt;br /&gt;
                if (row.classList.contains(&amp;#039;mw-rcfilters-ui-changesListWrapperWidget-enhanced-nested&amp;#039;) === false) {&lt;br /&gt;
                    // multiple logs&lt;br /&gt;
                    if (row.classList.contains(&amp;#039;mw-changeslist-log&amp;#039;) &amp;amp;&amp;amp; row.classList.contains(&amp;#039;mw-collapsible&amp;#039;)) {&lt;br /&gt;
                        // log name&lt;br /&gt;
                        wrap(select(&amp;#039;mw-rc-unwatched&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-logname&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // remove parentheses (added back with css)&lt;br /&gt;
                        var parentheses = select(&amp;#039;mw-rc-unwatched&amp;#039;).childNodes;&lt;br /&gt;
&lt;br /&gt;
                        select(&amp;#039;mw-rc-unwatched&amp;#039;).removeChild(parentheses[0]); // (&lt;br /&gt;
                        select(&amp;#039;mw-rc-unwatched&amp;#039;).removeChild(parentheses[1]); // )&lt;br /&gt;
&lt;br /&gt;
                        // remove square brackets from grouped usernames&lt;br /&gt;
                        var brackets = select(&amp;#039;changedby&amp;#039;).childNodes;&lt;br /&gt;
                        var lastBracket = brackets[brackets.length - 1];&lt;br /&gt;
&lt;br /&gt;
                        select(&amp;#039;changedby&amp;#039;).removeChild(brackets[0]); // [&lt;br /&gt;
                        lastBracket.nodeValue = lastBracket.nodeValue.slice(0, -1); // ]&lt;br /&gt;
&lt;br /&gt;
                        // placeholder column with separator dots&lt;br /&gt;
                        wrap(select(&amp;#039;mw-changeslist-separator&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-logdots&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // rename &amp;lt;td&amp;gt;&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).className = &amp;#039;gadget-rc-logentry&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                        // rearrange newly created &amp;lt;td&amp;gt;s&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-logname&amp;#039;, &amp;#039;gadget-rc-logentry&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-logdots&amp;#039;, &amp;#039;gadget-rc-logentry&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // stupid empty node&lt;br /&gt;
                        select(&amp;#039;gadget-rc-logentry&amp;#039;).removeChild(select(&amp;#039;gadget-rc-logentry&amp;#039;).childNodes[1]);&lt;br /&gt;
                    }&lt;br /&gt;
                    // single log&lt;br /&gt;
                    else if (row.className.includes(&amp;#039;mw-changeslist-log&amp;#039;)) {&lt;br /&gt;
                        // log name&lt;br /&gt;
                        wrap(select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes[1], &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-logname&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // remove leftover parentheses&lt;br /&gt;
                        var parentheses = select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes;&lt;br /&gt;
&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).removeChild(parentheses[0]); // (&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).removeChild(parentheses[1]); // )&lt;br /&gt;
&lt;br /&gt;
                        // placeholder column with separator dots&lt;br /&gt;
                        wrap(select(&amp;#039;mw-changeslist-separator&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-logdots&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        cleanUserLinks();&lt;br /&gt;
&lt;br /&gt;
                        // rename &amp;lt;td&amp;gt;&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).className = &amp;#039;gadget-rc-logentry&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                        // rearrange newly created &amp;lt;td&amp;gt;s&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-logname&amp;#039;, &amp;#039;gadget-rc-logentry&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-logdots&amp;#039;, &amp;#039;gadget-rc-logentry&amp;#039;);&lt;br /&gt;
                    }&lt;br /&gt;
                    // multiple edits&lt;br /&gt;
                    else if (row.classList.contains(&amp;#039;mw-collapsible&amp;#039;)) {&lt;br /&gt;
                        // page name&lt;br /&gt;
                        wrap(select(&amp;#039;mw-title&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-pagename&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // &amp;quot;x changes&amp;quot; -&amp;gt; &amp;quot;x diffs&amp;quot;&lt;br /&gt;
                        if (select(&amp;#039;mw-changeslist-groupdiff&amp;#039;)) {&lt;br /&gt;
                            var newDiff = select(&amp;#039;mw-changeslist-groupdiff&amp;#039;).childNodes[0].nodeValue.replace(&amp;#039;changes&amp;#039;, &amp;#039;diffs&amp;#039;);&lt;br /&gt;
                            select(&amp;#039;mw-changeslist-groupdiff&amp;#039;).childNodes[0].nodeValue = newDiff;&lt;br /&gt;
                        }&lt;br /&gt;
                        // new pages have a text node instead of a link&lt;br /&gt;
                        else {&lt;br /&gt;
                            var newDiff = select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes[2].nodeValue.replace(&amp;#039;changes&amp;#039;, &amp;#039;diffs&amp;#039;);&lt;br /&gt;
                            select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes[2].nodeValue = newDiff;&lt;br /&gt;
                        }&lt;br /&gt;
&lt;br /&gt;
                        // &amp;quot;history&amp;quot; -&amp;gt; &amp;quot;hist&amp;quot;&lt;br /&gt;
                        if (select(&amp;#039;mw-changeslist-history&amp;#039;)) {&lt;br /&gt;
                            select(&amp;#039;mw-changeslist-history&amp;#039;).childNodes[0].nodeValue = &amp;#039;hist&amp;#039;;&lt;br /&gt;
                        }&lt;br /&gt;
                        // nonexistent pages (redirect-suppressed move or deleted) have a text node instead of a link&lt;br /&gt;
                        else {&lt;br /&gt;
                            var newHist = select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes[4].nodeValue.replace(&amp;#039;history&amp;#039;, &amp;#039;hist&amp;#039;);&lt;br /&gt;
                            select(&amp;#039;mw-changeslist-line-inner&amp;#039;).childNodes[4].nodeValue = newHist;&lt;br /&gt;
                        }&lt;br /&gt;
&lt;br /&gt;
                        // list of user(s)&lt;br /&gt;
                        wrap(select(&amp;#039;changedby&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-userlinks&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // remove square brackets from grouped usernames&lt;br /&gt;
                        var brackets = select(&amp;#039;changedby&amp;#039;).childNodes;&lt;br /&gt;
                        var lastBracket = brackets[brackets.length - 1];&lt;br /&gt;
&lt;br /&gt;
                        select(&amp;#039;changedby&amp;#039;).removeChild(brackets[0]); // [&lt;br /&gt;
                        lastBracket.nodeValue = lastBracket.nodeValue.slice(0, -1); // ]&lt;br /&gt;
&lt;br /&gt;
                        // rename &amp;lt;td&amp;gt;&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).className = &amp;#039;gadget-rc-diff&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                        // rearrange newly created &amp;lt;td&amp;gt;s&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-userlinks&amp;#039;, &amp;#039;gadget-rc-diff&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-pagename&amp;#039;, &amp;#039;gadget-rc-userlinks&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-diff&amp;#039;, &amp;#039;gadget-rc-userlinks&amp;#039;);&lt;br /&gt;
                    }&lt;br /&gt;
                    // single edit&lt;br /&gt;
                    else {&lt;br /&gt;
                        // page name&lt;br /&gt;
                        wrap(select(&amp;#039;mw-title&amp;#039;), &amp;#039;td&amp;#039;, &amp;#039;gadget-rc-pagename&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        // &amp;quot;rollback x edits&amp;quot; -&amp;gt; &amp;quot;rollback&amp;quot;&lt;br /&gt;
                        // link does not exist if it is a page creation or user does not have the right&lt;br /&gt;
                        if (select(&amp;#039;mw-rollback-link&amp;#039;)) row.querySelector(&amp;#039;.mw-rollback-link a&amp;#039;).childNodes[0].nodeValue = &amp;#039;rollback&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                        // user info&lt;br /&gt;
                        $(&amp;#039;.mw-userlink, .mw-usertoollinks, .comment, .mw-rollback-link, .mw-tag-markers&amp;#039;, row).wrapAll(&amp;#039;&amp;lt;td class=&amp;quot;gadget-rc-userlinks&amp;quot; /&amp;gt;&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                        cleanUserLinks();&lt;br /&gt;
&lt;br /&gt;
                        // rename &amp;lt;td&amp;gt;&lt;br /&gt;
                        select(&amp;#039;mw-changeslist-line-inner&amp;#039;).className = &amp;#039;gadget-rc-diff&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
                        // rearrange newly created &amp;lt;td&amp;gt;s&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-userlinks&amp;#039;, &amp;#039;gadget-rc-diff&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-pagename&amp;#039;, &amp;#039;gadget-rc-userlinks&amp;#039;);&lt;br /&gt;
                        insert(&amp;#039;gadget-rc-diff&amp;#039;, &amp;#039;gadget-rc-userlinks&amp;#039;);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
                // nested rows&lt;br /&gt;
                else {&lt;br /&gt;
                    var nested = row.getElementsByClassName(&amp;#039;mw-enhanced-rc-nested&amp;#039;)[1];&lt;br /&gt;
                    nested.setAttribute(&amp;#039;colspan&amp;#039;, &amp;#039;3&amp;#039;);&lt;br /&gt;
                    nested.classList.add(&amp;#039;gadget-rc-nested&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
                    cleanUserLinks();&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            $content.addClass(&amp;#039;gadget-rc-enabled&amp;#039;);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
	function init() {&lt;br /&gt;
        var button = new OO.ui.ButtonWidget({&lt;br /&gt;
            icon: &amp;#039;viewCompact&amp;#039;,&lt;br /&gt;
            label: &amp;#039;ReadableRC&amp;#039;,&lt;br /&gt;
            title: &amp;#039;Format RecentChanges into columns for readability&amp;#039;,&lt;br /&gt;
            classes: [&amp;#039;gadget-rc-button&amp;#039;]&lt;br /&gt;
        });&lt;br /&gt;
&lt;br /&gt;
        button.on(&amp;#039;click&amp;#039;, function() {&lt;br /&gt;
            readableRC($(&amp;#039;.mw-changeslist&amp;#039;));&lt;br /&gt;
            mw.hook(&amp;#039;wikipage.content&amp;#039;).add(readableRC);&lt;br /&gt;
            button.setDisabled(true);&lt;br /&gt;
        });&lt;br /&gt;
        mw.hook(&amp;#039;structuredChangeFilters.ui.initialized&amp;#039;).add(function() {&lt;br /&gt;
            $(&amp;#039;.mw-rcfilters-ui-liveUpdateButtonWidget&amp;#039;).append(button.$element);&lt;br /&gt;
        });&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
	$(init);&lt;br /&gt;
})(jQuery, mediaWiki);&lt;br /&gt;
&lt;br /&gt;
// &amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Banri</name></author>
	</entry>
</feed>