Widen Code Container and Hide Whitespace (GitHub)

Adds buttons to allow you to widen the container when viewing files and hide whitespace when viewing pull request diffs

À partir de 2016-01-15. Voir la dernière version.

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==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.7
// @grant       none
// @locale      en
// ==/UserScript==

this.$ = this.jQuery = jQuery.noConflict(true);

$(function() {
    
  if ($('#user-links').length) {
    $('#user-links').prepend('<li class="header-nav-item"><a href="javascript:void(0)" id="hide-whitespace-button" class="header-nav-link notification-indicator tooltipped tooltipped-s" aria-label="Widen code container" onclick="return false;"><span class="octicon octicon-circle-slash"></span></a></li>');
    $('#user-links').prepend('<li class="header-nav-item"><a href="javascript:void(0)" id="code-widen-button" class="header-nav-link notification-indicator tooltipped tooltipped-s" aria-label="Hide whitespace" onclick="return false;"><span class="octicon octicon-mirror "></span></a></li>');
    
    $('#code-widen-button').click(function(e) {
      e.preventDefault();
      if ($('.repository-content > .file').length || $('.repository-content').find('#files').length) {
        if ($('#diff > #toc > .btn-group > a:nth-child(2)').hasClass('selected')) {
          return;
        }
        var container = $('.container.new-discussion-timeline.experiment-repo-nav');
        var expanded = $(window).width() * 0.75;
        if (container.width() < expanded) {
          container.css('width', expanded + 'px');
        } else {
          container.css('width', '980px');
        }
      }
      $(this).blur();
    });
    
    $('#hide-whitespace-button').click(function(e) {
      e.preventDefault();
      var url = window.location.href;
      if ($('#diff > #files').length && !url.endsWith('?w=1')) {
        window.location.href = url + '?w=1';
      }
      $(this).blur();
    });
    
  }
  
});