Tinycast 上手指南:从首次启动到第一枚全局快捷键的完整配置 Tinycast 上手指南从首次启动到第一枚全局快捷键的完整配置【免费下载链接】tinycastTinycast — a tiny, fully native macOS launcher, hotkeys, and clipboard history.项目地址: https://gitcode.com/GitHub_Trending/ti/tinycast本文基于 Tinycast 官方入门文档website/content/docs/index.md编写。Tinycast 是一个完全原生的 macOS 启动器常驻菜单栏按下快捷键唤出浮层面板输入即搜索、回车即执行。读完本文你将掌握首次启动的三步引导绑定快捷键、授予粘贴权限、迁移 Raycast 数据、按需开启功能的开关哲学以及面板操作的第一批核心快捷键并深入理解这些设计在源码AppCore.swift、AppSettings.swift中的落地方式。Tinycast 是什么Tinycast 是一个小体积、原生实现的 macOS 启动器。它常驻在菜单栏里按下你的快捷键一个浮层面板会叠在正在进行的任何工作之上你输入内容它完成任务后就自动让开。从技术栈看它使用 SwiftUI 与 AppKit 构建零第三方依赖内存占用保持在 100 MB 以下。没有 Electron、没有账号体系、不需要登录、也没有遥测上报。这些约束的源头可以在 AppCore.swift 中看到应用以.accessory激活策略运行无 Dock 图标所有长生命周期管理器由AppCore单例统一持有并一次性装配启动流程在AppCore.start()中完成。真正让它小而功能全的是一条贯穿整个应用的设计原则大多数功能默认关闭关闭的功能完全不做任何事——不扫描、不建索引、不占内存。这一点下文会结合源码展开。首次启动三步引导流程第一次打开 Tinycast 时一个简短的欢迎流程会带你完成基础配置。每一步都可以跳过之后随时可以补做。从源码看引导流程由 OnboardingState.swift 管理首次启动标记以文件而非 UserDefaults 存储Application Support/onboarded因为在AppCore.start()中只有当!OnboardingState.hasOnboarded时才展示引导见 AppCore.swift文件在展示时即写入即使中途退出也不会重复出现。第 1 步选择快捷键Tinycast 出厂时不绑定任何快捷键。在你主动选择之前什么都不发生。这是刻意为之一个启动器绝不应该抢占你已经在使用的组合键。欢迎界面会请求你设置一个。之后随时可以在Settings → General → App Launcher修改点击输入框然后按下你想要的按键组合。⌥Space是一个常见选择。你也可以使用单个修饰键的双击例如快速按两下⌘。双击方案的完整规则按键时长 250 ms、两次点击间隔 300 ms、在第二次松开时才触发等见 Hotkeys 参考文档。需要注意双击修饰键需要Accessibility 权限但它不会主动索取——快捷键会照常保存录制的行上会出现提示并打开系统设置授予权限的瞬间即生效。同一个步骤里还有Launch at login登录时启动开关这样重启之后 Tinycast 无需手动打开即可使用。该开关由 LaunchAtLogin.swift 提供实现并通过AppSettings.launchAtLogin持久化见 AppSettings.swift。第 2 步允许粘贴可选Tinycast 会请求Accessibility辅助功能权限以便将剪贴板条目或 emoji粘贴回你切换之前的那个应用。启动器本身搜索、启动应用、计算器、emoji 选择器不需要任何权限。Tinycast 的权限哲学是用到才申请只在某个功能首次需要时才弹窗绝不在启动时一次性索要。所有权限的申请时机、用途与豁免清单见 Permissions 文档其中明确列出功能为什么需要辅助功能权限剪贴板与 emoji 粘贴把条目放入你之前所在的应用文本片段Snippets监听你输入的关键字并插入文本快速操作Quick Actions读取选中文本并替换窗口管理与布局读写其他应用的窗口 frame导航Navigation列出打开窗口、点击菜单栏条目Hyper 键把一个物理键改造成修饰键组合双击修饰键快捷键识别双击模式⌘esc返回根搜索macOS 默认占用该组合需要抢先捕获扩展中的getSelectedText从前台应用读取选中内容第 3 步迁移 Raycast 配置可选如果你使用过 Raycast可以选择其导出的.rayconfig文件。Tinycast 会把你的快捷键、收藏、文本片段、快速链接和剪贴板历史带过来。完整说明见 Import from Raycast。需要记住几个要点仅支持 Raycast v2.0 及以上的导出格式v1.x 与 X beta 格式自 Tinycast v0.10.5 起已彻底移除。Raycast 的导出文件即使你没设过密码也是加密的它自动生成并保存在你的登录钥匙串中Tinycast 从不读取钥匙串你需要自己粘贴密码短语。导入完成后必须退出并重新打开 Tinycast全部数据才会生效——关闭设置窗口是不够的。导入的文本片段默认开启且显示在启动器中但绝不会自动开启关键字展开——这个开关永远只属于你。除了.rayconfig之外还有两个独立导入器Settings → Extensions → Import from Raycast导入已安装的扩展Settings → Commands → Import Raycast Scripts把脚本文件夹转成自定义命令见 Extensions 文档 与 Commands 文档。按需开启功能默认关闭意味着彻底关闭绝大多数功能出厂时是关闭的。关闭的功能不做任何事不扫描、不索引、不驻留内存——这正是功能列表很长但应用始终很小的秘诀。功能开关的默认值在 AppSettings.swift 的init()中有完整的逐项证据fileSearchEnabled、notesEnabled、aiEnabled、mcpEnabled、customCommandsEnabled、snippetsEnabled、quickActionsEnabled、extensionsEnabled、calendarEnabled、windowManagementEnabled、quicklinksEnabled、appleShortcutsEnabled等全部读取defaults.bool(forKey:)未设置即关闭。而唯一默认开启的是剪贴板历史// AppSettings.swift — 唯一默认开启的功能开关 clipboardEnabled defaults.object(forKey: Key.clipboardEnabled.rawValue) nil || defaults.bool(forKey: Key.clipboardEnabled.rawValue)对关闭即彻底关闭的落实可以在 AppCore.swift 中看到两层机制启动时按需装配例如文本片段功能开箱即关未使用的功能不产生任何加载、监听或事件钩子if settings.snippetsEnabled { Task { await snippetsStore.start() } ... }见 AppCore.swift。运行中响应式投影observeFeatureSwitches()用withObservationTracking监听每个开关变化后调用对应 coordinator 的applyEnabled()/applyPresence()重新投影例如剪贴板开关映射到clipboardCoordinator.applyEnabled()AI 开关映射到aiChatCoordinator.applyEnabled()导航开关同时控制窗口切换与菜单搜索两个功能见 AppCore.swift。各功能在设置中的开启位置如下功能开启位置AI ChatSettings → AIQuick ActionsSettings → Quick ActionsFile SearchSettings → File SearchNotesSettings → NotesSnippetsSettings → SnippetsNavigationSettings → NavigationWindow ManagementSettings → Window ManagementCalendarSettings → CalendarQuicklinksSettings → QuicklinksCustom commandsSettings → CommandsExtensionsSettings → Extensions剪贴板历史是唯一随附开启的功能启动器本就应该记录历史可在Settings → Clipboard中关闭。第一个要学的操作面板导航Tinycast 的一切都发生在一个窗口中。核心交互只有四件事输入进行搜索return执行选中项⌘K查看当前选中项的所有其他操作esc返回上一步其中⌘K比听起来重要得多每个界面都把它的全部动作列在这里每个动作旁边都印着它的快捷键。它是学习这个应用最快的途径。更完整的导航矩阵见 Palette 文档按键作用return当前选中项的主操作⌘return第二操作通常是在 Finder 中显示或复制⌘K打开选中项的动作菜单↑↓移动选中项tab在启动器、AI Chat 与剪贴板之间切换esc清空搜索 → 返回上一层 → 关闭窗口⌘esc从任意界面跳回根搜索delete在空的搜索框内返回上一层⌘,打开设置⌘W关闭窗口面板架构的落地代码集中在 Tinycast/Palette 目录PaletteCoordinator负责面板的显示与模式切换.launcher、.clipboard、.extensionCommand等PaletteState维护搜索与选中状态PaletteWindowController持有窗口生命周期——在 AppCore.swift 中paletteCoordinator被明确标注为拥有自己的窗口与生命周期不与其他界面互相开关。了解菜单栏里的日常入口面板之外菜单栏图标是 Tinycast 的常驻入口。MenuBarItem.swift 的实现表明菜单项包括Open Tinycast打开启动器、Clipboard History剪贴板历史仅在剪贴板功能开启时出现、Check for Updates...、Support Tinycast...、Settings...与Quit Tinycast。菜单栏图标本身不承载任何功能状态因此任何功能都不会隐藏或改变它。如果不想看到菜单栏图标可以在Settings → General → Show in menu bar中隐藏——你的快捷键仍然照常工作。下一步到这里Tinycast 已经完成了首次配置、明确了功能开关哲学并掌握了面板的核心操作。接下来可以深入 Palette 完整指南屏幕堆叠、三屏循环、外观与输入法自动切换或者如果你尚未安装参考 安装指南Homebrew cask、更新与卸载。进一步探索时AppCore.swift 是理解整个应用装配关系的最佳入口——所有功能协调器都在这里被统一创建与接线。【免费下载链接】tinycastTinycast — a tiny, fully native macOS launcher, hotkeys, and clipboard history.项目地址: https://gitcode.com/GitHub_Trending/ti/tinycast创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考