zshにgitとdockerの入力補完を実装する

gitとdockerは毎日のように使うので入力補完ができると作業効率が良いです。

というわけでzshにgitとdockerの入力補完を実装しました。

前準備

補完スクリプトの保存先ディレクトリを作成します。

# ディレクトリの作成
mkdir -p ~/.zsh/completion

スクリプトのダウンロード

# gitの補完用スクリプトのダウンロード
curl -o ~/.zsh/completion/git-completion.bash https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash
curl -o ~/.zsh/completion/_git https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.zsh

# dockerの補完用スクリプトのダウンロード
curl -o ~/.zsh/completion/_docker https://raw.githubusercontent.com/docker/cli/master/contrib/completion/zsh/_docker

.zshrcの設定

.zshrcに下記を追記します。これで先のスクリプトがターミナル起動時に読み込まれます。

zstyle ':completion:*:*:git:*' script ~/.zsh/completion/git-completion.bash

# FPATHに`~/.zsh/completion`を追加
fpath=(~/.zsh/completion $fpath)

# シェル関数`compinit`の自動読み込み
autoload -Uz compinit && compinit -i

autoloadはファイルシステム上にある関数定義を自動で読み込むための関数。-Uは関数の内部でaliasを展開しないようにするオプション。

FPATHautoloadの探索先となるディレクトリです。

まとめ

gitとdockerの入力補完が効くようになりました。gitとdockerは毎日のように使うので、これで作業効率が良くなるのではないかと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください