From ca1a4a31706d0c03673fe4c414c645ed826b21c6 Mon Sep 17 00:00:00 2001 From: shu Date: Wed, 19 Aug 2026 15:56:06 +0800 Subject: 精简 Wiki 构建与运行方式 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将浏览器端工具整理为 utilities 插件,移除 Docker、Org GTD 和 files API,并补充单文件构建及 Node.js 运行入口。 --- tiddlers/plugin-copy-codeblock-widget.tid | 72 ------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 tiddlers/plugin-copy-codeblock-widget.tid (limited to 'tiddlers/plugin-copy-codeblock-widget.tid') diff --git a/tiddlers/plugin-copy-codeblock-widget.tid b/tiddlers/plugin-copy-codeblock-widget.tid deleted file mode 100644 index 2251c62..0000000 --- a/tiddlers/plugin-copy-codeblock-widget.tid +++ /dev/null @@ -1,72 +0,0 @@ -title: $:/plugins/local/copy-codeblock/copy-codeblock.js -type: application/javascript -module-type: widget - -/*\ -title: $:/plugins/local/copy-codeblock/copy-codeblock.js -type: application/javascript -module-type: widget - -Adds a copy button to code blocks. -\*/ -(function() { -"use strict"; - -var CodeBlockWidget = require("$:/core/modules/widgets/codeblock.js").codeblock; - -var CopyCodeBlockWidget = function(parseTreeNode,options) { - this.initialise(parseTreeNode,options); -}; - -CopyCodeBlockWidget.prototype = new CodeBlockWidget(); -CopyCodeBlockWidget.prototype.constructor = CopyCodeBlockWidget; - -CopyCodeBlockWidget.prototype.postRender = function() { - var self = this, - preNode = this.domNodes[0], - previousNode, - button; - - // Preserve syntax highlighting supplied by the highlight plugin. - if(CodeBlockWidget.prototype.postRender) { - CodeBlockWidget.prototype.postRender.call(this); - } - - if(!$tw.browser || !preNode || preNode.isTiddlyWikiFakeDom) { - return; - } - - // The system code view already renders its own copy button. - previousNode = preNode.previousElementSibling; - if(previousNode && previousNode.querySelector && previousNode.querySelector(".tc-image-copy-clipboard")) { - return; - } - - preNode.style.position = "relative"; - preNode.style.paddingRight = "5em"; - - button = this.document.createElement("button"); - button.setAttribute("type","button"); - button.setAttribute("aria-label","Copy code"); - button.setAttribute("title","Copy code"); - button.className = "tc-btn-invisible tc-copy-codeblock-button"; - button.textContent = "Copy"; - button.style.position = "absolute"; - button.style.top = "0.5em"; - button.style.right = "0.5em"; - button.style.zIndex = "1"; - button.style.padding = "0.2em 0.45em"; - button.style.cursor = "pointer"; - - button.addEventListener("click",function(event) { - event.preventDefault(); - event.stopPropagation(); - $tw.utils.copyToClipboard(self.getAttribute("code","")); - }); - - preNode.appendChild(button); -}; - -exports.codeblock = CopyCodeBlockWidget; - -})(); -- cgit v1.2.3