# LaunchBar 文件夹平铺与全路径导航定位

> 本文开放前 70% 正文，剩余内容会员可见。

原文：https://utgd.net/article/21205

2024年国庆假期后，我换上了严重的热带病，持续一周高烧不退。相比病情本身，医院糟糕的导航设计更让人难受：我想去发热门诊，但几款主流地图都未收录该地点；保安让我去“三号楼”，但医院建筑并不按数字排列；医生又告诉我去“北侧的三号楼”（原来南北均有此三号），我才掉过方向；但夜间的医院外部没有任何照明，楼号又高悬于建筑侧面，院内和地上只显示科室，结果我还是把整个医院逛了一圈。幸亏我感染的不是传染病，否则，这趟病毒奥德赛之旅可能会上新闻头条。

保安默认我会去北侧（凭什么？），医生已经内化了医院的结构，但作为患者，我只是一头雾水。这次糟糕的经历，让我又一次意识到立场各异的人认知差异何其巨大。类似的层级结构差异，不仅反映在建筑中，也体现在文件管理系统中。康复后，我开始思考展开和平铺文件夹的问题，以解决 LaunchBar 文件浏览中的结构性问题。

\>\>LaunchBar 动作下载\<\<

## 问题

和站着说话不腰疼的医生或保安一样，LaunchBar 也要求使用者内化文件夹结构。在一个极端的例子中，如果我想通过经典的 LaunchBar 导航方式找到去年某案件的理解与适用资料，可能得先进入项目文件夹，然后点击目标案件，接着找到参考资料板块，随后转到理解与适用类文件，最后看到我要的那份解释。

很多人放弃 LaunchBar，正是因为它太依赖层级文件夹，并且每次只能深入一个文件夹的下一层。若是分类不至于太碎的资料库，或许其路径已经了然于胸，工作量也不大；但前例中的项目文件夹，往往过于细碎，或者路径冗长，会很吃力；至于本就不常用的公用文件夹，那更怪不得使用者迷路。

不过，直接退回 Finder 也不见得是个好主意，毕竟，即便你可以同时展开多个文件夹、另文件层级一览无余，也无法快速定位，还是得一个一个翻过去，最后多数人会作罢，退回搜索，然后和永远不准确的 Spotlight 索引纠缠不清。当然，本文读者可能本就没有退回 Finder 之意。

若用现有的描述，我想在 LaunchBar 寻求的，其实是全路径导航定位，我不需要先后键入案号 127、分类 003 和文件夹 EXPL，只需直接接连输入 127EXPL。沿用医院的例子，无论我的定位关键词是 发热门诊、北侧 发热 或 三号楼 发热，都应该无视层层建筑结构而直达目的地。唯一的要求是我不能记反线索的顺序，但话说回来，发热门诊 三号楼 这种表述本就不符合中国人的表达顺序。

## 解决

每次似乎超出软件能力边界时，都会出现两种。有人将拟实现的功能视为软件的某种“自然”属性，然后开始烧香拜佛，祈求开发商；也有人尝试自下而上，仅在确有需求的场景下解决问题，但并不追求相关功能成为一种自然属性。

沿着后一种思路，我很快到了有效方案：平铺文件夹下的全部内容。具体的技术细节确实烦人，本文也不过问代码细节，我已经写好现成动作，你直接使用就好。总体上，你只需知道，LaunchBar 中的一切都是对象、都是材料，理论上都可以随意处置。在本文语境下，材料原则的具体应用就是文件夹平铺：在 LaunchBar 中选择一个或多个文件夹，再运行本文动作，即可提取所选文件夹下的所有文件和文件夹，并以完整路径为名，按字母顺序一字罗列开。

回到项目文件的例子，假设我想寻找旧案中做过的资料汇编，作为当前案件的参考，我只能确信，根据我的整理习惯，它一定位于某案 003 分类下的 Expl 文件夹中，但是具体出资哪个案件，我实在记不清了。在全路径导航方式下，我可以平铺整个项目文件夹——或选定某一年的文件夹，至少年份我还记得——然后通过参考文件夹的特征编码聚焦、过滤。注意，现在我们用过完整路径导航、定位、过滤参考资料文件夹的编码，找

---

[前往标准阅读页](https://utgd.net/article/21205?audience=web)
