Good UX Life

人生のUXを高めるための知見

ZshでCargo, rustupの補完を有効にする

ZshでCargoとrustupの補完を効かせるようにします。

最低限の補完

.zshrcに以下を追加して補完機能を有効にします。

autoload -Uz compinit

compinit -u

Zsh補完の仕組み

zshは$fpath, $FPATHという環境変数を持っており、このパスに含まれる補完ファイルを読み込みます。
なので自分は~/.zsh/completionsを作りパスを通してここに補完ファイルをおいています。

パスの通し方は.zprofileに下記のコードを追加するとできます。

fpath=(~/.zsh/completions $fpath)

Cargoの補完

Cargoのzsh補完ファイルは

~/.rustup/toolchains/{toolchain名}/share/zsh/site-functions/_cargo

です。これをコピーするなりシンボリックリンク作るなりでパスの通っているディレクトリに移動しましょう。

rustupの補完

rustupは以下のコマンドを実行することで補完ファイルを作成することができます。(> 以下は自分のディレクトリを設定してください)

rustup completions zsh > ~/.zsh/completions/_rustup

以上でCargoとrustupの補完設定完了です。快適なRust Lifeをお送りください。

tips: shellの再起動コマンド

 exec $SHELL -l