这篇文章介绍 Mac 中的效率神器 Alfred,通过 Alfred 的统一入口,你可以在 Mac 中完成各项任务。对程序员而言,通过 Alfred 提供的各个快捷键或关键字,可以实现用键盘输入而非鼠标操作来完成各个流程,从而极大地提高工作效率。
通用设置
- 将 Alfred 热键设置为
Command + space
,并且勾选开机自启动
特性
默认结果
这里主要配置 Alfred 搜索的默认结果,即配置在 Alfred 主界面中搜索所返回的默认内容。
Applications:配置应用的相关搜索选项
- 配置支持根据应用程序的首字符进行模糊匹配
- 配置是否根据应用的关键词进行匹配,一般不勾选
Essentials:搜索系统偏好设置和联系人信息,都勾选
Extras:配置搜索的额外部分,一般选择如下内容:
- 文件夹
- 文档
- 文本文件
- 另外在 Advanced 中可以配置自定义文件类型
Unintelligent:搜索所有文件类型,不勾选
Search Scope:配置搜索域,包括应用程序目录和用户的主目录即可
Fallbacks:配置当没有找到结果时,显示可选的进一步操作,Alfred 自定义了几个 fallback,可以自行添加
文件搜索
通过 Alfred 的文件搜索功能,可以通过关键字快速搜索并打开文件。
- QuickSearch:打开快速搜索功能,这样输入空格或
'
后将直接开始文件搜索 - Opening Files:使用关键字
open
直接打开所选择的文件 - Revealing Files:使用关键字
find
打开文件所在的目录 - Inside Files:使用关键字
in
根据文件内容搜索 - File tags:使用关键字
tags
根据文件 tag 进行搜索 - Don’t Show:对某些文件类型不进行搜索
- Result Limit:显示搜索的结果数目
Alfred 的创建也提供文件系统导航功能:
- 输入 / 代表文件系统的根目录
- 输入 ~ 代表当前用户的主目录
- Filting:勾选
Fuzzy matching
进行模糊匹配 - 是否使用
left
和right
键来进入上一级或下一级目录:默认没有勾选,默认方式为Command + up
和Comamand + down
的方式 - 是否使用
enter
键来在 finder 中打开目录:默认 enter 键是进入下一级目录,总是可以使用Command + o
来打开文件 - 使用快捷键
Option + p
和关键字prev
来打开最近浏览的目录(是从 Alfred 中浏览的)
Alfred 提供文件选择缓存功能,从而可以从多个文件夹中选中不同的文件,或者对多个文件执行相同的操作
- Option + up:把文件加入列表
- Option + down:把文件加入列表,同时光标移动到下一个文件
- Option + left:删除列表最后一个文件
- Option + right:对列表文件执行统一操作
- Buffer Clearing:设置对列表中的文件完成操作后清空列表,或者 5分钟内没有使用列表也清空列表
Actions
- Show Actions:在选中项上展示 actions 列表,这里选择默认的 right 键
- Selection Hotkey:也可以配置一个热键来在选中项上展示 actions 列表,这里配置为
option + l
- Action Ordering:勾选后将根据最近使用的动作进行排序,任何时候都可以输入 action 名称来过滤 action
- File Actions:可以勾选有哪些默认的文件操作
如果选中项是某个应用,打开 actions 列表后,可以看到一个 Recent Documents
,它可以列出该 app 最近的文件记录列表
网页搜索
Alfred 提供了很多默认的网页搜索,例如通过 google、wiki 等搜索引擎搜索网页。也可以通过其 Add Custom Search
自定义搜索。例如定义百度内搜:
- Search URL:配置搜索的 URL,这里配置为
http://neisou.baidu.com/new/search?word={query}
,其中 query 即为需要搜索的字符串 - Title:Alfred 搜索的提示字符串,这里配置为
Seach Neisou for '{query}'
。Title 旁还可以上传一个 icon,这样能增强标识 - Keyword:输入哪个关键字即可使用该搜索引擎,这里配置为
neisou
- Validation:提供校验功能
另外 Copy URL for sharing
可以将该配置复制到 clipboard 并分享给其他人。其他人直接在 Alfred 搜索框中输入该配置即可将其添加到自己的搜索列表中。
Web 书签搜索
Alfred 也提供对 Web 浏览器中的书签进行搜索:
- Sources:可以配置 Safari 或 Google Chrome
- Show bookmarks:配置关键字
bmark
来在 Alfred 中进行书签搜索 - Open Bookmarks:配置以哪种方式打开书签,这里选择 Mac 的默认浏览器
为了使 Alfred 能够搜索书签,最好在 安全性与隐私->隐私->完全磁盘访问权限
中勾选 Alfred
剪切板历史
通过该功能,可以通过 Alfred 访问系统的剪切板历史。
- Clipboard History:可以配置普通文本、图片、文件的保留时间。
- Viewer Hotkey:通过哪个快捷键可以调用出剪切板历史窗口,这里配置为
Option + h
- Viewer Keyword:通过哪个关键字可以从 Alfred 主界面中进入剪切板历史窗口,这里配置为
history
- Clear keyword:清理剪切板历史,这里使用关键字
clear
- Snippets:在剪切板历史窗口中显示 Snippets,同时搜索剪切板历史也会搜索 snippets
- Universal:忽略从苹果其他设备同步过来的剪切板内容
- Merging:配置对剪切板历史的内容进行合并,这里默认不使用
- Advanced:配置一些高级选项
Snippet
可以通过关键词或快捷键将某个字符片段插入到当前光标之后。
- Viewkey:配置快捷键为
Option + s
,但是还可以通过剪切板历史窗口进入 Snippet 窗口 - Snippet Keyword:配置在 Alfred 搜索 snippet 的关键字,这里使用
snip
- Matching:配置匹配规则,这里选用
Name or Keyword
- Automatically expand snippets by keyword:可以在配置在系统的任何地方将 snip 关键字扩展为片段内容。这里默认不开启
Snipet 按照 collection 的方式组织,可以为 collection 设置 Affix,这样就可以通过 prefix
+ snippet keyword
+ suffix
引用某个 collection 中的某个 snippet。前提是开了自动替换功能。
每个 snippet 需要包含:
- Name:名称
- Keyword:关键字
- Collections:所属的 collections
- Type:snippet 的类型,有普通文本和富文本
- Snippet:snippet 的内容
由于搜索时会根据 Name 或 Keyword 查找 snippet,我采用的 Snippet keyword
命名规则为 Collections 的前 2 个字符
+ Snippet 的 name
,这样能比较快速找到想要的 snippet。
Alfred 为 Snippet 提供替换占位符,例如 {time}
、{date}
、{clipboard}
,这样替换时会自动扩展为当前相应的内容。对于更强大的替换操作,建议使用 Workflow Snippet Trigger Object
。
计算器
可以直接在 Alfred 主窗口中进行数学计算,敲回车键后计算结果会自动保存到剪切板中。
字典
可以在 Alfred 中直接进行字典查找:
- define a word:配置字典查找的关键字,这里使用默认的 define
- spell a world:配置字典模糊拼写的关键字,这里使用默认的 spell
联系人
Alfred 中可以直接对通讯录进行查找,由于基本不会使用,不做说明。
Music
国内一般都使用某云音乐和某 Q 音乐,不会购买苹果的 Music 服务,所以一般也用不到。
1password
搜索并直接从 Alfred 中打开 1password 中的书签。
系统
允许直接从 Alfred 中控制系统,包含的功能有:
- Screen Saver:显示待机屏幕,关键字 screensaver
- Show Trash:显示 trash 中的内容,关键字 trash
- Empty Trash:清理 trash 中的内容,关键字 emptytrash
- Log Out:退出登录,关键字 logout
- Sleep:睡眠模式,关键字 sleep
- Sleep displays:关闭屏幕显示,关键字 sleepdisplays
- Lock:锁屏,关键字 lock
- Restart:重启,关键字 restart
- Shut Down:关机,关键字 shutdown
- Hide:隐藏程序,关键字 hide
- Quit:退出程序,关键字 quit
- Force Quit:强制退出程序,关键字 forcequit
- Quit All:强制退出所有程序,关键字 quitall
- Volume Up:增大音量,关键字 volup
- Volume Down:减少音量,关键字 voldown
- Toggle Mute:静音,mute
以上操作,如果是危险操作,可以勾选 Confirm 已进行确认。
终端
可以从 Alfred 中调用终端来执行命令,默认通过 >
来触发终端要执行的命令,默认打开的是 Mac 的自带终端软件,在 Application
选项中设置为 Custom
,并添加如下 AppleScript 来启动 iterm2(每次启动一个新的 tab 来执行该命令):
1 | on alfred_script(q) |
放大镜风格
可以对 Alfred 中的输入进行放大显示(使用快捷键 Command + L
),个人感觉作用不大。
预览
在 Alfred 中可以对选中项进行预览,默认使用 shift
键或 Command + y
进行预览。同时也可以配置对指定的文件类型或文件路径不提供预览操作。
Workflow
通过 Workflow,可以定制自己的工作流程。上面的一些功能,其实可以立即为 Alfred 自带的工作流,而通过 Workflow,可以自己编写工作流程,或者也可以下载第三方的工作流程。
实现 Workflow 有 4 个基本的对象:trigger、keyword、action、output,通过对这些基本对象进行连接可以实现各种高级的功能。配置一个 Workflow,大致分为三栏:
- trigger 和 keyword 都会触发后续的行为,所以归类为原因类
- action 负责处理需求,归类为过程类
- output 负责把 action 的结果以一定的形式传递给用户,是结果类
其他功能
- Appearance:通过 Appearance 可以配置 Alfred 的界面
- Remote:通过 Remote 可以使用移动版 Alfred 来控制桌面端
- Advanced:其他一些高级功能配置
- Powerpack:Alfred 的很多功能都要开通 powerpack 才能使用
- Usage:统计 Alfred 的使用情况
- Help:Alfred 的帮助页面,在这里也可以搜索 Alfred 本身的配置项。也可以在 Alfred 的主界面中通过
?关键字
来搜索 Alfred的主界面配置
总结
另外任何时候都可以通过 Command + p
(选择上一项)和 Command + n
(选择下一项)来在 Alfred 的结果列表中进行选择。