Greasy Fork is available in English.

v2exMarkdown

为v2ex而生的markdown渲染

2018-06-12 या दिनांकाला. सर्वात नवीन आवृत्ती पाहा.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

You will need to install an extension such as Tampermonkey to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name         v2exMarkdown
// @namespace    https://github.com/hundan2020/v2exMarkdown
// @version      0.3
// @description  为v2ex而生的markdown渲染
// @author       hundan,ccsiyu
// @match        https://www.v2ex.com/t/*
// @require      https://cdn.staticfile.org/showdown/1.8.6/showdown.js
// @require      https://cdn.staticfile.org/jquery/3.3.1/jquery.min.js
// @grant        none
// ==/UserScript==

(function () {
	String.prototype.replaceAll = function (search, replacement) {
		var target = this;
		return target.replace(new RegExp(search, 'g'), replacement);
	};

	var markdownSwitch = true;
	$.when(true).then(function () {
		if (markdownSwitch) {
			processMarkdown();
		}
	});

	function processMarkdown() {
		if (window.location.href.indexOf("mwap") > -1) { // for mobile site // dummy here
		} else { // desktop site
			$("div.reply_content").each(function () {
				var postMain = $(this)[0];
				var postText = postMain.innerText || postMain.textContent;
				var postContentLines = postText.split("\n");
				var converter = new showdown.Converter({
						simplifiedAutoLink: true
					});
				var innerHTML = "";
				postContentLines.forEach(function (item, index) {
					if (item.substring(0, 4) === "<br>"){
						innerHTML += converter.makeHtml(item.substring(4));
					}else if (item.charAt(0) == '<'){
						innerHTML += item;
					}else{
						innerHTML += converter.makeHtml(item);
					}
				});
				postMain.innerHTML = innerHTML;
			});
		}
	}
})();