Monaco 编辑器
代码折叠、括号配对、行列状态、主题适配与稳定的手动布局。
[[ EDITOR: BETTER / MV3 ]]
一个使用 Monaco Editor 接管 Wikidot 编辑区的 Chrome 扩展。保留工具栏、保存、预览和草稿流程,同时以 Manifest V3 的受限桥接安全处理跨站 include。
不改变 Wikidot 原有编辑流程,而是在页面主世界中为源码编辑补齐专业工具和扩展级能力。
代码折叠、括号配对、行列状态、主题适配与稳定的手动布局。
识别 [[module]]、标题、表格、引用和链接;CSS、HTML、脚本与样式块支持嵌入高亮。
通过 textarea 属性代理维持保存、预览、草稿、校验和原工具栏按钮可用。
由 Service Worker 处理经过白名单校验的跨站 include 请求和 Cookie 读取。
并行探测多个 CDN;AMD 不可用时自动使用 ESM 路径,并为失败场景保留原生编辑框。
不依赖 Tampermonkey、GM API 或油猴脚本,可单独安装、构建和发布。
首次打开编辑页时会下载 Monaco 编辑器资源。加载失败时原生编辑框仍保持可用。
SETUP
从 Release 下载扩展包,解压并在 Chrome 开发者模式加载即可。不需要用户脚本管理器。
从 GitHub Releases 下载 wikidot-editor-better-chrome.zip,并解压到本地目录。
打开 chrome://extensions,在右上角开启“开发者模式”。
点击“加载已解压的扩展程序”,选择刚才解压后的目录。
进入任意 Wikidot 页面并点击编辑,Monaco 会在编辑区出现时自动接管。
扩展只请求实现功能所需的最小权限,并让跨站请求保持在明确的安全边界内。
只在 Wikidot 域名下运行,跨站请求仅允许 HTTPS 的 Wikidot 子域名和受限页面路径。
仅读取 Wikidot 的 wikidot_token7,以完成经过校验的 ViewSourceModule 请求。
Monaco 无法初始化时,原生 textarea 会继续可用,并提供自动和手动重试。
检测到页面已有 AMD 加载器时不覆盖全局变量,避免影响站点或其他扩展。
欢迎 Bug 报告、功能建议和代码贡献。项目采用 GNU GPL v3.0 开源许可。