zsh及其常用插件

作者: 凌杰_owlman | 来源:发表于2016-06-17 15:47 被阅读7618次

zsh可以被视为是对Bourne shell的一种扩展,完全兼容bash。它强大的自动补全功能对我还是非常有吸引力的。

总体来说,zsh的功能主要包括:

  • 开箱即用、可编程的命令行补全功能可以帮助用户输入各种参数以及选项。
  • 在用户启动的所有shell中共享命令历史。
  • 通过扩展的文件通配符,可以不利用外部命令达到find命令一般展开文件名。
  • 改进的变量与数组处理。
  • 在缓冲区中编辑多行命令。
  • 多种兼容模式,例如使用/bin/sh运行时可以伪装成Bourne shell。
  • 可以定制呈现形式的提示符;包括在屏幕右端显示信息,并在键入长命令时自动隐藏。
  • 可加载的模块,提供其他各种支持:完整的TCP与Unix域套接字控制,FTP客户端与扩充过的数学函数。
  • 完全可定制化。

安装zsh

在Linux中,我们可以:

    # 如果你用的是yum包管理器,将下面的apt-get替换成yum即可。
    sudo apt-get install zsh
    # 安装完成后,我们要讲默认的shell替换成zsh
    chsh -s /bin/zsh

在cygwin中,我们可以用cygwin安装器来安装zsh:


install_zsh.png

安装完成后,我们只需在~/.bash_profile文件的末尾添加一行exec zsh。然后重启终端即可。

安装oh-my-zsh

oh-my-zsh的源码是托管于github上的。所以,我们要先克隆该版本库中的代码:

    git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

然后,为谨慎起见,我们在安装之前应该先备份一下现有的zsh配置:

    cp ~/.zshrc ~/.zshrc.orig

现在,我们创建一个新的zsh配置文件:

    cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

如果你看到如下界面,说明安装完成。


cygwin_oh_my_zsh.png

安装zsh-syntax-highlighting插件

同样地,我们要先下载它的源码,但在这里,我们可以利用一下oh-my-zsh的插件管理功能:

    cd ~/.oh-my-zsh/custom/plugins
    git clone git://github.com/zsh-users/zsh-syntax-highlighting.git

然后,我们打开~/.zshrc文件,找到以下段落;

    # Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
    # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
    # Example format: plugins=(rails git textmate ruby lighthouse)
    # Add wisely, as too many plugins slow down shell startup.
    plugins=(git)

按照注释中的提示改成plugins=(git zsh-syntax-highlighting)即可。

安装autojump插件。

同样地,我们需要先下载源码:

    git clone git://github.com/joelthelion/autojump.git 

然后安装该程序:

    cd autojump
    ./install.py

最后,我们只需在~/.zshrc文件中加入以下代码即可。

    # install autojump
    [[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh

安装Powerline-Shell插件

其过程与autojump的安装基本相同,先下载源码:

    git clone https://github.com/milkbikis/powerline-shell

再安装:

    cd powerline-shell
    ./setup.py install 

最后再配置~/.zshrc文件,在其末尾加入如下代码:

# install powerline-shell
function powerline_precmd() {
    PS1="$(powerline-shell --shell zsh $?)"
}

function install_powerline_precmd() {
  for s in "${precmd_functions[@]}"; do
    if [ "$s" = "powerline_precmd" ]; then
      return
    fi
  done
  precmd_functions+=(powerline_precmd)
}

if [ "$TERM" != "linux" ]; then
    install_powerline_precmd
fi

然后在cygwin中,我们就看到如下最终效果:


myzsh.png

相关文章

  • zsh及其常用插件

    zsh可以被视为是对Bourne shell的一种扩展,完全兼容bash。它强大的自动补全功能对我还是非常有吸引力...

  • zsh

    zsh及其插件 Mac自带zsh,但默认使用bash 参考下文安装配置zsh及oh-my-zsh:GitHub -...

  • Iterm2-ohmyzsh-常用插件安装

    oh-my-zsh 常用插件 1 自动跳转Finder、终端语法高亮、终端自动补全 (autojump|zsh-...

  • Zsh 常用插件

    zsh有了各种插件后才真是如虎添翼,各种命令高亮,自动补全,命令参数辅助等。 zsh插件安装方法 各种插件的安装方...

  • 常用的zsh插件

    iterm2 + oh-my-zsh简直就是神器,各种主题插件,可以找到自己喜欢的,适合自己的。今天推荐几个我常用...

  • [zsh 配置] zsh命令自动补全插件

    zsh-autosuggestions自动补全插件 下载该插件到.oh-my-zsh的插件目录git clone ...

  • zsh oh-my-zsh 常用插件

    git 安装:默认已开启作用:可以使用各种 git 命令缩写。使用: 查看所有 git 命令缩写 autojump...

  • zsh 小妙招

    当然先得保证电脑安装有 zsh → 安装 zsh 传送门 绚丽的插件 oh my zsh 提供了很多插件,存放在 ...

  • tmux,oh-my-zsh linux必备工具

    zsh带有tmux提示需要加下zsh 推荐几个好用插件 zsh-history-substring-searchh...

  • mac下item2和oh-my-zsh搭建

    插件 zsh-autosuggestions-命令行补全+提示插件incr.zsh--运用:需要把下载的文件放到/...

网友评论

  • 梓华:请问下 git status 后面的内容 为什么是中文提示的
    凌杰_owlman:@梓华 cygwin版本的git有中文插件
  • 周宇盛:autojump插件貌似是oh-my-zsh自带的,直接添加到.zshrc的plugins=()里就可以了
  • Nitroethane:这主题好丑。。。我用的agnoster
    2c650920efe5:@Nitroethane 这个主题丑哭了的原因是po主powerline font没打patch

本文标题:zsh及其常用插件

本文链接:https://www.haomeiwen.com/subject/jnsvdttx.html