記事の目的
エクスプローラ上での右クリックからPython環境にパスが通ったコマンドプロンプトを開けるようにする方法を説明します、めちゃ便利です!
前提条件
導入環境
導入先PCの想定環境を整理する。
- OSはWindows10であること
- WinPythonがインストールされていること
(WinPythonについては後述する。なお筆者はWPy64-3860をインストールした) - PCに管理者権限が付与されていること(サラリーマンの方は気にするところのはず)
WinPythonとは
WinPythonは、Windows系に特化した科学技術系Pythonディストリビューションの一つである。同種でもっとも有名なディストリビューションではAnacondaが存在するが、2020年頃から大企業に対しては商用利用を有料化する方針となった。WinPythonはオープンソースで商用利用可能であるため、Anacondaからの移行先として最も有力な開発環境である(と筆者は思っている)。
導入は以下の公式サイトから Winpython64-X.X.X.X.exe(Xはバージョン)をダウンロードして
好みの場所(例えばC直下)などでダブルクリックして展開すればとりあえずOK。(詳細はまた別の記事にします)
WinPythonのコマンドプロンプトの従来の使い方
WinPythonのコマンドプロンプトとは、Python関係へのパスがロード済みのコマンドプロンプトを指す。たとえば「WinPython Command Prompt.exe」を実行することで開く。ここから、例えば「ipython」などのPythonコマンドが実行可能である。
自分の作業したいディレクトリに移動するには、ここから「cd XXXX」(XXXXは移動先のパス)などを実行する必要があった。これが地味にひと手間。
【本題】右クリックにWinPythonコマンドプロンプトを追加する
実施前の注意
レジストリを修正することになるので操作は慎重に行うこと。
設定方法
「コンピューター\HKEY_CLASSES_ROOT\Directory\Background\shell」の中に、新しいキーを追加して(「shell」を右クリックから)、名前を「winpythonPrompt」などに変更する。
左窓のいま作った「winpythonPrompt」を選択して右窓の「(限定)」値をダブルクリックして、値を「WinpythonPromptをここで開く」などとする。
左窓の「winpythonPrompt」を右クリックしてさらにキーを追加し、名前を「command」とする。
左窓のいま作った「command」を選択して右窓の「(限定)」値をダブルクリックして、値を「cmd.exe /K C:\WPy64-3860\scripts\env_for_icons.bat」とする。(WinPythonをC直下にインストールしていない場合は、env_for_icons.batの絶対パスを見直すこと。)
(P.S.(2022.06.12) Winpythonの後継のバージョンだと「コマンドの構文が誤っています。」の
エラーが出る(が一応使えはする)ようになった。いろいろ試した結果、
「env_for_icons.bat」ではなく「env.bat」が望ましいようだ)
設定結果の確認
エクスプローラ上で右クリックして、「WinpythonPromptをここで開く」が表示されることを確認し、これを選択すれば、エクスプローラ上のパスでコマンドプロンプトが開き、Python環境がロードされていることが確認できる。あら便利!!
ポイントのおさらい
今回の設定のポイントは以下の2つであった。
- WinPython環境をロードするためには、env_for_icons.batを実行してやればよいということ
(Anacondaの場合は「activate.bat」がこれにあたる) - レジストリを弄れば右クリックにアプリケーションの実行コマンドを登録できるということ
(P.S. (2022.06.12) Winpythonの後継のバージョンだと「コマンドの構文が誤っています。」の
エラーが出る(が一応使えはする)ようになった。いろいろ試した結果、
「env_for_icons.bat」ではなく「env.bat」が望ましいようだ)
参考にした情報
最後に(筆者について)
私事だが、今回記事が筆者のQiita初投稿である。筆者は宇宙関連製品の開発に従事する、いわゆる「ものづくりエンジニア」である。これから、特にものづくりの開発現場で活用できるようなちょっとしたTipsを発信していきたい。