系统配置优化
触摸板控制优化,开启轻按点击功能
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
将 F1-F12 用做标准功能键
defaults write -globalDomain com.apple.keyboard.fnState -int 1
关闭 SIP
重启,按住 cmd+r
,进入恢复模式,实用工具-终端,执行
csrutil disable
关闭第三方程序验证
我们或多或少会下载某些破解版的应用,此时直接打开很可能被系统拒绝,或者报错:无法打开已损坏的安装包。我们可以通过命令行关闭这一保(限)护(制):
sudo spctl --master-disable
defaults write com.apple.LaunchServices LSQuarantine -bool false
关闭镜像验证
在打开 .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
完全键盘控制
很多操作都会弹出系统的对话框,要求我们确认或者取消,如果没有开启完全键盘控制,我们只能按回车键确认,或者移动鼠标选择取消。如果开启了完全键盘控制,只要按下空格键,就相当于选中蓝色边框的按钮。按下 Tab 键可以在多个按钮之间切换。
defaults write NSGlobalDomain AppleKeyboardUIMode -int 3
Finder 快速预览增强
需要先安装 brew
brew cask install qlcolorcode qlgradle qlmarkdown qlstephen qlvideo quicklook-json quicklookapk webpquicklook
Brew
*nix 都有自带的包管理,用于管理软件包之间的依赖,如 RHEL 的 yum
、Debian 的 apt
,Mac 本身没有自带的包管理,单有这个第三方的实现 —— HomeBrew
,一行命令安装:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装过程中需要输入密码并下载 Command Line Tools
,视网络情况快慢不一
更换镜像源
Brew 自带的镜像源位于国外,不挂代理可能会很慢,这里推荐更换国内的阿里云镜像源:
# 替换核心库:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
brew update
# 替换homebrew-bottles:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
安装命令行工具
基本的命令行工具可以直接用 brew install
安装,更多子命令直接执行 brew
即可查看:
brew install vim wget curl git
安装一般图形化软件
如微信、QQ 或是 Intellij Idea 等开发工具,也可以用 Brew 安装:
brew cask install wechat qq intellij-idea
查找
执行 brew search xxx
即可从软件源中查找,之后从结果列表中取名字安装即可,其中 Formulae
子项下的 brew install xxx
,Casks
子项下的 brew cask install xxx
Oh My Zsh
此处引官方描述:
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout...
简单说是对默认终端的一个功能增强,还是极大的增强,可以添加各种自定义主题插件等,一行命令安装:
brew install zsh
sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
注意使用 zsh 之后需要将以前 ~/.bash_profile ~/.bashrc 设置的环境变量等转移到 ~/.zshrc 中,例如上述的 echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
更多介绍和使用方法点击查看
这里推荐几个很好用的插件:Zsh Users
- 命令语法高亮
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
plugins=( [plugins...] zsh-syntax-highlighting)
- 命令自动补全
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
plugins=( [plugins...] zsh-autosuggestions)
其他开发环境
Node
版本管理
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | zsh
镜像
npm i -g mirror-config-china
配置所有中文镜像
Python
版本管理
brew install pyenv
pypi 镜像
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
Java、Kotlin、Scala、Maven、Gradle
版本管理
curl -s "https://get.sdkman.io" | zsh
镜像
Maven 使用阿里云镜像:
全局
vim ~/.m2/settings.xml
<settings>
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
</settings>
项目级
pom.xml
<repositories>
<repository>
<id>aliyunmaven</id>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</repository>
</repositories>
Gradle 使用阿里云镜像:
全局
vim ~/.gradle/init.gradle
allprojects {
repositories {
def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
all { ArtifactRepository repo ->
if(repo instanceof MavenArtifactRepository){
def url = repo.url.toString()
if (url.startsWith('https://repo1.maven.org/maven2')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
remove repo
}
if (url.startsWith('https://jcenter.bintray.com/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
remove repo
}
}
}
maven {
url ALIYUN_REPOSITORY_URL
url ALIYUN_JCENTER_URL
}
}
}
项目级
build.gradle
buildscript {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
}
Ruby
版本管理
brew install rbenv
镜像
# 添加 TUNA 源并移除默认源
gem sources --add https://mirrors.tuna.tsinghua.edu.cn/rubygems/ --remove https://rubygems.org/
# 列出已有源
gem sources -l
# 应该只有 TUNA 一个