AE2搜索优化

AE2搜索优化

AE2UEL的一个模组,提升了AE2终端搜索的流畅度,并添加了实用的最近搜索历史功能。

应用能源学 2

AE2 搜索优化

一个用于 AE2UEL 的 Minecraft 1.12.2 客户端优化模组,提升 AE2 终端搜索的流畅度,并新增便捷的 最近搜索历史 功能。


功能特性

🔍 搜索性能优化

本模组针对在启用“Tooltip 搜索”功能时,在包含大量物品的 AE2 终端中进行搜索所产生的卡顿,从两个角度进行优化:

  • Tooltip 搜索索引 当 AE2 的“搜索 Tooltips”选项启用时,本模组会为所有物品构建一个 tooltip 文本索引,使搜索能够快速匹配 tooltip 内容。索引生成被拆分为 每 tick 的小时间片(默认每 tick 最多 10 毫秒),避免了在单次 GUI 刷新中对全部 tooltip 进行扫描所造成的明显卡顿。索引更新后,搜索结果会自动刷新。

  • 搜索查询缓存 缓存搜索过程中重复的正则表达式编译和字符串分割操作,避免了对每个物品进行昂贵的编译开销,进一步降低了搜索延迟。

  • 基准测试 在一个拥有 3.4k+ 种物品类型的 AE 终端中进行测试。 优化前:打开终端后首次搜索会卡顿 1-2 秒;在保持“标准搜索”开启的情况下,打开终端本身也会卡顿 1-2 秒。 优化后:两种卡顿几乎都不可察觉。代价是,由于需要缓存 tooltip,打开终端后的首次搜索会在 1-2 秒内逐渐显示出 tooltip 搜索结果(名称搜索和后续搜索不受影响)。

🕘 最近搜索历史

在 AE2 终端的搜索框下方显示一个 最近搜索下拉列表,方便快速复用之前的搜索词。此功能移植自 AE2 Recent Search(MIT 许可证,版权所有 (c) 2026 zh5112)。

  • 收藏夹:将常用搜索词置顶,优先显示。
  • 键盘导航:使用上下方向键快速选择历史记录。
  • 点击应用:点击历史记录条目直接应用该搜索词。
  • 单个删除 / 全部清除:移除单个条目,或一次性清空整个历史记录。
  • 内置设置面板:直接在 AE2 容器内打开设置页面。
  • 按玩家存储:历史记录为每个玩家分别保存,互不干扰。
  • 外部搜索同步:支持与 JEI 同步。

配置

配置文件位于 config/ae2searchoptimization.cfg,可在游戏中编辑或手动修改。

类别 选项 默认值 描述
performance searchOptimizationEnabled true 是否启用搜索性能优化
performance tooltipIndexBudgetMillis 10 每 tick 用于生成 tooltip 索引的最大毫秒数(范围 1 ~ 1000)。值越高构建索引越快,但可能引起轻微卡顿。
recentSearch maxVisibleEntries 10 最近搜索下拉列表中显示的最大条目数。

许可证

  • 本模组的搜索优化部分为原创代码。
  • 最近搜索历史功能移植自 AE2 Recent Search,并根据 MIT 许可证 授权(版权所有 (c) 2026 zh5112)。