Repository navigation
v0.15.18 — Finder「打开方式」里终于有 wtmd
v0.15.18 — Finder 认得出 wtmd 了
改 #208:对着 .md 右键 › 打开方式,列表里以前没有 wtmd。原因是两件事都缺——Info.plist 没声明文档类型(LaunchServices 不知道它能开 .md),AppDelegate 也没有 application(_:open:)(就算列进去,系统把文件送来也只会激活一个空窗)。
现在两半都补上了:
- 注册:
CFBundleDocumentTypes(Editor,LSHandlerRank = Alternate)+ 自声明的cn.wtmd.markdown(conformspublic.plain-text,认.md/.markdown/.mdown/.mkd); - 接住:
application(_:open:)把文件交给OpenRequest,由它决定落在哪扇窗。
文件落在哪扇窗:
| 情况 | 结果 |
|---|---|
| 这篇在别的窗开着 | 把那扇窗带到前面,不再开第二份 |
| 前台窗就是这篇 | 什么都不做 |
| 前台窗还是欢迎页 | 装进当前窗 |
| 前台窗正在写别的 | 另开一扇,不顶掉手上的稿子 |
| 多选打开 | 第一篇用空窗,其余各开一扇 |
LSHandlerRank 是 Alternate:wtmd 出现在菜单里,但不抢别人已经认领的默认程序。想让它当 .md 的默认打开方式:右键文件 › 显示简介 › 打开方式 › 选 wtmd › 全部更改。
如果装好后「打开方式」里暂时还没有 wtmd:LaunchServices 的候选只认常规位置(/Applications、~/Applications)。把 wtmd 放进「应用程序」后跑一次
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/wtmd.app
或者重启 Finder 即可。验证方法:NSWorkspace.shared.urlsForApplications(toOpen:) 就是那个菜单用的 API。
测试 891 项全绿(新增 OpenRequestTests 6 条 + DocumentStore.isUntouched 1 条)。
升级:0.15.14 及之后的版本可点更新徽标直接升(装完自动重启);更早版本请手动安装本 dmg。