Dash:macOS 开发者必备的离线 API 文档浏览器与代码片段管理器 #
Dash 是什么? #
Dash 是一款由 Kapeli 开发的 API 文档浏览器(API Documentation Browser)与代码片段管理器(Code Snippet Manager),主要面向使用 macOS 的程序员与开发团队。它把 200 多个 API 文档集、100 多份速查表(Cheat Sheets)全部下载到本地,让你在不打开浏览器、不等待网页加载的情况下,用模糊搜索在毫秒级定位到某个类、方法、函数或参数说明。
对于经常需要在 Xcode、VS Code、JetBrains 全家桶、Vim、Sublime Text 之间来回切换的开发者来说,Dash 解决了两个高频痛点:一是查文档必须联网、必须开一堆浏览器标签页;二是常用代码模板需要反复手敲。Dash 通过全局快捷键、dash:// URL 协议、编辑器集成插件和系统级文本扩展,把「查文档」和「写模板代码」这两件事压缩到一次按键之内。百度百科式的概括是:它更像一个离线的、可搜索的、可自定义的开发者知识库 + 片段引擎。
Dash 有哪些亮点特色? #
-
200+ 离线文档集开箱即用:官方内置 iOS、macOS、watchOS、tvOS、Swift、Python、JavaScript、React、Vue.js、Node.js、Go、Rust、Java SE/EE、Docker、Kubernetes 生态相关(如 Ansible)、MySQL、PostgreSQL、MongoDB、Redis、Laravel、Django 等主流语言与框架的文档集,下载后完全离线可查,文档集由 Dash 自动保持更新。同时提供 100+ 速查表,覆盖 Vim、Emacs、Bash、Git 等高频工具。
-
即时模糊搜索(Fuzzy Search):在主搜索框输入任意关键词片段即可实时匹配条目,无需记住完整 API 名称。每个文档集都配有可编辑的关键词,例如输入
php:printf就只会在 PHP 文档集中检索printf,避免跨技术栈的结果污染。 -
搜索配置文件(Search Profiles):可以按项目或技术栈把文档集分组,例如建立「macOS」和「Web」两套配置,并设定触发方式——输入搜索关键词触发、切换到某个 App 时自动激活,或按下全局快捷键唤起。配置会在 Dash 多次启动和搜索之间保持。
-
跨编辑器与系统的深度集成:官方提供 Xcode、Alfred、Raycast、LaunchBar、Quicksilver、PopClip、Nova、Espresso、Emacs、Vim、Neovim、BBEdit、TextMate、Sublime Text、Atom、Brackets、Eclipse、Android Studio、Visual Studio Code、AppCode、IntelliJ IDEA、RubyMine、WebStorm、PhpStorm、PyCharm、CLion、DataGrip、GoLand、Rider、Terminal、AppleScript 等数十种集成插件,几乎所有插件底层都基于
dash://URL 协议,可以精确指定只搜索某个文档集。 -
强大的代码片段管理(Snippets):保存常用代码模板与样板文本,输入一个短缩写即可在任意 App 中即时展开。支持
__var__形式的变量占位符(可设默认值、可自动调整首字母大小写)、@clipboard(插入剪贴板内容)、@cursor(展开后定位光标)、@date/@time(插入当前日期时间)等特殊占位符,并提供 150+ 语言的语法高亮和基于标签的组织方式。 -
自定义文档集生成器(Docset Generator):内置工具可以直接抓取网站或索引本地 HTML 文件,生成完全可搜索的离线文档集,非常适合内部文档、开源项目文档或任何你想在 Dash 中检索的资料。官方还提供了完整的 Docset Generation Guide,支持 Swift DocC、Python/Sphinx、Javadoc、RDoc/Yard、Scaladoc、GoDoc、HexDoc、DartDoc、Haddock、Rust Cargo、JSDoc、Doxygen 以及任意 HTML 文档的转换。
-
AI 集成(MCP 支持):Dash 支持 Model Context Protocol(MCP),可以与 Claude、ChatGPT 等 AI 助手对接,让 AI 工具直接获取最新框架和软件包的文档内容,减少模型因训练数据滞后而产生的错误回答。
-
丰富的第三方文档源与扩展能力:Dash 与主流包管理器打通,可自动为 Swift Packages(swiftpackageindex.com)、Ruby Gems(rubygems.org)、Python 包(任意 Sphinx 文档)、PHP 包(packagist.org)、Java/Scala 包(maven.org)、Go 包(pkg.go.dev)、Rust Crates(docs.rs)、Dart 包(pub.dev)、Haskell 包(hackage.haskell.org)、Hex 包(hexdocs.pm)、Clojure 库(cljdoc.org)生成文档集;此外还接入了 GitHub、Stack Overflow、官方速查表站 cheat.kapeli.com 与用户贡献站 contrib.kapeli.com。
-
细节体验到位:支持当前页面可过滤目录(用 ALT+上/下方向键快速跳转)、文档书签、全文搜索、文档集 playground、快捷键自定义、标签页恢复、隐藏 Dock 图标与菜单栏图标、深色模式等。

免费下载 Dash #
以下为官方提供的安装包,点击链接即可下载。请注意:Dash 为商业软件,官方提供下载试用,但完整使用需要购买授权。
| 文件名 | 描述 | 大小 | 下载 |
|---|---|---|---|
| Dash.zip | Dash for macOS 安装包 | 22.3 MB | 夸克网盘 |
官方站点同时提供 Dash for Windows 版本,可在官网首页导航中切换查看。
Dash 如何使用? #
-
首次启动与基础设置:安装后打开 Dash,点击菜单栏图标或使用全局快捷键唤起主搜索框。进入
Settings > General可以设置全局搜索快捷键(类似 Spotlight 的用法),以及「用选中文本直接搜索」的快捷键。 -
下载你需要的文档集:打开
Settings > Downloads,在文档集列表中勾选需要的语言或框架(如 Swift、Python、React、Docker 等),Dash 会自动下载并持续保持更新。也可以在Settings > Docsets中拖动排序、启用/禁用或删除已安装的文档集。 -
搜索文档:在主搜索框输入关键词,Dash 会实时给出模糊匹配结果;按下方向键选择条目,回车即可在 Dash 内打开对应文档页面。如果只想搜索某个技术栈,使用文档集关键词,例如
php:printf、py:requests;也可以先用搜索配置文件限定一组文档集。 -
从其他 App 调用 Dash:Dash 注册了
dash://自定义 URL 协议,格式为dash://?query={query},例如dash://string;也可以带上关键词dash://?query=php:printf。在Settings > Integration中安装对应编辑器的插件后,直接在 IDE 里按快捷键就能弹出相关文档。 -
配置代码片段:进入
Settings > Snippets启用片段功能,新建片段并填写「缩写」和「正文」。建议缩写中包含一个符号(如反引号`)以避免误触发。在任意 App 中输入该缩写,Dash 会立即把它替换为完整代码,并依次提示你填写__变量__占位符。 -
(进阶)从命令行安装文档集:Dash 3.1.0 起支持
dash-install://URL 格式,例如dash-install://repo_name=Ruby Docsets&entry_name=cheatset&version=1.3.3,可以从命令行批量部署团队统一的文档集环境。注意Main Docsets仓库暂不支持该方式。
Dash 的常见问题? #
Dash 是免费软件吗? 不是。官网许可协议明确说明该软件「NOT free or shareware」,需要支付授权费后使用,购买与退款等客户服务由在线经销商 Paddle.com 处理。官网提供下载以便试用,但正式使用需购买许可。
Dash 需要联网才能查文档吗?
下载完成的文档集保存在本地,日常检索完全离线可用。只有在下载或更新文档集、访问 dash-install:// 远程仓库、或使用第三方在线文档源时才需要网络连接。
如何只在一个文档集里搜索?
使用文档集关键词。每个文档集都在 Settings > Docsets 中带有一个默认关键词(例如 PHP 是 php:),在主搜索框输入 php:printf 就只检索 PHP 文档。如果需要对一组文档集做更灵活的切换,建议改用搜索配置文件。
代码片段在别的 App 里不展开怎么办?
先确认 Settings > Snippets 中的片段功能已启用;再检查缩写是否因为过于普通而被误触发或冲突;同时确认系统辅助功能权限已授予 Dash。官方用户指南专门有一节「Snippet expansion is not working」用于排查此类问题。
可以把我自己项目的文档放进 Dash 吗?
可以。既可以使用内置的 Docset Generator 抓取网站或索引本地 HTML,也可以按照官方 Docset Generation Guide 用 Swift DocC、Sphinx、Javadoc、JSDoc、Doxygen 等工具生成 .docset,甚至通过 Docset Feed 分发给团队成员。
Dash 支持哪些编辑器? 官方集成插件覆盖 Xcode、Visual Studio Code、Sublime Text、Atom、Nova、BBEdit、TextMate、Emacs、Vim、Neovim、Eclipse、Android Studio,以及 JetBrains 全家桶(IntelliJ IDEA、AppCode、RubyMine、WebStorm、PhpStorm、PyCharm、CLion、DataGrip、GoLand、Rider)等,另外还提供 Terminal、AppleScript 与通用 URL 协议方案,几乎可以接入任何应用。
Dash 如何安装? #
macOS
- 从上方下载表格获取
Dash.zip(22.3 MB),双击解压得到Dash.app。 - 将
Dash.app拖入「应用程序」(/Applications)文件夹。 - 首次打开时,如果系统提示「无法验证开发者」,请在「应用程序」中右键点击 Dash 图标,选择「打开」,并在弹窗中确认。
- 启动后按提示完成初始设置,可勾选开机自启、隐藏 Dock 图标等选项。
- 如使用 Homebrew,也可以通过命令行安装(以官方 cask 为准):
brew install --cask dash。 - 如需通过命令行批量安装文档集,可使用
dash-install://repo_name=...&entry_name=...格式(需 Dash 3.1.0 及以上版本)。
Windows
- 访问官网首页,切换到「Dash for Windows」页面,下载对应的 Windows 安装包。
- 双击运行安装程序,按向导完成安装。
- 启动后在
Settings > Downloads中选择并下载所需文档集。
Dash 如何卸载? #
macOS
- 退出 Dash:在菜单栏图标或 Dock 图标上右键,选择「退出」。
- 打开「访达」→「应用程序」,将
Dash.app拖入废纸篓并清空。 - 如需彻底清理残留配置与缓存,可在终端执行以下命令(请先确认路径存在):
rm -rf ~/Library/Application\ Support/Dashrm -rf ~/Library/Caches/com.kapeli.dashrm -f ~/Library/Preferences/com.kapeli.dash.plistrm -rf ~/Library/Saved\ Application\ State/com.kapeli.dash.savedState
- 注意:已下载的文档集通常存放在上述 Application Support 目录中,体积可能较大,删除后无法恢复,需重新下载。
Windows
- 打开「设置」→「应用」→「已安装的应用」(或「控制面板」→「程序和功能」)。
- 在列表中找到 Dash,选择「卸载」并按照提示完成操作。
- 如有残留的用户配置目录,可手动删除对应文件夹以释放空间。
