こんにちは。ナミレリです。みなさん、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コマンドがなかなか覚えられない
- M2 MacBook Air 13.6 インチ、MacBook Pro 14インチ M1Max
- macOS Ventura 13.1
- zsh 5.8.1 (x86_64-apple-darwin22.0)
- prezto
目次
Mambaについて
mambaは、condaの高速な代替として開発されたパッケージマネージャーです。C++で実装されておりcondaのパッケージリポジトリと完全に互換性があります。
より高速にパッケージ管理を行いたい方、CPUやメモリなどのリソースに制限がある環境で作業している方に特におすすめです。使い方は、普段のcondaコマンドをmambaコマンドに置き換えるだけです。オプションなども一緒です。
mambaのインストール方法
conda install -c conda-forge mamba
この記事でできるcondaコマンドの補完
下の各キャプチャのように、conda-zsh-completionはcondaコマンドをtabで補完してくれます。仮想環境名やコマンドのオプションも補完してくれるので便利すぎます。
conda+tabで補完
conda activateに続く環境名もtabで補完してくれます。
conda activateで環境名を補完
conda configに続くオプションも補完してくれます。
conda configでオプションを補完
事前準備
この記事の環境はzshのフレームワークであるpreztoをインストールしています。気の利くエイリアスや関数、補完が設定されていて、カッコイイプロンプトのテーマが多数入っていますのでまだの方はぜひインストールしてみてください。
下の記事をご覧ください。
conda-zsh-completionのインストール
では早速、conda-zsh-completionをインストールしましょう。といってもgitでcloneするだけです。
ディレクトリは任意ですがホームディレクトリで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コマンドについては下の記事をご覧ください。
conda-zsh-completionの設定
conda-zsh-completionの設定をします。といっても.zshrcに下記の記述を追加するだけです。
vi ~/.zshrc
fpath+=~/conda-zsh-completion
autoload -U compinit && compinit
# 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 --help、conda list --help、conda remove --helpのように各コマンドのヘルプも確認することができます。
ここでは最低限覚えておきたいcondaコマンドを紹介します。
conda環境の自動起動
ターミナルを起動した時にcondaの自動的をオフに設定する場合は下記のコマンドでauto_activate_baseをfalseに指定します。
自動起動をオフにする
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 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ライフを便利にしていただけたらと思います。
\無料相談もできます/
・現役エンジニアから学べるオンラインに特化したプログラミングスクール。
・講師は全員、通過率10%の選考に合格した現役エンジニア。
・確かなスキルをもとにマンツーマンサポート。
・900社、30,000名を超える教育実績
※受講料最大70%支給
・AI(人工知能)の構築に必要な機械学習・ディープラーニングを習得。
・1人では続かない方のためのパーソナルメンターがつく学習プログラム。
・Pythonのライブラリを使い、機械学習の応用までを実践的に学ぶことができます。
・人工知能を実践的に理解したい方
・時間と場所にとらわれない働き方をしたい方
・機械学習ライブラリを使い実装を行いたい方
・機械学習を用いて起業したい方
・回帰モデルの作成:プロ野球選手の年俸を予測(教師あり学習)
・Amazonレビューを評価分析:対象商品の評価を判定(自然言語処理)
・手書き数字の画像認識:手書き数字を画像認識する(深層学習)
・オリジナルのAIの構築:公開されているデータセットを使って構築する
・Python
・scikit-learn
・TensorFlow
・Pandas
・Keras
\無料相談もできます/
MacやLinux、Pythonなど技術系のkindle本も豊富にあります。詳しくはこちらから。
Amazonの電子書籍読み放題サービス「Kindle Unlimited」でプライム会員を対象に、最初の3か月間を無料体験できるキャンペーンを実施中。マンガ、小説、ビジネス書、雑誌など500万冊から、好きな本を何冊でも読めるキャンペーンです。
初めてkindle unlimited 読み放題をご利用の方は30日間の無料で体験できます。
期間終了後は月額980円で、いつでもキャンセルできます。
200万冊以上が読み放題。お好きな端末で利用可能です。