Skip to content

Releases: ying-zhang/MacEverything

MacEverything 1.5.30

07 Jun 21:54

Choose a tag to compare

这是自 fork / 开源基线以来的功能整合版本,重点包括中文检索、内容检索、搜索窗口交互、索引可靠性、性能优化、发布包依赖嵌入,以及 Apple Silicon / Intel 双架构 DMG 发布。

概要功能列表

  • 文件名、路径、扩展名、正则、拼音首字母、中文/中日韩文本相关检索能力增强。
  • 支持内容检索索引范围配置,可查看索引文件信息与内存占用。
  • 支持多搜索窗口、标签页、托盘菜单显示/隐藏、全局快捷键、Dock 显示隐藏设置。
  • 增加快速过滤、搜索加速器配置、结果列宽调整、结果列表键盘导航与右键菜单操作。
  • 支持结果内联重命名、删除后刷新、打开/定位/复制等常用文件操作。
  • 发布包自动嵌入 RE2 及其实际运行依赖,并分别提供 arm64 与 x86_64 DMG。
  • 增加 GitHub Pages 项目页面与中英文 README/界面本地化。

主要功能更新

  • 新增中文界面本地化,并补充中文搜索提示、帮助文案和发布说明本地化。
  • 增强文件名和路径搜索,改进路径 term 的 trigram 预过滤、回退限制和排序正确性。
  • 增强中文搜索支持,包括中文首字母提示、拼音首字母匹配高亮、中日韩 bigram 相关优化。
  • 增加内容搜索索引范围设置,并优化内容设置界面、索引状态展示和索引文件信息显示。
  • 增加可配置应用设置,包括索引范围、系统路径索引、搜索设置、快捷键/加速器、快速过滤重置策略等。
  • 增加多搜索窗口支持,并改进搜索窗口标签页、窗口标题、占位提示和结果列布局。
  • 调整搜索窗口快捷键:Cmd+N 新建当前活动搜索窗口的标签页,Cmd+Shift+N 新建独立搜索窗口。
  • 托盘菜单和主菜单现在明确显示新建标签页、新建窗口等快捷键。
  • 增加低内存索引模式,展示索引内存使用情况,并优化启动索引加载。
  • 增强结果交互:内联重命名、右键菜单、键盘快捷键、结果列表焦点切换、选中后聚焦结果列表等。
  • 搜索核心替换为 Google RE2,支持线性时间正则匹配,并嵌入 RE2 dylib,避免用户机器缺少 Homebrew 依赖导致启动失败。
  • 发布流程改为分别构建 Apple Silicon 与 Intel DMG,并验证主程序、MCP 可执行文件、嵌入 dylib 架构和依赖路径。

性能与可靠性改进

  • 优化 v6 启动性能,减少索引加载耗时。
  • 增加扩展名索引,使 ext: 过滤查询接近 O(1)。
  • 将 glob 匹配预编译,减少查询期间分配和重复解析。
  • 用 RE2 FilteredRE2 提取正则字面量,并用 UNION 方式做 trigram 预过滤,提高正则查询稳定性和性能。
  • 为 RE2 查询使用 per-thread clone,减少 DFA mutex contention。
  • 用 per-session cancellation 替代全局 query generation,修复快速输入/查询切换时可能出现的延迟。
  • 优化 C++ 搜索核心,包括 SIMD、内存访问、多词查询和中日韩 bigram 处理。
  • 减少其他搜索应用或窗口恢复引发的刷新抖动。
  • 改进 Phase 2 索引完成重试、内存/分块启发式与索引可靠性。

重要缺陷修复

  • 修复关闭搜索窗口后,从托盘或 Option+Space 重新打开时,输入框仍显示旧关键词但结果为空、继续输入不刷新或响应很慢的问题。
  • 修复 NSTextView 被作为 AppKit field editor 使用后,在隐藏/关闭/恢复窗口时焦点和输入状态不可靠的问题。
  • 统一托盘菜单和全局快捷键的窗口恢复逻辑,确保应用取消隐藏、窗口置前并重新聚焦搜索框。
  • 防止窗口恢复后的延迟刷新覆盖用户刚输入的新查询。
  • 修复清空搜索词后仍显示陈旧结果的问题。
  • 修复结果列表键盘焦点处理问题。
  • 修复删除文件后结果列表不刷新、重命名刷新与校验问题。
  • 修复短查询可能导致崩溃的问题。
  • 修复 lowercased 字符串索引映射回原始文本时可能崩溃的问题。
  • 修复 WAL 损坏可能导致数据丢失的问题。
  • 修复 FSWatcher 排除路径误判问题。
  • 修复 Dock 可见性菜单行为、设置页 Swift actor isolation、配置索引范围迁移与系统索引应用问题。
  • 修复 RE2 依赖嵌入脚本在重复构建时可能复制自身的问题,并只嵌入 libre2 实际依赖的 Abseil dylib 闭包。
  • 修复 Cmd+N 不总是在活动搜索窗口中新建标签页的问题。
  • 修复后续新建的独立搜索窗口不能继续添加标签页的问题。
  • 修复关闭额外标签页/搜索窗口与隐藏最后一个搜索窗口之间的状态处理混淆。

发布包与验证

  • 版本号:1.5.30
  • Tag:v1.5.30
  • Commit:2355f2e80590a4878dc5cc287bade0f98efe3e59
  • GitHub Actions:27105785000,arm64 与 x86_64 构建均通过。
  • 已验证两个 DMG 内应用版本均为 1.5.30,CFBundleVersion 为 5。
  • 已验证 arm64 DMG 内主程序和 MCP 可执行文件均为 arm64。
  • 已验证 x86_64 DMG 内主程序和 MCP 可执行文件均为 x86_64。

下载

  • Apple Silicon:MacEverything-arm64.dmg
  • Intel:MacEverything-x86_64.dmg

SHA256

  • MacEverything-arm64.dmg:73e101d3fcaf47e386c99d866ca1804030aa6a9b60b85c97046950af1e047046
  • MacEverything-x86_64.dmg:dcbfab3a713df9d14a368f0da96fd6d202be981dae07d15aaa96aefa794b4677