zsh的自动完成辅助工具:oh-my-zsh

jopen 10年前

什么是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插件):

zsh的自动完成辅助工具:oh-my-zsh

再来一个自动完成:

zsh的自动完成辅助工具:oh-my-zsh

定义hash快速进入目录:

在~/.zshrc中定义:

hash -d blog="/home/henryyan/work/blog/henryyan.github.com"

zsh的自动完成辅助工具:oh-my-zsh

安装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
修改 ZSH_THEME为kafeitu,
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的自动完成辅助工具:oh-my-zsh

工欲善其事,必先利其器,享受zsh带给你的快捷吧。