GitHub: fix Asciidoc rendering

Fix Asciidoc rendering on GitHub: add standard Asciidoc icons to NOTE/TIP/etc., highlight block titles, fix TOC.

Verzia zo dňa 23.04.2015. Pozri najnovšiu verziu.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, Greasemonkey alebo Violentmonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey alebo Userscripts.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie správcu používateľských skriptov.

(Už mám správcu používateľských skriptov, nechajte ma ho nainštalovať!)

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

(Už mám správcu používateľských štýlov, nechajte ma ho nainštalovať!)

// ==UserScript==
// @name        GitHub: fix Asciidoc rendering
// @namespace   https://github.com/powerman/userjs-github-asciidoc
// @description Fix Asciidoc rendering on GitHub: add standard Asciidoc icons to NOTE/TIP/etc., highlight block titles, fix TOC.
// @include     /^https://github.com/[^/]+/[^/]+$/
// @include     /^https://github.com/[^/]+/[^/]+/blob/.*\.(asciidoc|adoc|asc)$/
// @include     /^https://github.com/[^/]+/[^/]+/wiki.*$/
// @version     1.0
// @grant       none
// ==/UserScript==

window.addEventListener('load', function(){
	'use strict';
	var icons='https://raw.githubusercontent.com/powerman/asciidoc-cheatsheet/master/images/icons/';

	// Replace text with icons for NOTE/TIP/etc.
	$('tbody > tr > td:first-child > div')
		.filter(function(){ return this.innerHTML==='Note'; })
		.html('<img src="'+icons+'note.png">');
	$('tbody > tr > td:first-child > div')
		.filter(function(){ return this.innerHTML==='Tip'; })
		.html('<img src="'+icons+'tip.png">');
	$('tbody > tr > td:first-child > div')
		.filter(function(){ return this.innerHTML==='Important'; })
		.html('<img src="'+icons+'important.png">');
	$('tbody > tr > td:first-child > div')
		.filter(function(){ return this.innerHTML==='Warning'; })
		.html('<img src="'+icons+'warning.png">');
	$('tbody > tr > td:first-child > div')
		.filter(function(){ return this.innerHTML==='Caution'; })
		.html('<img src="'+icons+'caution.png">');
	// Remove border around NOTE/TIP/etc.
	$('tbody:has(> tr > td:first-child > div > img)').find('tr, td').css({'border':'none'});

	// Make block titles bold
	$('.markdown-body div > div:first-child + *').prev().filter(':not(:has(*))').css({'font-weight':'bold'});
	$('.markdown-body td > div:first-child').filter(':not(:has(*))').css({'font-weight':'bold'});

	// Fix TOC
	$('#user-content-toc ul ul li:has(ul)').addClass('toc-node');
	$('head').append('<style>#user-content-toc ul ul li.toc-node:before { content:\'\' }</style>');

}, false);