// ==UserScript== // @name Widen Code Container and Hide Whitespace (GitHub) // @namespace chriskim06 // @description Adds buttons to allow you to widen the container when viewing files and hide whitespace when viewing pull request diffs // @include https://github.com/* // @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js // @version 1.2.9 // @grant none // @locale en // @downloadURL none // ==/UserScript== this.$ = this.jQuery = jQuery.noConflict(true); $(function() { if ($('#user-links').length) { // Add buttons in the header navbar $('#user-links').prepend('
  • '); $('#user-links').prepend('
  • '); // Toggle code container width on click $('#code-widen-button').click(function(e) { e.preventDefault(); if ($('#files').length || $('.repository-content').find('.file').length) { if ($('#toc').find('.btn-group > a:nth-child(2)').hasClass('selected')) { return; } var container = $('.container.new-discussion-timeline.experiment-repo-nav'); var expanded = $(window).width() * 0.9; if (container.width() < expanded) { container.css('width', expanded + 'px'); } else { container.css('width', '980px'); } } $(this).blur(); }); // Toggle page with ?w=1 appended to the url to show/hide whitespace $('#hide-whitespace-button').click(function(e) { e.preventDefault(); var url = window.location.href; if ($('#files').length) { if (url.endsWith('?w=1')) { window.location.href = url.slice(0, -4); } else { window.location.href = url + '?w=1'; } } $(this).blur(); }); // Reset container width on pull request pages if you leave the diff tab if ($('.tabnav-tab.js-pull-request-tab:last').hasClass('selected')) { $('.tabnav-tab.js-pull-request-tab:not(:last)').each(function() { $(this).click(function(e) { var container = $('.container.new-discussion-timeline.experiment-repo-nav'); var expanded = $(window).width() * 0.9; if (container.width() >= expanded) { container.css('width', '980px'); } }); }); } } });