参考
快捷键
常用全局快捷键
功能 | 快捷键 | 说明 |
---|---|---|
显示桌面 | F11 | 很有用,再按一下回归原状 |
平铺全部打开窗口 | Ctrl + ↑ | 即,打开 mission control |
复制粘贴 | Cmd + c 后 Cmd + v | 标准的复制粘贴 |
剪切 | Cmd + c 后 Cmd + option + v | 有 option 就是剪切,不加就是普通拷贝 |
打开 emoji 表情窗口 | Ctrl+Cmd+ Space | 输入文字时使用 |
打开 Spotlight | Ctrl+ Space | 用于检索 |
切换输入法 | Cmd+ Space | |
窗口(全局的任何程序窗口)
功能 | 快捷键 |
---|---|
向后切换窗口 | Cmd+Tab |
向前切换窗口 | Cmd+Shift + Tab |
最小化窗口(到 Dock) | Cmd+M |
恢复最小化的窗口 | 先用Cmd+Tab或者Cmd+Shift + Tab切换到你想要恢复的窗口处,然后松开除了Cmd之外的按键(依然按住Cmd),接着再按住Option,然后松开Cmd |
切换窗口全屏状态 | Ctrl + Cmd+F |
关闭窗口 | Cmd+W(不过通常彻底退出程序是 Cmd + Q) |
新建标签 | Cmd+T |
新建窗口 | Cmd+N |
隐藏当前程序的所有窗口 | Cmd+H |
Finder
功能 | 快捷键 |
---|---|
打开文件预览 | Cmd+Shift+P |
显示隐藏文件 | Cmd+ Shift +. |
拷贝文件或者文件夹路径 | Cmd + Option + C。要拷贝某个文件全路径,选中该文件。如果要拷贝文件夹路径,则不要选中该路径下任何文件) |
弹出地址栏(用于跳转) | Cmd + Shift + G。结合拷贝路径快捷键使用就可以快速打开一个当前路径下的新的 Tab。 |
新建 Tab | Cmd+T |
永久删除文件(夹) | Cmd + Option + Backspace(不会放入垃圾箱而是直接永久删除) |
在新的一个 Tab窗口打开选中的文件夹 | 选中文件夹,然后Cmd + Option+O(如果选中的是某个文件,那么会直接用相应的 Software 打开该文件)。这也可以用来快速在当前路径上开一个新的 Tab。 |
放大/缩小窗口文件列表 | Cmd+Shift++放大,Cmd+Shift+-缩小。非常实用。 |
缩放窗口来展开所有文件的全名 | 直接鼠标双击一个 Finder 窗口的 Title 附近的任意空白位置即可。再次双击则还原此前的窗口大小。这个功能可以通过扩大 Finder 窗口来展示文件夹下全部文件的全名。 |
截图和录屏
参考:截屏快捷键官方文档
Mac 自带一个录屏和截图工具。
功能 | 快捷键 |
---|---|
打开截屏或录屏窗口 | shift + cmd + 5。打开后可以在弹出的小窗口上选择截图和录屏等操作,非常方便。 |
整个屏幕截图 | Cmd+Shift+P |
选择任意矩形截图 | shift + cmd + 4 |
指定的窗口截图 | shift + cmd + 4 后再按下 Space |
截图后放在剪切板上而不保存 | 上面的快捷键再加上 Ctrl,上面的操作默认是截图后保存到桌面 |
常用命令
文件管理
按键/命令 | 描述 |
---|---|
touch [file] |
创建一个新文件 |
pwd |
显示当前工作目录 |
.. |
直接前进到上级目录(无需 cd) |
rm [file] |
移除文件, 例如 rm [file] [file] |
rm -i [file] |
移除时出现确认提示 |
rm -r [dir] |
移除文件夹 |
rm -f [file] |
强制移除 |
cp [file] [newfile / dir] |
复制文件(到新文件或者文件夹) |
mv [file] [newfile / dir] |
移动文件(到新文件或者文件夹) |
mkdir [dir] |
创建新目录 |
mkdir -p [base]/[sub-dir] |
创建子目录 |
管道 - 连接多个带有输出的命令
按键/命令 | 描述 |
---|---|
more |
按当前窗口大小显示(一个文件中的)内容 |
> [file] |
输出至指定文件, 注意文件将会覆盖 |
>> [file] |
在制定文件的末尾附加内容 |
< |
从文件中读取内容 |
Terminal 终端相关配置工具
这里把和终端相关的工具放在一起。
整个流程配置
- 1. 几分钟打造超级好看又好用的zsh command line环境
- 2. Mac/Linux下配置iTerm2+zsh+powerline美化终端窗口
- Making Powerline Work In Visual Studio Code Terminal
- 安装powerline
Mac 终端推荐是 iTerm2 + zsh + powerline 的结合,整个流程其实只需要参考上面链接 1 和 2 就足够了。
有关链接 1 和 2 流程的几个注意点:
- 链接 1 中的安装 powerline 的过程似乎有错误,这里可以推荐参考链接 2;
- iTerm2 中的 powerline fonts 字体的话,推荐两款:
Source Code Pro for Powerline
和Roboto Mono for Powerline
(其实很多个名为XXXX for Powerline
的都不错,用关键字搜一下试试吧)
oh-my-zsh
不多说了,没人不用吧。自行安装。通常推荐的主题组合是:oh-my-zsh + iTerm2 (or tmux)
几个相关设置
- 一个推荐的 Theme:
ys
- 设置字体的位置:
Preferences -> Profiles -> Text
,设置颜色主题在同一页的Color
- oh-my-zsh 中修改主题添加全路径显示
zsh 中重要插件推荐
- zsh-syntax-highlighting,高亮你输入的命令;
- zsh-autosuggestions:自动用你的输入历史来补全你的命令,强烈推荐。使用是右方向键。
autojump
:记录过去访问过的路径,方便跳转。
终端工具 iTerm2
普通的 Terminal 的替代工具和多 tab 管理工具,非常好用。通常是和 zsh 结合使用。类似的还有 tmux。
功能 | 快捷键 |
---|---|
切换不同窗口 Tab | Cmd + 数字键 |
(同一个窗口中)右边开一个新的 Tab | Cmd + D |
(同一个窗口中)下边开一个新的 Tab | Cmd + SHIFT + D |
(同一个窗口中)切换不同的 Tab | Cmd + Option + 方向键 |
终端工具 tmux
tmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理。在 macOS 下,使用 iTerm2 能应付绝大多数窗口管理的需求。tmux 相比 iTerm2 的优势在于:
- iTerm2 的窗格切换快捷键(⌘⌥→)容易与其他软件全局快捷键冲突(例如 Spectacle 的窗口分割快捷键),tmux 由于存在前缀快捷键,所以不存在快捷键冲突问题;
- tmux 可以在终端软件重启后通过命令行恢复上次的 session ,而终端软件则不行;
- tmux 简洁优雅、订制性强,学会之后也能在 Linux 上使用,有助于逼格提升。
不过个人感觉,iTerm2 已经够我个人使用了 :)
其他推荐的逼格工具
下面这两个知乎链接几乎涵盖了最常见的所有的 Mac 上的逼格工具:
这里总结几个我认为比较好用的。
生产力工具 Alfred
大名鼎鼎。用法太多,不介绍了。
https://www.jianshu.com/p/19a704d29f91
Typora
必备。非常、非常美观的一个 Markdown 编辑工具,支持 Mac, Linux 和 Windows 版本。唯一缺点是,暂时还没有移动版,当然也就没有多平台同步功能了。不过这不是大问题,可以借助任意第三方网盘。甚至还免费。
在终端中使用 typora 命令:Use Typora from Shell or Cmd
快捷键
- 切换 Markdown 预览和源码:Cmd + /
有用链接
- 官方支持文档:https://support.typora.io/,里面有所有的使用方法链接;
- 使用数学公式:http://support.typora.io/Math/#math-block-display-math
Themes 主题
全部的 Themes 链接:http://theme.typora.io/
推荐的主题有:
- 默认的 Github 就灰常好用,简洁大方;
- 另一个强烈推荐的主题是 Vue:http://theme.typora.io/theme/Vue/,目前我就在用。颜色分配更好看一些,排版也不错,不过默认字体有点小,在 Preferences -> Appearance 中设置 Custom 就行了。
- 黑色主题推荐 Cobalt: http://theme.typora.io/theme/cobalt/
- 纯中文主题推荐 Han:http://theme.typora.io/theme/Han/,基于 typo.css 开发。不过它的英文字体不喜欢,还没其它默认的主题好看,因此更适用于纯中文;
Theme 的安装方法:http://theme.typora.io/theme/cobalt/,其实就是下载 Theme 包然后解压,再放到 Theme 路径中就行了。
- Download the zipped project package and open it.
- Launch Typora and open
Preferences
from the app menu. - Go to the
Appearance
tab, and chooseOpen Theme Folder
- Copy the
cobalt.css
file andcobalt
folder from your zipped file to Typora theme directory. - Launch or restart Typora and choose
Cobalt
from the theme menu.
autojump
https://github.com/wting/autojump
跳转工具,可以用j folder
快速跳转到你访问过的路径中。Mac 下 brew install autojump
安装。
Linux 下的安装需要一点技巧:https://www.jianshu.com/p/0c1589bb9475
tree
用于查看文件夹的树状结构。直接用 brew 即可安装。可以用man tree
查看它的用法帮助。几个常见用法:
tree
:默认显示当前目录所有子文件夹的结构;tree -L 1
:只显示一级目录(就类似 ls 了);tree -N
:显示中文等其他的 Unicode 文字(默认中文等都是乱码)
录屏工具 kap
https://getkap.co/
必备。Mac 的录屏工具,简单实用,支持导出 mp4, gif 等多种常见格式。
截屏工具 xnip
- https://xnipapp.com/
必备。免费版只能截屏不能编辑图片,收费版增加编辑功能,不过免费版个人感觉也够了。
其它截屏工具还有好多,例如 snip 等。
PDF Expert
有钱的话必备。PDF 阅读器和编辑器。编辑功能很强大,界面好看实用。一切都好,除了有点贵:80刀。不过可以享受学生半价优惠算是不错了。
PaintBrush
免费的简单绘图工具,类似 Windows 中的 Paint 画图工具。
Paste
必备。粘贴板工具,可以记录过去很长一段时间的粘贴板内容,并且还提供了整理和分类功能,及其强大的生产力工具。10刀左右,买了肯定值。
Wudao-dict
命令行词典,支持中英文查询。优点多多。免费。
ShiftIt
必备。平铺窗口工具。Mac 不像 Ubuntu 一样自带快捷键可以平铺窗口。这个工具提供了非常多的快捷键以排列窗口。免费。
类似的工具还有 Spectacle 等。
矫正外接鼠标的滚轮方向 Scroll Reverser
必备。Mac 奇葩的一个地方:触摸板的滚动方向和外接鼠标滚动方向相反。使用默认的设置没法同时将两者都设成我们熟悉的操作。这个很小的软件就是解决这个问题的:它可以显式指定你要翻转的设备是触摸板、外接鼠标或者是其它设备。
fliqlo
- https://fliqlo.com/#/screensaver
必备。一个屏保工具,用超大字体显示时间。免费。
OpenInTerminal
- https://github.com/Ji4n1ng/OpenInTerminal/blob/master/Resources/README-Lite-zh.md
一个小程序,可以让你从 Finder 中的当前路径中打开 Terminal 或者 iTerm。这一类的工具有好几个,这个还是国内某个学生写的,小巧且好用。
OmniDiskSweeper
The Omni Group 开发的免费软件 OmniDiskSweeper, 用于查看系统中所有路径下的各种文件的空间占用情况,方便删除较大的文件,非常好用。
有用的库
ImageMagick
ImageMagick 官网:包含使用说明。
很强大的图片信息提取和简单处理,包含多个命令,例如转换图片格式,或者合并多个图片到一个 gif 等。常见命令:
convert input.png output.jpg # 转换格式
convert frame*.png output.gif # 将多张图片合成一个 gif
Cocoapods
参考:
- 看一遍就会的CocoaPods的安装和使用教程
- CocoaPods 的简介和原理:https://juejin.im/post/5ba8e3c95188255c581aacbd
- 简单的安装和使用:https://www.jianshu.com/p/9c68c966a408
- 如何删除:https://superuser.com/questions/686317/how-to-fully-uninstall-the-cocoapods-from-the-mac-machine
CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具。利用 CocoaPods,可以定义自己的依赖关系 (称作 pods),并且随着时间的变化,以及在整个开发环境中对第三方库的版本管理非常方便。
CocoaPods 背后的理念主要体现在两个方面。首先,在工程中引入第三方代码会涉及到许多内容。针对 Objective-C 初级开发者来说,工程文件的配置会让人很沮丧。在配置 build phases 和 linker flags 过程中,会引起许多人为因素的错误。CocoaPods 简化了这一切,它能够自动配置编译选项。
其次,通过 CocoaPods,可以很方便的查找到新的第三方库。当然,这并不是说你可以简单的将别人提供的库拿来拼凑成一个应用程序。它的真正作用是让你能够找到真正好用的库,以此来缩短我们的开发周期和提升软件的质量。
安装很简单:
sudo gem install cocoapods [-v 1.3.1]
可以指定版本,不指定版本时默认安装最新版。
各种小技巧和常见问题
保存 Safari 里正在播放的视频
$ su
# cd /private/var/folders
# ls
nk zz
# cd nk
# ls
zy3770994vqg83xvmbc9pd0m0000gn
# cd zy3770994vqg83xvmbc9pd0m0000gn/T
# open .
然后复制里面叫 FlashTmp.xxx 的文件,改名为 FlashTmp.flv。(操作过程中保持视频在播放状态)
安装 mpv 没有图形界面
使用 brew options mpv
可以看到有个 --with-bundle
是安装时创建 .app 文件。
brew install mpv --with-bundle
brew linkapps mpv
oh-my-zsh 中修改主题添加全路径显示
oh-my-zsh 默认的 robbyrussel 本身已经十分简洁,一些小 tweak 就能变得十分高大上。然而,robbyrussel 主题有一个很令人难受的痛点,在于它并不能显示全路径,只能显示当前所在的文件夹名,如现在处于路径 /home/.../src
中,此主题就只是显示最后路径,即src
,带来了一些不方便。
可以通过如下的简单修改使得它能够显示全路径:
- 用 IDE 打开
~/.oh-my-zsh/themes/robbyrussell.zsh-theme
文件; - 修改
PROMPT
一行中间附近的%c
字样为%~
,这样不但会显示全路径,而且对用户的目录/home/user
会显示~/
,更符合习惯。
Mac 触摸板和外接鼠标的滚动方向分开设置
Mac 的外接鼠标的滚轮操作默认是和触摸板相同方向的,但是正好和用户习惯相反。并且 Mac OSX 系统居然没有地方可以修改鼠标滚轮方向。此时可以使用一个叫做 Scroll Reserver 的小软件。参考上面链接,下载后即可使用。不过第一次会提示你修改该软件的 Accessibility,记得将其设置成 Allow this app to control your computer,否则根本无法打开。打开后,该软件默认隐藏,从屏幕右上方控制栏中找到该软件,打开后即可。通常是勾选“Reverse Mouse”,但是不要选“Reverse Trackpad”就行了。
设置外接键盘中的 Cmd 按键和内接键盘一样
参考:Swap CMD and Alt only on external keyboard
很多外接的 Windows 类型键盘中并没有 Cmd 按键,此时 Mac 经常会默认键盘上的 Windows 按键(就是夹在 Ctrl 和 Alt 中间的那个按键)是 Cmd 按键。此时就有问题了:Cmd 和 Alt 按键和 Mac 的键盘反过来了,用起来很不方便。可以设置交换这两个按键以符合我们的习惯。找到 System Preferences → Keyboard,打开 Modifier Keys,先选中你的外接键盘,然后交换默认的 Command 和 Option Key 这两个按键即可。
有外接电源时,盖上盖子不休眠(don’t sleep after closing lid)
很简单,在 System Preferences → Energy Saver 中,在 Power Adapter,取消选择 Put hard disks to sleep when possible。
像 Ubuntu 一样使用快捷键平铺窗口(Split Views Like Ubuntu using Shortcuts)
Mac 并不支持类似 Ubuntu 中的平铺窗口的快捷键,使用起来很痛苦。这时又要借助神器软件了,这次的小软件是 ShiftIt(官方链接)。安装很容易,该链接中还有快捷键介绍,使用也很方便。最后不妨将其加到系统启动列表中。
Chrome 中回到上一个 Tab
Switching back to last used tab on Chrome
Chrome 默认不支持回到上一个 Tab 的快捷键,只有像 Ctrl + ` 这种快捷键来遍历全部的 Tabs。如果要回到上一个刚刚访问的 Tab,一种方法是,可以安装一个插件:Recent Tabs。不过安装完成后,还要设置一下快捷键。到 Chrome -> Settings –> More Tools –> Extensions,然后点击左上角 Extensions 的标签栏,选中 Keyboard Shortcuts,此时就会出现让你设置“跳回上一个 Tab”的快捷键了。
预览图片时,使用方向键预览其它的图片
非常简单:不要双击图片来打开预览(Preview),而是使用空格键打开。此后就能使用所有方向键预览其它同一个文件夹中的图片了。
操作(解压缩)7z 文件
You can install p7zip with Homebrew. So
% brew install p7zip
% 7za x myfiles.7z
iTerm2 中使用快捷键跳跃性移动光标
参考:
iTerm - going one word backwards and forwards
iTerm2 默认情况下居然不支持光标跳跃移动,而是只能一个字母一个字母移动。此时,如果你敲了一行很长的命令然后想要修改前面的某个位置,只能按多次方向键一个一个向前挪动光标,忒不方便了。然而,普通的 Ubuntu 中的终端,甚至 VS Code 中内嵌的终端都支持快捷键跳跃性移动光标,例如一次跳过一个单词之类的。其实,iTerm2 中也可以设置成这样:
- Go to Preferences… > Profiles > Keys (not Preferences… > Keys)
- Press Presets…
- Select Natural Text Editing
之后就可以通过和 VS Code 中的终端一样的快捷键了。例如:
- Option + ← 回到上一个单词;
- Option + → 前往下一个单词;
- Cmd + ← 前往行首;
- Option + delete 删除一个单词;
- Cmd + delete 删除一整行。这个很有用,因为 iTerm2 默认也不支持清除一整行。
外接显示器选择自定义分辨率
https://support.apple.com/guide/mac-help/change-your-displays-resolution-mchl86d72b76/mac
在 System Preferences –> Display 中找到显示器后,默认的 scaled 的分辨率就只有比较笼统的五种。此时按住 Option 键再选择,就会出现全部可选的详细分辨率列表了。
Mac 和 Windows(任意其它系统)之间分享文件
各大系统中其实都自带有分享文件的功能,而且很好用,有时候比使用网盘要快很多。建立完分享文件夹后,将来可以从任意一个系统向另一个系统分享文件,非常方便,速度也很快。
这个视频连接详细讲述了 Mac 和 Windows 10 之间分享文件的方法:https://www.youtube.com/watch?v=W6GWr9kjQ9Q。
这里还有来自 Apple 官方的补充:https://support.apple.com/zh-cn/guide/mac-help/mchlp1657/mac
在窗口中使用 Tab 切换不同的按钮
经常在遇到弹出的小窗口时(例如要删除一个文件夹),会有两个或者多个按钮,例如 Cancel 和 Okay/Delete 等。此时你会发现无法使用 Tab 键在按钮之间切换,而是只能用鼠标点击。如果想要支持 Tab 键的切换,前往 Settings -> Keyboard -> Shortcuts,然后勾选下方的 “Use keyboard navigation to move focus between controls” 这个选项框(默认没有勾选)。此后你就可以在窗口中使用 Tab 切换按钮了。
不过一个要注意的地方:虽然 Tab 可以切换按钮,但是要最终选择按钮则要用 Space 按键,而不是回车键。