Heroku CLI のオートコンプリート
この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。
最終更新日 2023年03月13日(月)
Heroku CLI のオートコンプリートは、Tab キーを押したときにコマンド名やフラグ名を完了するのに役立ちます。CLI のオートコンプリートでは、Heroku CLI のすべてのコマンドが完了され、追加された新しいコマンドは自動的にサポートされます。また、一部のフラグや引数 (アプリ、パイプライン、環境設定を含む) の値を完了することもできます。
オートコンプリートのインストール
作業を開始するには、CLI を更新し、セットアップを実行します。
$ heroku update
$ heroku autocomplete
CLI のオートコンプリートが正しく機能するには、最新バージョンの Heroku CLI を使用している必要があります。最新バージョンへの更新は、上記の手順に含まれています。
Homebrew 経由で CLI をインストールし、Homebrew の完了経由でオートコンプリートを使用する場合は、手順に従って Homebrew 経由で CLI をアップグレードしてください。
受け取る具体的な手順は、bash または zsh のどちらを使用しているかによって異なります。セットアップを完了したら、オートコンプリートが Tab キーですぐに使用できます。
現時点では、bash と zsh 以外のシェルをサポートする予定はありません。
コマンド名の完了
コマンドを入力し始めた後に、Tab キーを押して、それを完了するためのさまざまな可能性を確認できます。特定のプレフィックスに一致するすべてのコマンドとマッチさせることができます。
$ heroku <TAB>
addons -- lists your add-ons and attachments
addons:attach -- attach add-on resource to a new app
addons:create -- create an add-on resource
...
たとえば、heroku add
を入力した後に Tab キーを押すと、heroku addons
にオートコンプリートされます。
bash シェルでは、Tab キーを 2 回連続して押すと、オートコンプリートがトリガーされます。
フラグ名の完了
ほとんどの CLI コマンドでは、フラグを使用して追加の入力を指定します。フラグの前には 2 つのダッシュ (--
) が付いています (--app
など)。一部のコマンドでは多くの異なるフラグが考えられます。--
を入力した後に Tab キーを押すことによって、各コマンドで使用可能なすべてのフラグを表示できます。特定のプレフィックスに一致するすべてのフラグ名とマッチさせることができます。
$ heroku apps:info --<TAB>
--app -- (autocomplete) app to run command against
--as -- name for add-on attachment
たとえば、heroku apps:info --a
を入力した後に Tab キーを押すと、heroku apps:info --app
にオートコンプリートされます。
フラグ値の完了
ほとんどのフラグでは、値を指定する必要があります。たとえば、--app
では、アプリの名前を指定する必要があります。オートコンプリートを使用すると、多くの一般的なフラグ (--app
、--pipeline
、--space
、--team
など) の値を完了できます。
$ heroku apps:info --app=<TAB>
staging-app
production-app
たとえば、上の出力に示されている 2 つのアプリがある場合は、次を入力した後に Tab キーを押すと、
heroku apps:info --app=p
次のようにオートコンプリートされます。
heroku apps:info --app=production-app
すべてのフラグにオートコンプリートオプションがあるわけではありません。このオプションがあるフラグには、フラグ名のオートコンプリート中に (autocomplete)
のタグが付けられます。例については、「フラグ名の完了」を参照してください。
環境設定とアドオン名の完了
CLI でアプリが認識されている場合は、環境設定やアドオン名を完了できます。CLI が Git リモート経由でアプリを推測することも、フラグでアプリ名を指定することもできます。CLI が完了の方法を知るにはコンテキストが必要になるため、これらの種類の完了は “コンテキスト依存の完了” と呼ばれます。
オートコンプリートのアンインストール
オートコンプリートをアンインストールするには、プラグインを削除し、zsh または bash プロファイルからオートコンプリート環境変数を削除します。
$ heroku plugins:uninstall autocomplete