Snow-IntelliJ v1.1.1 发布:Snow 代码折叠系统全面重构

snow-intellij v1.1.1 发布:snow 代码折叠系统全面重构

版本更新

重构与优化

代码折叠架构深度重构与精细调优

  • 彻底弃用原有依赖正则表达式的文本级折叠方案,转而基于 PSI 结构与词法 Token 构建全新折叠体系,显著提升折叠精度与运行稳定性。
  • 深度集成 SnowCompilerCache 提供的 Token 流信息,强化对语法节点边界的识别能力,使折叠锚点更可靠。
  • 对 module、function、struct、body、if、loop 等核心结构的折叠规则进行升级,支持更深层嵌套与复杂语法组合。
  • 引入严格的 end 关键字闭合匹配机制,大幅降低误折叠、漏折叠及无效区域折叠的发生概率。
  • 新增工具方法 findClosingKeyword,增强对行内关键字(如 end ifend loop)的解析鲁棒性,保障多层嵌套结构下折叠行为的一致性。
  • 移除陈旧的字符串扫描式折叠实现,整体响应速度、内存占用与异常容错能力均获得明显改善。

折叠区域边界与占位符体验升级

  • 重写折叠起止偏移量计算逻辑,杜绝过短折叠、越界折叠及跨无效行折叠等问题。
  • 增强空行与注释行的智能跳过策略,确保折叠内容严格贴合语义块,提升结构可理解性。
  • 统一各类型折叠占位符的显示格式与交互样式,兼顾简洁性与上下文提示能力,优化编辑过程中的视觉反馈。

新增功能

多行注释块折叠支持

  • 在折叠构建器中新增对 /* ... */ 类型多行注释的原生识别模块。
  • 支持完整注释段落的折叠收起与自定义占位符展示(如 /* ... */ 或摘要文本)。
  • 自动提取首行有效注释内容生成简明折叠标题,兼顾信息密度与可读性。
  • 内置注释长度安全校验,防止超长或非法字符导致折叠流程中断。

loop 循环区块折叠支持

  • 基于 init:cond:step: 标签自动识别循环声明结构体。
  • 结合缩进层级与语句连续性分析,精准界定 loop 主体范围。
  • 自动忽略空行及缩进异常语句,确保折叠区域真实反映逻辑作用域。

returns 返回段落折叠支持

  • 新增对 returns:(不区分大小写)关键字引导段落的折叠识别能力。
  • 利用缩进一致性判断与空行分隔规则,动态划定跨多行 returns 内容边界。
  • 优化起止位置定位算法,使折叠区域与语义上的返回声明段完全对齐。

params 参数段落折叠支持

  • 新增专用方法 buildParamsFolds,专用于处理以 params: 开头的参数定义块。
  • 支持解析 params 下的嵌套结构与字段声明,准确推导其折叠覆盖范围。
  • 兼容多级缩进与空行间隔场景,保证折叠效果自然、稳定、符合预期。

import 与 globals 全局区块折叠支持

  • 实现连续 import 语句的自动聚类折叠,合并为单一可展开代码块。
  • 新增 globals 区块识别能力,依据缩进层级与关键字特征捕获全局配置段。
  • 将 import / globals 统一纳入折叠管理管线,标准化其处理路径与结果输出。
  • 优化折叠信息组织方式,使项目顶层结构更清晰、导航更高效。
若在使用过程中遇到任何问题,欢迎随时 提交 Issue 反馈

源码地址:点击下载

Snow-IntelliJ v1.1.1 发布:Snow 代码折叠系统全面重构

网友留言(0 条)

发表评论