Amazon オーディブル2ヶ月無料キャンペーン中 5/9まで

【Python】zshでcondaコマンドを補完する

6 min

こんにちは。ナミレリです。みなさん、M1/M2のMacでPythonは使っていますか?

以前の記事でM1やM2などのApple Siliconを搭載したMacにAnacondaやMiniforgeをインストールする方法を紹介しました。今回はAnacondaやMiniforgeで使うcondaコマンドをzshで補完する方法を紹介していきます。この記事ではconda-zsh-completionを使ってcondaコマンドを補完します。

M1やM2などのApple Siliconを搭載したMacにAnacondaをインストールする方法は下記の記事をご覧ください。

M1やM2などのApple Siliconを搭載したMacにMiniforgeをインストールする方法は下記の記事をご覧ください。

この記事はこんな人にオススメ

  • condaをもっと便利に使いたい
  • condaコマンドを補完したい
  • conda activateで仮想環境名補完したい
  • condaコマンドがなかなか覚えられない
この記事のMac環境
  • M2 MacBook Air 13.6 インチMacBook Pro 14インチ M1Max
  • macOS Ventura 13.1
  • zsh 5.8.1 (x86_64-apple-darwin22.0)
  • prezto
Parallels 19 for Macの無料トライアル もありますので、ぜひダウンロードして試してみてください。M1/M2/M3のMac上で快適にMacやUbuntu、Windowsが動作します。
NEW Parallels Desktop 19 for Mac

Parallels Desktop 19 for Macは、M1/M2/M3のMac上で快適にMacやUbuntu、Windowsが動作します。

14日間の無料トライアルもありますので、ぜひダウンロードして試してみてください。

Mambaについて

condaコマンドと完全互換のあるmambaコマンドが便利です。

mambaは、condaの高速な代替として開発されたパッケージマネージャーです。C++で実装されておりcondaのパッケージリポジトリと完全に互換性があります。

より高速にパッケージ管理を行いたい方、CPUやメモリなどのリソースに制限がある環境で作業している方に特におすすめです。使い方は、普段のcondaコマンドをmambaコマンドに置き換えるだけです。オプションなども一緒です。

mambaのインストール方法


conda install -c conda-forge mamba

Amazonの読み放題・聴き放題

kindle unlimited 読み放題
200万冊以上が読み放題

Audible
12万以上の対象作品が聴き放題

Amazon オーディブル:2ヶ月無料キャンペーン中(5/9まで)→ 詳しくはこちら

この記事でできるcondaコマンドの補完

下の各キャプチャのように、conda-zsh-completioncondaコマンドをtabで補完してくれます。仮想環境名やコマンドのオプションも補完してくれるので便利すぎます。

condatabで補完

conda-zsh-completionはcondaコマンド補完
conda-zsh-completioncondaコマンド補完

conda activateに続く環境名もtabで補完してくれます。

conda activateで環境名を補完

conda configに続くオプションも補完してくれます。

conda configでオプションを補完

事前準備

この記事の環境はzshのフレームワークであるpreztoをインストールしています。気の利くエイリアスや関数、補完が設定されていて、カッコイイプロンプトのテーマが多数入っていますのでまだの方はぜひインストールしてみてください。

下の記事をご覧ください。

conda-zsh-completionのインストール

では早速、conda-zsh-completionをインストールしましょう。といってもgitcloneするだけです。

ディレクトリは任意ですがホームディレクトリでgit gloneします。


git clone https://github.com/esc/conda-zsh-completion

現在のディレクトリにconda-zsh-completionのディレクトリがcloneされます。


tree conda-zsh-completion
conda-zsh-completion
├── LICENSE.txt
├── README.rst
├── _conda
└── conda-zsh-completion.plugin.zsh

0 directories, 4 files

以前に紹介したexaコマンドでtree表示してみます。

exaコマンドでtree表示

カラフルでオシャレな表示を行うexaコマンドについては下の記事をご覧ください。

Amazonの読み放題・聴き放題

kindle unlimited 読み放題
200万冊以上が読み放題

Audible
12万以上の対象作品が聴き放題

Amazon オーディブル:2ヶ月無料キャンペーン中(5/9まで)→ 詳しくはこちら

conda-zsh-completionの設定

conda-zsh-completionの設定をします。といっても.zshrcに下記の記述を追加するだけです。


vi ~/.zshrc
fpath+=~/conda-zsh-completion
autoload -U compinit && compinit

ポイント

私の環境では、preztoの初期化の後にconda-zsh-completionの設定を追加することでうまく機能しています。


# Source Prezto.
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then
  source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh"
fi

# Customize to your needs...
# conda-zsh-completion
fpath+=~/conda-zsh-completion
autoload -U compinit && compinit

.zshrcを再読込します。


source ~/.zshrc

これでcondaコマンドの補完ができるようになります。

conda-zsh-completionのオプション

キャッシュを有効にする場合は下記を.zshrcに追加します。

zstyle ':completion::complete:*' use-cache 1

補完候補をグループ化するには下記を.zshrcに追加します。

zstyle ":conda_zsh_completion:*" use-groups true

仮想環境の候補を新しい順に表示したい場合は下記を.zshrcに追加します。

zstyle ":conda_zsh_completion:*" sort-envs-by-time true

仮想環境の候補をフルパスで表示するには下記を.zshrcに追加します。

zstyle ":conda_zsh_completion:*" show-unnamed true

注意したいこと

conda-zsh-completionの補完で補完候補の数が多いとCPUが張り付き動作が重くなりますconda infoで補完すると1万5千程度の補完候補となりフリーズしたかのようになってしまいますが、しばらく待つと補完候補を表示しますが気を付けたいですね。

次回以降はキャッシュされているので素早く補完候補が表示されます。

覚えておきたいcondaコマンド

condaには便利なたくさんのコマンドがあります。conda --helpで詳しく見ることができます。conda install --helpconda list --helpconda remove --helpのように各コマンドのヘルプも確認することができます。

ここでは最低限覚えておきたいcondaコマンドを紹介します。

conda環境の自動起動

ターミナルを起動した時にcondaの自動的をオフに設定する場合は下記のコマンドでauto_activate_basefalseに指定します。

自動起動をオフにする


conda config --set auto_activate_base false

~/.condarcに追加されたことを確認します。


cat ~/.condarc
channels:
  - conda-forge
auto_activate_base: false

condaの自動起動をオンにする場合は下記のコマンドです。

自動起動をオンにする


conda config --set auto_activate_base true

conda環境をアクティブ、非アクティブにする

conda環境をアクティブにするにはconda activateの後に環境名を指定します。環境名を指定しない場合はデフォルトのbaseという環境がアクティブになります。

base環境をアクティブにする


conda activate

アクティブにしたconda環境名がプロンプトに表示されます。

非アクティブにするにはconda deactivateです。

base環境を非アクティブにする


conda deactivate

conda環境の作成と削除

condaの仮想環境を作成するにはconda createコマンドを使います。-nオプションの後に作成する環境名を指定します。

conda環境の作成


conda create -n <環境名>

conda環境を削除するにはconda removeを使います。-nオプションの後に削除する環境名を指定し--allを付けます。

conda環境の削除


conda remove -n <環境名> --all

condaパッケージの検索

インストールしたいパッケージを検索するにはconda searchでパッケージ名を指定し検索します。Channelは先程指定したconda-forgeとなっています。

condaパッケージの検索


conda search numpy
Loading channels: done
# Name        Version           Build  Channel
numpy         1.23.5  py39hefdcf20_0  conda-forge         
numpy         1.24.0 py310h5d7c261_0  conda-forge         
numpy         1.24.0 py311ha92fb03_0  conda-forge         
numpy         1.24.0  py38h09ac2d9_0  conda-forge         
numpy         1.24.0  py39hefdcf20_0  conda-forge 

condaパッケージのインストールとアンインストール

パッケージをインストールするにはconda installでパッケージ名を指定します。

condaパッケージのインストール


conda install numpy

condaパッケージのアンインストール


conda uninstall numpy

インストール済のパッケージ一覧の表示

condaでインストールしたパッケージを表示するコマンドはconda listです。-nで仮想環境名を指定しその仮想環境でcondaでインストールしたパッケージを表示することもできます。

インストール済パッケージの一覧表示


conda list

ある仮想環境におけるインストール済パッケージの一覧表示


conda list -n <環境名>
 

conda環境の表示

conda環境詳細を表示するにはconda infoです。


conda info

condaの仮想環境の一覧を表示するにはconda info -eです。


conda info -e

最後に

最後まで読んでいただきありがとうございます。今回の【Python】zshでcondaコマンドを補完するはいかがでしたでしょうか。M1やM2などのApple Siliconを搭載したMacにAnacondaやMiniforgeをインストール済の方はcondaコマンドが補完されると便利になるのではないでしょうか。みなさんのMacライフを便利にしていただけたらと思います。

テックアカデミーで学ぶAIコース

\無料相談もできます/

テックアカデミーの特徴

現役エンジニアから学べるオンラインに特化したプログラミングスクール。
講師は全員、通過率10%の選考に合格した現役エンジニア
・確かなスキルをもとにマンツーマンサポート。
・900社、30,000名を超える教育実績

AIコースの概要

※受講料最大70%支給
AI(人工知能)の構築に必要な機械学習・ディープラーニングを習得
・1人では続かない方のためのパーソナルメンターがつく学習プログラム。
Pythonのライブラリを使い、機械学習の応用までを実践的に学ぶことができます。

こんな方にオススメ

・人工知能を実践的に理解したい方
・時間と場所にとらわれない働き方をしたい方
・機械学習ライブラリを使い実装を行いたい方
・機械学習を用いて起業したい方

人工知能に関するスキルを習得

回帰モデルの作成:プロ野球選手の年俸を予測(教師あり学習)
Amazonレビューを評価分析:対象商品の評価を判定(自然言語処理)
手書き数字の画像認識:手書き数字を画像認識する(深層学習)
オリジナルのAIの構築:公開されているデータセットを使って構築する

学べること

Python
scikit-learn
TensorFlow
Pandas
Keras

\無料相談もできます/

MacやLinux、Pythonなど技術系のkindle本も豊富にあります。詳しくはこちらから。

初めてkindle unlimited 読み放題をご利用の方は30日間の無料で体験できます。
期間終了後は月額980円で、いつでもキャンセルできます。
200万冊以上が読み放題。お好きな端末で利用可能です。

定番おすすめ記事

Macを使う景色が一変しMacの魅力をグッをアップさせるターミナルを活用する記事をまとめました。ぜひご覧ください。

関連記事