有些配置无法立即生效,因此建议安装完以后注销再登录一次,即可看到效果
默认情况下,键盘上的 F1-F12 是特殊键,偏向娱乐,比如 F1、F2 调整亮度,F11、F12 调整声音等。但程序员没必要总是折腾这些。
其实 F1-F12 可以用作快捷键,但需要配合键盘左下角的 Fn 键一起按下。此脚本的作用是让 F1 键成为真正的 F1,如果调节亮度才需要 Fn + F1:
defaults write -globalDomain com.apple.keyboard.fnState -int 1
在 Mac OS 弹出的对话框中,经常需要切换选项:
如图所示,默认选中的是左侧的选项,我们不用移动鼠标点击右边的选项,只要按下 键即可切换到右侧选项,再按下空格键就可以选中了。
以上特性需要完全开启键盘控制,由下面这行代码实现:
defaults write NSGlobalDomain AppleKeyboardUIMode -int 3
在 Alfred 等软件中可以配置各个软件的全局打开快捷键,所以没必要一直显示着 Dock 去占用空间,可以设置为自动隐藏:
defaults write com.apple.dock autohide -bool true
使用这行命令可以显示电量百分比:
defaults write com.apple.menuextra.battery ShowPercent -string "YES"
通过减少延迟时间,可以加速窗口大小调整时的动画:
defaults write NSGlobalDomain NSWindowResizeTime -float 0.001
再也不会因为后缀名被隐藏而造成烦恼了
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
打开大的 DMG 文件时,验证过程也是蛮繁琐的,可以关闭:
defaults write com.apple.frameworks.diskimages skip-verify -bool true
defaults write com.apple.frameworks.diskimages skip-verify-locked -bool true
defaults write com.apple.frameworks.diskimages skip-verify-remote -bool true
再也不用咔擦咔擦狂戳触摸板了,轻轻触摸就起到了点击的作用,非常优雅:
defaults write com.apple.AppleMultitouchTrackpad Clicking -int 1
defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -int 1
defaults write NSGlobalDomain com.apple.mouse.tapBehavior -int 1
开启这个功能后,我们可以用三个手指拖动非全屏窗口,改变他们的位置。主要靠这两行命令实现:
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerDrag -bool true
defaults write com.apple.AppleMultitouchTrackpad TrackpadThreeFingerDrag -bool true
这个目录默认是隐藏的,我们可以在不显示所有隐藏文件的前提下单独显示它:
chflags nohidden ~/Library
默认情况下系统禁止安装第三方的App,打开前也会有弹窗让用户确认,通过以下两行代码可以 绕过:
sudo spctl --master-disable
defaults write com.apple.LaunchServices LSQuarantine -bool false
很多时候系统的自动改正功能反而会帮倒忙,比如:
- 明明每行第一个字母我就是要小写,结果自动改成大写
- 有时候明明要输入普通的引号,
'
或者"
,结果被自动改成斜体的“
,导致各种解析错误 - 有时候输入两个连字符(dash)
--
被自动改成为长的(emdash)—
这些自动改正可以用以下命令来禁止:
defaults write -g NSAutomaticQuoteSubstitutionEnabled -bool false
defaults write -g NSAutomaticDashSubstitutionEnabled -bool false
defaults write -g NSAutomaticSpellingCorrectionEnabled -bool false