zsh 在 Linux 系统中是自带的,因此不这里并没有讨论 zsh 自身的安装方法,而是 zsh 插件的安装与配置方法。

zsh 的常用快捷键

  1. 虽然网络上都宣称 zsh 和 bash 高度解决,不过我个人的理解,bash 的部分快捷键和 csh 倒是比较接近,而 zsh 并不接近。

    项目 zsh bash 备注
    光标移动到行首 Ctrl + A Home
    光标移动到行尾 Ctrl + E End
    光标后的字符串变为大写 Alt + U
    当前字符串大写 Alt + C
    光标后的字符串变为小写 Alt + L
    删除光标所有字符 Clt + K
    删除光标所有字符 Clt + H Clt + U Ctrl + U 对 bash 来说是删除光标前的字符,而 zsh 是整行删除。
    删除光标一个单词 Ctrl + W
    删除光标一个单词 Alt + D
    删除光标当前一个字符 Ctrl + D
  2. CTRL + R: 搜索历史

插件的安装与配置

  1. 安装 zsh-syntax-highlighting 语法提示插件(当用户输入正确命令时指令会绿色高亮,错误时命令红色高亮)

    su - herc
    cd ~/.zsh
    git clone git://github.com/zsh-users/zsh-syntax-highlighting.git
    vim .zshrc
        source /home/herc/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
  2. 安装 zsh-autosuggestions 命令历史自动提示插件

    zsh
    su - herc
    cd ~/.zsh
    
    mkdir .zsh
    cd .zsh
    bash --version
    zsh --version
    git clone https://github.com/zsh-users/zsh-autosuggestions
    source zsh-autosuggestions/zsh-autosuggestions.zsh
        #完成该步骤后,即可对历史输入命令进行自动语法提示。
        # 如果存在过多参数时,仍然可以使用 tab 强制提示。
        # 系统内置的命令,如 tar 不能提示参数,不过 yum 可以提示参数、ls 需要强制 tab 才能提示参数
  3. 安装 incr 系统目录自动提示插件

    su - herc
    cd ~/.zsh
    wget https://mimosa-pudica.net/src/incr-0.2.zsh
    source incr*.zsh
        # 当前有效,配置到~/.zshrc则用户一直有效( 使用时将自动以绿色表示提示词)
        # 不过按回车就会输入绿色部分,网友说可以使用空格隔断或 delete 键删除,测试无效;建议使用 Ctrl + K 删除末尾后回车!