去除csdn代码行号,复制代码时,会粘贴到行号,此脚本可以去除行号.
当前为
// ==UserScript==
// @name CSDN代码去行号
// @namespace https://github.com/adlered
// @version 0.1.0
// @description 去除csdn代码行号,复制代码时,会粘贴到行号,此脚本可以去除行号.
// @author xiejl
// @connect www.csdn.net
// @include *://*.csdn.net/*
// @require https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery-cookie/1.4.1/jquery.cookie.min.js
// @require https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/nprogress/0.2.0/nprogress.min.js
// @require https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/clipboard.js/2.0.10/clipboard.min.js
// @grant GM_addStyle
// @grant GM_setValue
// @grant GM_getValue
// @license LGPLv3
// @note 22-06-17 0.1.0 修改单独页面不同的动态语言
// @note 22-06-17 0.0.9 修改为动态语言
// @note 22-06-17 0.0.8 调整加载时间
// @note 22-06-17 0.0.7 支持csdn两种代码格式
// @note 22-06-17 0.0.6 去除csdn行号,调整缩进
// ==/UserScript==
(function() {
'use strict';
var ref = "";
var changeCount = 0;
$(".pre-numbering").remove();
$(".prettyprint").css({"padding":" 8px 16px 6px 10px"})
$(".hljs-ln-numbers").remove()
function getText(totalLi) {
var text = "";
for(var i=0; i<totalLi.length; i++){
text +=$(totalLi[i]).text()+"\n"
}
return text;
}
function changeCode() {
var data = $("[class~='hljs']");
var len = data.length;
if(len<=0) {
return;
}
for(var i=0; i<len; i++){
var languageArr = $($("[class~='hljs']")[i]).attr("class").split(" ")
var language="";
for (var j in languageArr ) {
console.log(languageArr[j]);
if(languageArr[j].startsWith("language-")){
language = languageArr[j];
break;
}
}
var _par = $(data[i]).parent();
var totalLi = $(data[i]).find("li");
if(totalLi.length<=0) {
continue;
}
var current = '<pre class="prettyprint" style="padding: 8px 16px 6px 10px; user-select: auto;"><code class="prism '+language+' has-numbering" onclick="mdcp.copyCode(event)" style="position: unset; user-select: auto;">'
+
getText(totalLi)
+
'</code></pre>';
_par.replaceWith(current)
}
console.log("x")
clearInterval(ref);
}
function startChange() {
if($('pre').attr('class') == undefined ){
ref = setInterval(function () {
changeCount++;
console.log(changeCount)
if(changeCount>200){
clearInterval(ref);
}
changeCode()
}, 0);
}
}
startChange();
// Your code here...
})();