スポンサーリンク
技術関係

Macのターミナルでタブ補完を効かせて便利にする方法

こんな感じでタブを押してさくさく補完が効くようにします。

ターミナルと言ってますが、使ってるコマンドラインツールはiTerm2でやっていきます。

スポンサーリンク

環境情報

  • OS: macOS Catalina
  • シェル: zsh 5.8
  • iTerm2

最新のzshのインストール

homebrew経由で最新のzshをインストールして使えるようにします。

$ echo $SHELL
/bin/zsh

$ brew install zsh

$ sudo vi /etc/shells

$ chsh -s /usr/local/bin/zsh

$ echo $SHELL
/usr/local/bin/zsh

$ zsh --version
zsh 5.8 (x86_64-apple-darwin19.3.0)

ついでに「zsh-completions」も入れておきます。補完対応出来るものが増えます。
(上記の補完コマンドを見て不要だったら入れなくてもいいです)

$ brew install zsh-completions

~/.zshrcの記述

最後に「zsh」の設定ファイルを作成 or 編集します。

$ vi ~/.zshrc

 

下記を追記して保存します。最低限の設定です。

# 補完機能を有効にする
autoload -Uz compinit
compinit -u
if [ -e /usr/local/share/zsh-completions ]; then
  fpath=(/usr/local/share/zsh-completions $fpath)
fi

# 補完で小文字でも大文字にマッチさせる
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'

# 補完候補を詰めて表示
setopt list_packed

# 補完候補一覧をカラー表示
autoload colors
zstyle ':completion:*' list-colors ''

# コマンドのスペルを訂正
setopt correct

 

保存したらターミナルを開き直すか、下記コマンドを打ち込みます。

$ source ~/.zshrc

これでタブでの補完が効くようになったはずです。

zshのタブ補完でできること

  • ファイル名補完
  • 変数補完
  • ユーザ名・ホスト名補完
  • プロセス・ジョブ補完
  • 文脈追跡補完

上記の補完設定で大まかにこのような事ができます。

何故デフォルト設定で出来ないのかは謎ですが、一度使ったら手放せない機能です。

 

zshで究極のオペレーションを 第5回 zshの誇る花形機能“補完” / gihyo.jp 
https://gihyo.jp/dev/serial/01/zsh-book/0005?page=1

まとめ

と、いうことで簡単にzshのタブ補完の設定が終了しました。

タブ補完の設定項目は他にも色々あります。

自分の好みの設定にして使いやすい環境を整えましょう。

コメント

タイトルとURLをコピーしました