Gitlab submodule compare

Clicking on submodule link opens comparison in new tab

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Gitlab submodule compare
// @namespace    http://tampermonkey.net/
// @version      0.2.0
// @description  Clicking on submodule link opens comparison in new tab
// @author       Cáno
// @match        https://git.getprintbox.com/*
// @grant        none
// @require      https://code.jquery.com/jquery-3.2.1.min.js
// ==/UserScript==

(function() {
    'use strict';
    //return;
    setInterval(function() {
        $('.file-title-name > .commit-sha').each(function() {
            var parent = $(this);
            var n = parent.closest('.diff-file').find('.line_content.parallel:not(.old) > span').html();
            var o = parent.closest('.diff-file').find('.line_content.parallel.old > span').html();
            var a = parent.prev().find('a');
            if (a.attr('done') !== 'true') {
                a.attr('href', a.attr('href') + '/compare/' + o + '...' + n);
            }
            a.attr('done', true);
        });
    }, 1600);
})();