Mac 终端配置(Mac OSX + iTerm2 + Zsh + Oh-My-Zsh)

我的 Mac 终端配置(Mac OSX + iTerm2 + Zsh + Oh-My-Zsh)

相关工具介绍

iTerm2:Mac 下 Terminal 终端的替代品,拥有更多强大的功能,想了解更多请戳 iTerm2 官网

zsh:Linux 的一种 shell 外壳,和 bash 属于同类产品;

Oh-My-Zsh:用来管理 zsh 的配置,同时还有很多社区贡献的主题配置以及好用的插件可供使用,了解更多请戳 Oh-My-Zsh 官网

配置方案总览

iTerm2 终端工具;

iTerm2 Solarized Dark Higher Contrast 配色方案

Monaco for Powerline 字体

zsh (Mac 系统自带,无需安装);

Oh-My-Zsh

Oh-My-Zsh powerlevel9k 主题

最终效果: 

具体配置步骤

1. 安装 iTerm2 终端工具:

打开 iTerm2 官网 直接点击 Download 下载并安装即可。

2. 安装 iTerm2 Solarized Dark Higher Contrast 配色方案

将该配色方案文件(Solarized Dark Higher Contrast.itermcolors)复制出来,保存到本地,文件命名为 SolarizedDarkHigherContrast.itermcolors ,然后双击即可安装。安装完后打开 iTerm2 终端,依次选择菜单栏:iTerm2 –> Preferences –> Profiles –> Colors –> Colors Presets –> SolarizedDarkHigherContrast,至此 iTerm2 Solarized Dark Higher Contrast 配色方案已成功安装。

3. 安装 Monaco for Powerline 字体

将该仓库克隆到本地,然后进入工程目录的 Monaco 目录,双击后缀名为 .otf 的字体文件即可完成该字体的安装。安装该字体的原因主要是为了和 Oh-My-Zsh 的 powerlevel9k 主题相兼容,如果不安装该字体,那么后面安装 powerlevel9kn 主题后会出现乱码。

# 该仓库中包含好几种优化后的字体gitclonehttps://github.com/supermarin/powerline-fonts.git

4. 安装配置 zsh:

zsh 一般 Mac 已经自带了,无需额外安装。可以用 cat /etc/shells 查看 zsh 是否安装,如果列出了 /bin/zsh 则表明 zsh 已经安装了。 

接下来修改 iTerm2 终端的默认 Shell,可以用 echo $SHELL 查看当前 Shell 是什么,如果不是 /bin/zsh 则用如下命令修改 iTerm2 的默认 Shell 为 zsh:

chsh-s/bin/zsh

5. 安装 Oh-My-Zsh

sh -c"$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

6. 安装配置 Oh-My-Zsh powerlevel9k 主题

克隆该仓库到 oh-my-zsh 用户自定义主题目录

git clone https://github.com/bhilburn/powerlevel9k.git~/.oh-my-zsh/custom/themes/powerlevel9k

1

修改 ~/.zshrc 配置文件,配置该主题

ZSH_THEME="powerlevel9k/powerlevel9k"

修改命令提示符 

默认的命令提示符为 user@userdemackbookPro,这样的提示符配合 powerlevel9k 主题太过冗长,因此我选择将该冗长的提示符去掉,在 ~/.zshrc 配置文件后面追加如下内容:

# 注意:DEFAULT_USER 的值必须要是系统用户名才能生效DEFAULT_USER="user"

简单定制下 powerlevel9k 主题 

powerlevel9k 主题的好处就是可以做很多自定义,只需要简单修改 ~/.zshrc 配置即可生效。更多关于该主题的定制请看 customizing-prompt-segments; 

默认的 powerlevel9k 主题最右侧显示的元素为:每条命令的执行状态,历史命令条数,当前时间,这样也比较冗余,我在这里将 历史命令条数 这一元素去掉,这样看起来比较简洁。这需要修改 ~/.zshrc 配置文件,在后面追加如下内容,定制该主题的显示元素:

# 设置 oh-my-zsh powerlevel9k 主题左边元素显示POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(context dir rbenv vcs)# 设置 oh-my-zsh powerlevel9k 主题右边元素显示POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs time)

配置 zsh 命令语法高亮

zsh-syntax-highlighting 插件可以使你终端输入的命令有语法高亮效果,安装方法如下(oh-my-zsh 插件管理的方式安装): 

Clone this repository in oh-my-zsh’s plugins directory:

git clonehttps://github.com/zsh-users/zsh-syntax-highlighting.git${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Activate the plugin in ~/.zshrc:

# 注意:zsh-syntax-highlighting 必须放在最后面(官方推荐)

plugins=( [plugins...] zsh-syntax-highlighting)

Source ~/.zshrc to take changes into account:

source~/.zshrc

8. 安装一些比较实用的 oh-my-zsh 插件

关于 oh-my-zsh 插件的管理是很简单的,有两个插件目录:

/Users/user/.oh-my-zsh/plugins: oh-my-zsh 官方插件目录,该目录已经预装了很多实用的插件,只不过没激活而已;

/Users/user/.oh-my-zsh/custom/plugins: oh-my-zsh 第三方插件目录;

需要安装哪个插件,只需要把插件下载到上面任何一个目录即可,然后在 ~/.zshrc 配置文件中的 plugins 变量中添加对应插件的名称即可,以下是我挑选的几个比较好用的插件(都是官方自带的,无需另外下载),~/.zshrc 配置文件如下:

# Add wisely, as too many plugins slow down shell startup.plugins=(  git  extract  z  zsh-syntax-highlighting )

git:oh-my-zsh 默认开启的,没什么好说的;

extract:通用的解压缩插件,可以解压缩任何后缀的压缩文件,使用方法很简单:x 文件名

z:很智能的目录跳转插件,能记录之前 cd 过哪些目录,然后模糊匹配跳转,不需要输入全路径即可跳转,使用方法:z dir_pattern

推荐阅读更多精彩内容