Mac切换Terminal为zsh

下载一个 .oh-my-zsh 配置
1
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
创建新的配置
1
2
cp ~/.zshrc ~/.zshrc.orig                                   # 如果已经有一个 .zshrc 文件,备份一下
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
更新新的配置文件

如果有些环境变量配置在~/.bash_profile的话,需要在新的配置里进行刷新

1
vim ~/.zshrc
1
2
3
4
5
6
7
8
...
export ZSH=~/.oh-my-zsh/
...
ZSH_THEME="ys" # 设置选择的主题。默认是robbyrussell
...
...
source $ZSH/oh-my-zsh.sh
...

并且把老的环境变量文件中的设置项拷贝到该文件中。
因为大多数情况下直接在~/.zshrc中使用source ~/.bashrc来初始化老的环境变量,会有一些不知名的报错。

优化 terminal 样式
切换 Terminal 到 zsh
方法一
1
chsh -s /bin/zsh

ubuntu下如果不存在zsh的话,需要安装一下:

1
sudo apt-get install zsh

重启一下 Terminal 之后,就生效了。

方法二

编辑/etc/passwd文件,修改如下字段

1
2
3
...
taoyi:x:500:500::/home/taoyi:/bin/zsh # 把对应用户下,原来的 /bin/bash 改成新的 /bin/zsh
...
效果如图
如果使用 fino-time 主题

如果使用该主题的话,会遇到一个错误:

1
2
3
zsh: command not found: rvm-prompt
╭─taoyi at TaoYi-Mac in ~ using ‹› 17-05-18 - 20:44:28
╰─○

每次一条命令前都会有这条报错。
主要原因就是该主题依赖于rvm-prompt,这样的话,就需要安装上该组件。
安装步骤:

1
brew install gnupg gnupg2
1
2
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
\curl -sSL https://get.rvm.io | bash -s stable

~/.zshrc文件中加入支持:

1
alias rvm-prompt=$HOME/.rvm/bin/rvm-prompt

这样后,就完美了,不会再有这个报错了。

安装第三方插件
  1. 安装zsh-syntax-highlighting插件,文本高亮
    1
    2
    cd ~/.oh-my-zsh/plugins/
    git clone git://github.com/zsh-users/zsh-syntax-highlighting.git

然后编辑环境变量文件~/.zshrc,在其中加入插件名称

1
2
# plugins=(git)
plugin=(git zsh-syntax-highlighting)
  1. 安装zsh-autosuggestions插件,历史输入自动补全
    1
    2
    cd ~/.oh-my-zsh/plugins/
    git clone git://github.com/zsh-users/zsh-autosuggestions.git

然后编辑环境变量文件~/.zshrc,在其中加入插件名称

1
2
# plugins=(git)
plugin=(git zsh-autosuggestions)