zsh的自動完成輔助工具:oh-my-zsh
什么是Zsh
Zsh和bash一樣,是一種Unix shell,但大多數Linux發行版本都默認使用bash shell。但Zsh有強大的自動補全參數、文件名、等功能和強大的自定義配置功能。
替換Mac的bash
Zsh雖然功能強大,但剛上手配置比較麻煩。別擔心,Github已經有開源項目oh-my-zsh。按照官方的文檔安裝,非常簡單。
一、使用curl自動安裝
curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh
二、手動安裝
1.使用git clone 項目
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
2.備份~/.zshrc文件
cp ~/.zshrc ~/.zshrc.orig
3.創建新的zsh配置文件
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
4.設置zsh為默認shell
chsh -s /bin/zsh
5.重啟Terminal或新建一個Terminal就可以看到效果了
接下來配置適合自己Zsh
1.主題修改,我比較喜歡前面是$符號,所以選擇了steeef這款主題
$ vim ~/.zshrc
配置文件里找到:
ZSH_THEME="robbyrussell"
修改為:
ZSH_THEME="steeef"
這里是官方提供的各種主題,有截圖參考oh-my-zsh-themes
2.插件的選擇,支持git、brew、vi、osx等插件,具體請查看這里oh-my-zsh-plugins
3.按兩下tab會有驚喜,比如git
選擇oh-my-zsh
oh-my-zsh是基于zsh的功能做了一個擴展,方便的插件管理、主題自定義,以及漂亮的自動完成效果。
在Github上找關于zsh的項目時發現的,試用了一下覺得很方便,不用像上面文章里面提到的那么復雜,配置一些插件的名稱即可使用相應的功能。
官網:https://github.com/robbyrussell/oh-my-zsh
評價:https://github.com/robbyrussell/oh-my-zsh/wiki/Testimonials
截圖欣賞(Git插件):
再來一個自動完成:
定義hash快速進入目錄:
在~/.zshrc中定義:
hash -d blog="/home/henryyan/work/blog/henryyan.github.com"
安裝oh-my-zsh
進入Github的oh-my-zsh主頁 https://github.com/robbyrussell/oh-my-zsh ,在下面有詳細的安裝方式。
自定義主題
在 https://github.com/robbyrussell/oh-my-zsh/wiki/themes 里面有很多主題可以選擇,安裝后只需要修改~/.zshrc的ZSH_THEME為文件夾的名稱即可。
使用截圖的主題
剛剛的幾個截圖的主題是我基于robbyrussell修改的,添加了當前登錄用戶的名稱和主機名稱。
但是oh-my-zsh的作者太懶了,我在Github上Fork了項目然后提交我修改后的主題一直也沒有合并,如果喜歡的話可以直接Clone我的oh-my-zsh分支,然后使用手動安裝的方式安裝oh-my-zsh;
手動安裝完以后可以把當前的PATH變量設置到~/.zshrc中:
1
2
|
echo "export PATH=$PATH" >> ~/.zshrc source ~/.zshrc |
修改主題:
1
|
vi ~/.zshrc |
1
|
source ~/.zshrc |
自己修改主題
如果提供的主題沒有一個如意的(我就沒有看中一個),你可以參考別人主題截圖:https://github.com/robbyrussell /oh-my-zsh/wiki/themes 然后看一下對應的~/.oh-my-zsh/themes/foo 的源碼,然后根據自己的需要自定義,最后再修改一下~/.zshrc的ZSH_THEME配置就可以了。
啟用插件
在~/.oh-my-zsh/plugins/里面有很多插件可以選擇啟動,默認已經啟用git插件,如果你像我一樣是一個開發人員(Java),我的插件啟用如下:
1
|
plugins=(ant mvn svn git) |
Maven插件的截圖
工欲善其事,必先利其器,享受zsh帶給你的快捷吧。