Finicky 是一款 macOS 应用程序,允许您设置规则来决定每个链接或 URL 应该在哪个浏览器中打开。将 Finicky 设置为默认浏览器后,您可以指定在一个浏览器中打开 Facebook 或 Reddit,而在另一个浏览器中打开 Trello 或 LinkedIn。
- 决定在哪个浏览器或应用程序中打开哪些 URL
- 在打开 URL 之前编辑它们
- 使用 JavaScript 完全控制配置
目录
安装
- 安装选项:
- 下载最新版本,解压并将
Finicky.app
放入应用程序文件夹。 - 使用 homebrew-cask 安装:
brew install --cask finicky
。
-
在您的主目录中创建一个名为
.finicky.js
的配置文件(示例),或者使用 Finicky Kickstart 生成基本配置。 -
启动 Finicky。请允许将其设置为默认浏览器。
-
大功告成。现在所有原本会打开浏览器的链接都会先由 Finicky 处理。
配置示例
// ~/.finicky.js
module.exports = {
defaultBrowser: "Google Chrome",
rewrite: [
{
// 将所有 URL 重定向为使用 https
match: ({ url }) => url.protocol === "http",
url: { protocol: "https" }
}
],
handlers: [
{
// 在 Safari 中打开 apple.com 和 example.com 的 URL
match: finicky.matchHostnames(["apple.com", "example.com"]),
browser: "Safari"
},
{
// 在 Firefox 中打开包含 "workplace" 字符串的任何 URL
match: /workplace/,
browser: "Firefox"
},
{
// 在 Google Chrome 中打开 google.com 和 *.google.com 的 URL
match: [
"google.com/*", // 匹配 google.com URL
"*.google.com/*", // 匹配 google.com 子域名
],
browser: "Google Chrome"
}
]
};
查看文档了解 Finicky 支持的所有功能。
文档
Finicky 对匹配、重写和启动处理 URL 的浏览器或其他应用程序提供了广泛的支持。请查看 wiki 上的完整配置文档,了解所有可用的 API 和选项,以及如何匹配 URL 的详细信息。
配置技巧
查看 wiki 页面获取其他 Finicky 用户提供的配置技巧。
替代方案
如果您正在寻找一个可以通过图形界面选择要激活的浏览器的工具,请查看 Will Stone 开发的 Browserosaurus,这是一个适用于 macOS 的开源浏览器选择器。它与 Finicky 配合使用效果很好!
从源代码构建 Finicky
如果您想从源代码构建 Finicky,可以安装 Xcode、Xcode 命令行工具和 yarn,然后运行以下命令:
# 构建源代码
make
# 运行编译后的应用程序
make run
Finicky 开发的当前状态
我没有时间积极开发 Finicky,这种情况已经持续了几年。我仍然每天使用它,它在我的使用场景中运行得很好。我有时间时会尝试回应 Twitter 和 GitHub 上的支持请求。
目前不要期望我会开发新功能、发布新版本,甚至修复 bug。除非我的个人或职业生活发生重大变化,否则在可预见的未来我都没有时间来开发 Finicky。
寻找共同维护者
您想帮助开发 Finicky 吗?我能够投入到 Finicky 开发的时间非常有限,而且我对 Swift 和 macOS 的经验有限,我觉得这阻碍了它的发展。如果您在 Swift 和 macOS 开发方面有经验,并且对此感兴趣,请联系我,最好是通过 Twitter。
问题
Bug
如果发现 bug、缺少文档或意外行为,请提交 issue。
功能请求
请提交 issue 来建议新功能。通过添加 👍 来为功能请求投票。
问题
有其他问题或需要帮助?请随时在 Mastodon 或 Twitter 上联系我。