搞了一段时间,踩了很多坑,终于完成iTerm 2与oh my zsh的配合,过程曲折,其实仍是要找好资料,被很多资料坑到。。。。php
前言linux
不少人推荐用zsh,今天用上,配合oh-my-zsh,自定义强,更好用更酷炫。值得你花时间从bash转移到zsh,虽然过程当中遇到很多问题,但一切都是值得的,下面介绍一下还有避坑指南。git
第一github
首先要安装zsh,通常Mac系电脑已经安装好,但都要看一下shell
zsh
将会看到 zsh-newuser-install,新手向导将能够帮你完成一些最基本的配置。本人建议直接跳过,zsh的配置文件能够从oh-my-zsh中copy得来,没有必要本身去建立,并且没有经验的也不知道怎么配置。vim
在Mac系电脑中通常使用bash,没有安装zsh的话,经过homebrew安装(没有homebrew命令请自行Google解决):bash
brew install zsh
安装完成后,将zsh设置成系统默认shell,以代替bash。 用编辑器打开/etc/shells
,在末尾添加/usr/local/bin/zsh
,保存关闭。 在终端中执行如下命令:curl
chsh -s $(which zsh)
之后想转换成bash,只需将zsh改为bash再重启便可编辑器
重启以后,shell默认是zsh了,第一步完成字体
第二
安装oh-my-zsh,此时的zsh仍是最初始的样子,咱们要将其变成强大的终端,须要对其进行配置,为了让zsh产生想上面图片那样的效果,咱们须要安装oh-my-zsh。
oh-my-zsh有两种安装方式,推荐自动方式,在终端输入
curl -L http://install.ohmyz.sh | sh
若是有wget,能够用它
wget --no-check-certificate http://install.ohmyz.sh -O - | sh
通常状况下,oh-my-zsh已经安装完毕
第三
对zsh进行配置,这个十足坑,zsh的配置几乎都在~/.zshrc
下面,而打开时是用nano或者vim命令,由于是隐藏文件,命令应该是这样
vim .zshrc
nano同理,但因为没有经验,这个坑容易引起对人生怀疑,通常状况下,.zshrc已经有的,但有时也会没有要本身建立,这真是坑爹中的战斗机啊!通过我一番苦工搜索,终于找到办法,就是上面说的copy,执行以下命令:
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
利用oh-my-zsh的template文件就好了,以后能够对.zshrc文件修改,自定义本身喜欢的主题和功能
在~/.oh-my-zsh/themes
存在各式各样的主题文件,每一个主题的样子你能够经过这个网址进行查看,选好样式后,在.zshrc
中的ZSH_THEME设置成你所选用的主题。重启iTerm2,即可以看到相应的效果。这里建议使用agnoster,比较好看。
但这个只是半成品,想要达到上面的效果须要多作一些功夫
第四
补充,一、安装Powerline
在官网有教程,咱们只须要执行官网第一条安装指令就行,若是你的终端可以正常执行pip指令,那么直接执行下面的指令能够完成安装
pip install powerline-status
若是没有,则先执行安装pip指令
sudo easy_install pip
二、以后下载字体https://github.com/powerline/fonts
(1)、将工程下载下来后cd到install.sh
文件所在目录,(2)、执行指令安装字体库,执行./install.sh
指令安装全部Powerline字体
安装完成后提示全部字体均已下载到/Users/superdanny/Library/Fonts
路径下
三、接着设置iTerm2的字体
安装完字体库以后,把iTerm 2的设置里的Profile
中的Text
选项卡中里的Regular Font
和Non-ASCII Font
的字体都设置成 Powerline的字体,我这里设置的字体是12pt Meslo LG S DZ Regular for Powerline
四、最后搞一些配色
下载配色方案 https://github.com/altercation/solarized
进入刚刚下载的工程的solarized/iterm2-colors-solarized
下双击 Solarized Dark.itermcolors
和 Solarized Light.itermcolors
两个文件就能够把配置文件导入到 iTerm2 里,以后在load presets选择刚才安装的配色方案便可。
export ZSH_THEME="agnoster" DEFAULT_USER="sasuke6"
在.zshrc中能够设置default_user来减轻头名的臃肿。
通过一番功夫,你的iTerm瞬间不一样其余人,geek风格,若是想更进一步设置,能够参考如下连接
里面的配置方案足够丰富,有兴趣的同窗也能够尝试更多