霍格沃茨特快列车
Mkapakka's Hut
Mac下漂亮高效的终端美化|iTerm2 + ohMyZsh Stylish Terminal

好看是第一生产力!

image-20200407171537417

配置完后的终端

默认Terminal真的是太难看了!

original-terminal.jpg

反面例子(默认终端 + bash)

0. 安装Homebrew

已安装Homebrew的请直接略过

Homebrew是mac上知名的软件仓库,本文多处涉及到这个仓库的操作,如果你没有安装请:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

0.1. 软件源替换

安装完homebrew后可以修改软件源到国内镜像(譬如清华源、科大源)

这里提供一个清华源的替换方式,其他源可以自行Google

要替换的一共有两个:

0.1.1 Git repo 官方文档

# brew 程序本身,Homebrew/Linuxbrew 相同
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git

# 以下针对 mac OS 系统上的 Homebrew
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
git -C "$(brew --repo homebrew/cask-fonts)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask-fonts.git
git -C "$(brew --repo homebrew/cask-drivers)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask-drivers.git

# 以下针对 Linux 系统上的 Linuxbrew
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/linuxbrew-core.git

# 更换后测试工作是否正常
brew update

0.1.2. bottles(bintray) 官方文档

以下命令针对bash

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile

以下命令针对bash

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc

1. 新的Shell方案:ohMyZSH

macOS在前几个月前开始默认(建议)用户shell从bash改为zsh,在打开terminal的时候会提示是否切换。但我们这里还是要装更得劲的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… ——来自官网

1.1. 安装 oh-my-zsh

官网提供了两种安装流,自己按需选择嗷

一个非常非常basic的tip:$开头的是terminal命令,不要将$一并输入到terminal中

1.1.1. Via curl

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

1.1.2. Via wget

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

wget也可以通过homebrew安装:$ brew install wget

1.2. 设置默认shell

安装后会问你是否设置zsh为默认shell,

也可以手动设置

$ chsh -s /bin/zsh

1.3. 安装P9k

zsh的目的是为了装一套powerline theme

zsh有非常多好看的powerline theme,我选择powerlevel9k

接下来是安装的一些重要步骤。如果遇到其他问题请先阅读官方documentation

1.3.1. 安装Powerline Fonts

为了能舒服的使用这套主题(以及其他的powerline主题),需要装上powerline fonts

这里查看通过命令行安装的官方方式

或者手动安装,那么你需要下载字体的raw,一般直接在搜索引擎中输入powerline字体或powerline fonts就能找到相关字体,或者这里有官方字体库。

挑选自己喜欢的安装就好(拖动到Font Book里)

image-20200407173936655

实际上,官方提供了4种字体安装选项

点击这里查看

1.3.2. 安装Powerlevel9k

不同系统的安装instructions在这里,我们现在只考虑macOS下的安装。

通过Homebrew

不明白的直接看第二个:手动clone

先get homebrew tap

$ brew tap sambadevi/powerlevel9k

然后再安装

$ brew install powerlevel9k

可以指定版本进行安装,只需要改成[email protected]

执行完后会显示p9k的source,像这样:

$ brew install [email protected]
...
If you want to load powerlevel9k in your zsh simply add the following line to your .zshrc:

  source /usr/local/opt/[email protected]/powerlevel9k.zsh-theme

Alternatively you can run this command to append the line to your .zshrc

  echo "source /usr/local/opt/[email protected]/powerlevel9k.zsh-theme" >> ~/.zshrc

如上面的信息所示,再键入

echo "source /usr/local/opt/[email protected]/powerlevel9k.zsh-theme" >> ~/.zshrc

就可以修改zsh的默认主题

手动clone

先执行git clone

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

然后在~/.zshrc中手动修改默认theme

ZSH_THEME="powerlevel9k/powerlevel9k"

方法很多,推荐vim(狗头

修改完后你就能看到这样的Terminal了:

image-20200407180339475

还是很丑!

如果遇到乱码,乱七八糟的显示问题那一定是你的Fonts没有设置为Powerline Fonts,可以打开终端的Profiles进行设置,但考虑到接下来你将使用更漂亮的iterm2作为默认终端,这一步可以先不做。

我隐藏了用户名和主机,只需要在~/.zshrc中添加DEFAULT_USER=$USER

1.4. 新的Term方案:iTerm2

Google了一圈,最终还是确定使用iTerm2

可以在官网下载手动安装,但这里推荐使用Homebrew进行一键安装

$ brew cask install iterm2

1.4.1. 装上好看的Theme

接下来是放大招的时候了

https://github.com/spencerwooo/dotfiles (封面图也是这里来的)

在这里面挑选你喜欢的theme,我的是manta

把它下载出来,然后打开iterm2的Preferences(直接按下Cmd+,

接下来的步骤比较简单,不需要截图了

Profiles -> 选一个你自己的Profile,默认是Default -> 右下角的Color Presets中import刚才下载的配色文件

以上步骤操作完后可能还需要在Profile中选择Text进行Font的改变,选用合适的Powerline字体。

1.4.2. 设置小组件

这个设置不是很好找,在Profile中的Session下有一个小按钮Configure Status Bar

image-20200407182314191

我的设置是这样的

排序完后点一下Auto-Rainbow可以出现让各个组件出现多种颜色,更多的字体设置可以在Advanced...中找到

image-20200407230333900

设置完这个之后还不够,打开Appearance设置为如图所示laststep

1.4.3. Window Shadow

我记得默认情况下iterm2是关闭阴影的,想要在看见(或截图的时候带上)阴影,需要在Preferences中的Advanced设置Disable the window shadow为No

结束这些设置后一个漂亮的终端就配置完成了,还有更多(譬如Transparency)的设置可以自行调整!


Last modified on 2020-04-06