FIT2CLOUD
代码折叠增强 的图标

代码折叠增强

1,138
574

自动折叠长代码块和长图片,高度可以自行配置

2.0.3
吴蛋蛋 发布于

2.0.3

最新
>=2.20.0

feat: 重构按钮定位并增强健壮性

  • 重构按钮定位策略,折叠态锚定容器底部,展开态粘视口底部
  • 修复 sticky 阻断问题,支持 overflow:clip 修复及旧浏览器降级
  • 增加后端兜底注入与配置校验,移除模板类型过滤
  • 兼容非 PJAX 动态加载,使用 MutationObserver 兜底重扫
  • 优化图片懒加载检测与折叠逻辑,完善暗色主题适配

资源下载

  • plugin-codeenhance-2.0.3.jar
2.0.2
吴蛋蛋 发布于
>=2.20.0

修复:长图折叠功能多项缺陷

  • 包裹容器居中:长图折叠容器与主题图片保持一致居中,不再错位偏左
  • 折叠态渐变遮罩:折叠时图片底部新增渐变遮罩,提示下方仍有内容
  • sticky 失效降级:若主题导致 sticky 失效,自动降级为 absolute 定位
  • 折叠判断与展开动画优化:折叠判定由图片原始像素高度改为页面实际渲染高度,修复窄列中图片被 CSS 缩放后仍被包裹、折叠态与原图无差异的问题

资源下载

  • plugin-codeenhance-2.0.2.jar
2.0.1
吴蛋蛋 发布于
>=2.20.0

🐛 修复:插件 CSS 不再覆盖主题代码块样式

  • 修复 CSS 冲突:移除了 .ce-pre 中多余的重置样式(background: transparentpadding: 0border: 0 等),主题的代码块背景色、内边距、滚动条等样式完整保留
  • 修复静态资源 404:重新创建被误删的 reverseProxy.yaml,修正资源路径去掉多余 /static/ 层级,CSS/JS 文件恢复正常加载
  • 移除无用数据:前端配置不再注入未使用的 pluginName 字段
  • 内存整洁:pjax 切换时正确释放旧 IntersectionObserver 实例
  • 文档修正:README 后端代码示例对齐实际实现

资源下载

  • plugin-codeenhance-2.0.1.jar
2.0.0
吴蛋蛋 发布于
>=2.20.0

v2.0.0 (2026-06-29)

🎉 重大精简:移除所有非核心功能,专注折叠体验

  • 移除代码高亮:不再依赖 Highlight.js,文件大小减少 97%
  • 移除行号显示:简化代码块结构
  • 移除复制按钮:如需复制功能,可使用浏览器自带复制或主题自带功能
  • 移除语言名称显示:简化界面
  • 移除标题栏:不再显示 macOS 风格红绿灯按钮
  • 新增懒加载图片兼容:支持 data-srcdata-originaldata-lazy 等常见懒加载属性
  • 新增展开态 sticky 按钮:长代码时展开按钮固定在视口底部
  • 新增横向滚动支持:超长代码行自动横向滚动
  • 新增无障碍支持aria-labelaria-expanded:focus-visible
  • 性能优化:JS 从 ~600 行重构为 ~270 行(-55%),CSS 从 ~800 行重构为 ~220 行(-72%)
  • 浏览器兼容性提升:Chrome 57+、Firefox 52+、Safari 10.1+
  • 默认启用功能:代码折叠和长图折叠默认开启(之前默认关闭)

升级说明

  • 从 v1.x 升级到 v2.0.0 会自动丢失高亮、行号、复制按钮等功能
  • 如果依赖这些功能,请勿升级
  • 如果只需要折叠功能,v2.0.0 性能更优,体验更好

资源下载

  • plugin-codeenhance-2.0.0.jar
1.1.6
吴蛋蛋 发布于
>=2.20.0
  • 设为最新版本

资源下载

  • plugin-code-enhance-1.1.6.jar
1.1.6
吴蛋蛋 发布于
>=2.20.0
  • 代码审查修复:基于全面代码审查,修复以下问题
  • 语法高亮保留:新增 splitHtmlLines() 方法,行号显示时完整保留 hljs 语法高亮结构,修复行号导致高亮失效的问题
  • Shiki 冲突检测:恢复 Shiki 高亮插件检测逻辑,当检测到 Shiki 存在时自动跳过高亮处理,避免双重样式冲突
  • 初始化合并:统一 observeCodeBlocks()observeImages() 调用,移除重复的模块 init() 调用,提升性能
  • 未使用变量清理:删除 pendingInit 未使用变量
  • CSS :has() 兼容:使用 @supports 特性查询,并为不支持 :has() 的浏览器提供 CSS fallback
  • JSDoc 完善:为所有关键函数添加完整的 JSDoc 注释,提升代码可维护性
  • 错误日志:添加复制按钮失败的错误日志输出

资源下载

  • plugin-code-enhance-1.1.6.jar
1.1.5
吴蛋蛋 发布于
>=2.20.0
  • 开关独立:所有功能开关默认关闭,未启用的功能不再加载任何资源
  • 主题兼容:通过 CSS 变量统一管理配色,修复部分主题下代码文字不可读的问题
  • 移动端修复:移除 touchstart 绑定,避免点击双触发;底部折叠按钮严格依据状态显隐
  • 代码重构applyThemeColors 改为数据驱动(BASE_COLORS),processCode 拆分为 ensureWrapper/addHeader 子方法
  • 观察者优化observeCodeBlocks 仅在启用高亮或代码折叠时观察代码块,避免仅启用长图折叠时误装饰代码
  • 配置增强:亮色/暗色主题选择器均提供完整 14 种主题选项,支持反向配色
  • 日志清理:移除所有 console.log 调试日志,保留 console.warn 错误日志

资源下载

  • plugin-code-enhance-1.1.5.jar
1.1.4
吴蛋蛋 发布于
>=2.20.0
  • 资源统一:统一 CSS 文件名为 code-enhance.css(不存在 .min.css 版本)
  • 开关独立修复:修复未开启代码高亮只开启其他选项时,前台仍加载代码高亮资源的问题
  • 条件注入优化:根据各功能开关条件性注入资源,避免加载未启用的功能模块

资源下载

  • plugin-code-enhance-1.1.4.jar
1.1.3
吴蛋蛋 发布于
>=2.20.0
  • 配置项重命名enableCodeHighlight 重命名为 enableHighlight,语义更简洁
  • 代码重构:重构头部处理器,抽取 injectResourcesbuildPropertiesappendHljsResourcesappendConfigappendBaseResources 等方法,优化模板资源注入逻辑
  • 功能检查简化:新增 hasAnyFeatureEnabled() 方法,简化全功能禁用时的跳过判断
  • 模板匹配优化:抽取 hasContentVariable() 方法,简化内容模板判断逻辑
  • Logo 本地化:插件 Logo 路径从外链改为本地静态资源 static/images/dan.svg
  • 类注释完善:补充 CodeEnhanceHeadProcessor 类注释文档
  • 错误日志增强onErrorResume 改为记录完整异常堆栈

资源下载

  • plugin-code-enhance-1.1.3.jar
1.1.2
吴蛋蛋 发布于
>=2.20.0
  • 更新静态资源引用为压缩版本 (code-enhance.min.css/js)
  • 删除未压缩的源文件 (code-enhance.css/js)

资源下载

  • plugin-code-enhance-1.1.2.jar
1.1.1
吴蛋蛋 发布于
>=2.20.0
  • 强化 XSS 防护:hljs 高亮流程使用 textContent 提取代码,未高亮场景下行号使用 escapeHtml() 转义
  • 修复异步竞态:Highlight.init() 异步加载时延迟启动 IntersectionObserver,避免 doHighlight 清空已装饰的行号
  • 代码审查优化:notContentTemplate 检查顺序调优,删除冗余方法,预计算选择器字符串

资源下载

  • plugin-code-enhance-1.1.1.jar
1.1.0
吴蛋蛋 发布于
>=2.20.0

动态加载 highlight.min.js,仅在检测到代码块时引入资源
扩展模板匹配范围,支持 Moments 和 Docsme 插件页面
重构高亮逻辑,使用 hljs API 处理文本以防止 XSS
移除静态脚本标签,改为前端按需加载
优化触摸事件监听,添加 passive: true 提升滚动性能
改进代码块标题栏 DOM 构建,确保语言文本安全插入
调整折叠按钮样式为 sticky 定位

资源下载

  • plugin-code-enhance-1.1.0.jar
1.0.0
吴蛋蛋 发布于
>=2.20.0

提供代码高亮、代码折叠、长图折叠、行号显示和标题栏等功能

资源下载

  • plugin-code-enhance-1.0.0.jar