DevTools Terminal は、ブラウザにターミナルのパワーをもたらす新しい Chrome DevTools 拡張機能です。アセットの pull ダウン、git、grunt、wget、vim の使用などのタスクで、Chrome とコマンドラインとの間でコンテキストを切り替える必要がある場合は、この拡張機能が便利です。


ブラウザでターミナルを使用する理由
開発中は、作成用のテキスト エディタ、テストとデバッグ用のブラウザ、パッケージの更新、ヘッダーの Curl、Grunt を使用したビルドプロセスなど、いくつかの異なるツールを使用していることでしょう。

開発中にツール間でコンテキストを切り替える必要がある場合、注意が散漫になり、非効率につながる可能性があります。以前、(特定のタイプのプロジェクトの場合)ブラウザを離れることなく、ワークスペースを使用して Chrome DevTools 内で直接コードをデバッグして作成する方法について説明しました。

DevTools ターミナル(Dmitry Filimonov 氏)は、同じウィンドウ内でコードの記述、デバッグ、ビルドを可能にします。タブ、Ctrl、さらには Git の色にもアクセスできるため、日々のワークフローで使用しているターミナルに慣れているように感じられます。
ワークフロー

Chrome で作成する私の個人的なワークフローは、次のようになります。
- DevTools ターミナルを使用して、GitHub リポジトリを
git clone
、新しいファイルをtouch
、yo (yeoman)
を実行してアプリを作成します。必要に応じて、新しいサーバーを起動してアプリをプレビューすることもできます。 - ワークスペース: Chrome 内でウェブアプリを編集、デバッグします。前にサーバーを起動した場合は、ローカル プロジェクトをネットワーク ファイルにマッピングできます。Sass または Less を使用して、CSS プリプロセッサの変更を CSS ファイルにマッピングできます。
- DevTools ターミナル: ソース管理に commit したり、パッケージ マネージャー(npm、bower)を使用して依存関係を pull したり、ビルドプロセス(grunt、make)を実行して同じアプリの最適化バージョンを生成したりできるようになりました。
- ウィンドウの配置に慣れるまでには時間がかかりますが、必要な作業のほとんどをブラウザ内で行えるのは便利です。

インストール
DevTools ターミナルは Chrome ウェブストアからインストールできます。Mac または Linux をご利用の場合は、Chrome に追加したら、[要素の検査] または Ctrl + Shift + I
で DevTools を開き、新しい [Terminal] タブからアクセスできます。Windows ユーザーは、Node.js プロキシを使用して拡張機能をシステム ターミナルに接続する必要があります。この設定を取得するには、npm から devtools-terminal
モジュールをインストールします。
npm install -g devtools-terminal
次に、新しいコマンドライン ウィンドウを開いて devtools-terminal
を実行します。次に、DevTools を開き、[Terminal] タブで、デフォルトの構成オプションを使用してサーバーに接続します。必要に応じて、ポートとアドレスをさらにカスタマイズできます。

制限事項
DevTools ターミナルには、注意すべき制限がいくつかあります。Mac の Terminal.app や iTerm2 とは異なり、タブ、複数のウィンドウ、履歴の再生はまだサポートされていません。ただし、Chrome の新しいタブは好きなだけ開くことができ、それぞれに独自の DevTools ターミナル インスタンスを設定できます。これは Chrome アプリ画面から行えます。

この拡張機能は現在 NPAPI に依存していますが、NPAPI はネイティブ メッセージング API に置き換えられて、今後 1 年間で段階的に廃止されます。DevTools ターミナルの作成者である Dmitry Fillimonov は、近い将来、NPAPI からこの API またはネイティブ クライアント API に移行する予定です。
まとめ
DevTools ターミナル(および Auxilio などの同様の拡張機能)を使用すると、開発中にエディタ、ブラウザ、コマンドラインとの間で切り替える必要がなくなります。ブラウザ内ターミナルは万人向けではありませんが、ワークフローを補完する便利な拡張機能としてお役立ていただけるかもしれません。ぜひお試しください。