Sonatta: 生活小栈

iTerm2 配置详解——打造赏心悦目且易用的 Mac 终端

2022-02-06 · 6 min read
Mac

前言

说来惭愧,每每当我因为各种原因不得不重制电脑时,做好充分备份工作的我却一次又一次的忘记给 iTerm2 配置做备份,而这样的疏忽大意导致的后果——如果这也能称得上是后果的话——就是我不得不一次又一次的重新去网上找 iTerm2 的配置教程。终于,在我又一次忘了给 iTerm 做备份而不得不重复这个令我崩溃的步骤时,我决定写一篇配置教程以绝后患。

展示

考虑到人和人的审美毕竟还是不同的,所以我们废话少说,先上成品:

OK,如果你觉得这个最终效果符合你的审美的话,那么就继续往下看。

安装 iTerm2

当然,第一步是下载 iTerm2 并安装

配置

首先设置 iTerm2 为默认终端

将默认 Shell 换为 zsh

先查询系统中所有的 shell

cat /etc/shells

一般而言 Mac 的 Terminal 用的 Shell 是 bash,现在将其换成 zsh

chsh -s /bin/zsh

安装并配置 oh-my-zsh

安装 oh-my-zsh

oh-my-zsh 是一款基于 zsh 的,由社区驱动的命令行工具,我们接下来的很多配置要依赖其实现。

使用 curl 安装:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

或使用 wget 安装:

sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

如果你连不上 GitHub,也可以使用镜像站 https://gitee.com/mirrors/oh-my-zsh/blob/master/tools/install.sh 将上述安装方式的网址替换为这个即可。

修改主题

在 iTerm2 中输入 vim ~/.zshrc

找到 ZSH_THEME 一行,将其修改为 ZSH_THEME="agnoster"

当然,你也可以修改为其他主题,不过后续配置操作可能会有所不同。主题参考

这个主题需要加载特定的字体,点击下载 Meslo 字体,双击将字体安装至系统字体册。

打开 iTerm2 设置,Profiles -> Text -> Font,选择 Meslo LG M for Powerline,Regular,字号我这里选的是 12。

修改配色方案

下载 Solarized,解压。

还是在 iTerm2 的设置里,Profiles -> Colors -> Color Presets... -> Import

导入之前解压好的文件夹中的 Solarized Dark.itermcolors 文件,导入完成后并不会自动更换,需要手动选择更换。

安装自动命令提示插件

在 iTerm 2 中输入:

cd .oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

一目了然,这一步是为了将 zsh-autosuggestions 插件下载到 oh-my-zsh 到插件目录下。

输入 vim ~/.zshrc,找到 plugins 一行,默认是这样:

plugins=(git)

将其修改为:

plugins=(git zsh-autosuggestions)

到这里 zsh-autosuggestions 插件就已经安装完了,重启 iTerm2 即可生效。

PS:细心的朋友可能会发现自动命令提示有一些问题,我会在后文提供解决方案。

安装语法高亮插件

这里使用 Homebrew 安装 zsh-syntax-highlighting 插件,没装 Homebrew 的可以参考这篇文章安装:mac下高效安装 homebrew 及完美避坑姿势

brew install zsh-syntax-highlighting

安装完成后注意会提示一个命令,形如:

source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

然后还是 vim ~/.zshrc 打开配置文件,将刚刚提示的命令插入配置文件中。

输入命令加载插件:

source ~/.zshrc

给 Vim 及 ls 配色

配置 Vim 颜色

用 cd 命令移动到之前下载解压好的 solarized 文件夹的 /solarized/vim-colors-solarized/colors 目录,输入:

mkdir -p ~/.vim/colors 
cp solarized.vim ~/.vim/colors/

输入 vim ~/.vimrc 打开vim配置文件,插入以下三行配置:

syntax enable
set background=dark
colorscheme solarized

配置 ls 颜色

这部分就很简单了,老样子 vim ~/.zshrc 打开配置文件,插入:

export CLICOLOR=1
export LSCOLORS=exfxcxdxbxegedabagacad

注意将该命令置于底端,不然可能会被覆盖而无法正确执行
配色方案可自定义,具体来说就是通过修改 LSCOLORS 后的内容进行修改,想要自定义颜色的点这里

调整 iTerm2 及 Status Bar 设置

打开 iTerm2 设置,Profiles -> Session -> Miscellaneous,勾选底部的 Status bar enabled。

点击旁边的 Configure Status Bar

选择你想要添加的 Component,然后把底部的🌈Auto-Rainbow 选项设为自动。

接下来进入 Appearance 选项卡,在 General 中将 Theme 修改为 Minimal 以实现顶栏沉浸的效果,再将 Status bar location 选择为 Bottom,让其在底部显示。

可能还有写朋友记得我之前提到过自动命令提示有些问题,这里有一个小坑,即自动弹出的提示颜色和背景颜色完全一致,导致根本看不见命令提示,知道了问题所在解决起来就很简单了,直接在 Profiles -> Color -> ANSI Colors 中修改 Black 行 Bright 列的颜色即可。

但是——这里要说但是——请注意,Vim 的配色也是与之有关的,结果便是如果修改的颜色过于明亮就会导致在 Vim 中看不清字,这里我的解决方法比较简单粗暴,找了一个既能看得清也不至于遮挡字的颜色,我用的是 304243

到此为止所有的配置就结束了,有些配置可能需要重启 iTerm 才能生效,无论如何,enjoy it!

总结

说实话,一个简单的 iTerm2 配置,里面的坑还是有不少的,我也是有了前几次的经验才找到了一套相对好用的方案,从这个角度来说每次忘记备份配置也许不算坏事,但是我也不想再经历一次了,总之希望对你能有所帮助。

参考:

ITerm2配置-让你的mac命令行更加丰富高效

iTerm2 配置和美化

注:安装 iTerm2 一节中出现的图取自 iTerm2 官网,版权归 iTerm2 官方所有。