zshを入れてみた話

会社の先輩にzshを進められたのでArchに入れた話

インストール

[syguer@localhost ~]$ sudo pacman -S zsh
resolving dependencies...
looking for inter-conflicts...

Packages (1): zsh-5.0.2-2

Total Download Size:    1.61 MiB
Total Installed Size:   4.57 MiB

:: Proceed with installation? [Y/n] Y
:: Retrieving packages ...
 zsh-5.0.2-2-x86_64      1643.9 KiB   245K/s 00:07 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
(1/1) installing zsh                               [######################] 100%
[syguer@localhost ~]$ 

シェルの確認

[syguer@localhost ~]$ chsh --list-shells

/bin/sh
/bin/bash

/usr/bin/zsh
[syguer@localhost ~]$ 

ログインシェルの変更

[syguer@localhost ~]$ chsh -s /usr/bin/zsh
Changing shell for syguer.
Password: 
Shell changed.
[syguer@localhost ~]$

ここでterminalを開き直してみる

[syguer@localhost ~]$ echo $SHELL
/bin/bash
[syguer@localhost ~]$ 

あれ?
gnomeターミナルのデフォルトを変えなきゃいけないのかな?
と思ったがとりあえずリブートしたらいけた

localhost% echo $SHELL
/usr/bin/zsh
localhost% 

プロンプトが変わってるね
とりあえずこのサイトを参考に色々設定を入れてみる

プロンプト

PROMPT="[%n@%m]%B%(!,#,$)%b "
RPROMPT="[%d]"

結果はこんな感じ

[syguer@localhost]$                                              [/home/syguer]

右側にカレントディレクトリがでるようにしてみた

オプション

とりあえず参考サイトを元に下記の通り入れてみた

setopt hist_ignore_dups
setopt share_history
autoload -U compinit
compinit
setopt auto_cd
setopt auto_pushd
setopt correct
setopt list_packed

今んとこauto_cdとauto_pushdが便利
auto_cdはcdと入力しなくても直接ディレクトリ移動ができるってしろもの
auto_pushdは

cd -[TAB]

でcdの履歴がでてきて、履歴に飛べる
深くネストしたディレクトリで間違えてcdしてしまってホームに戻ってしまうってミスは誰もが
やったことあるのでは?
僕はしょっちゅうやってるのでこれは助かる
まだbashとの違いはそんなに感じないし、gvim入れてからターミナルほぼ使わなくなったんだが、
これからガシガシ使っていこうと思う