メインコンテンツまでスキップ

GUIとIDEの設定

V8のソースコードはChromium Code Searchでオンラインで閲覧できます。

このプロジェクトのGitリポジトリは、他の多くのクライアントプログラムやプラグインを使用してアクセスできます。詳細については、使用するクライアントのドキュメントを参照してください。

Visual Studio Codeとclangd

VSCodeをV8用にセットアップする手順については、このドキュメントを参照してください。これが現在(2021年)推奨される設定です。

Eclipse

EclipseをV8用にセットアップする手順については、このドキュメントを参照してください。注意: 2020年現在、EclipseでV8をインデックス化するのはうまく動作しません。

Visual Studio Codeとcquery

VSCodeとcqueryは優れたコードナビゲーション機能を提供します。C++シンボルに対する「定義に移動」や「すべての参照を検索」機能を備えており、非常に良好に動作します。このセクションでは、*nixシステムで基本的なセットアップを行う方法を説明します。

VSCodeをインストール

好みの方法でVSCodeをインストールしてください。このガイドでは、コマンドラインでcodeコマンドを使用してVSCodeを実行できることを前提とします。

cqueryをインストール

cqueryをお好きなディレクトリにクローンしてください。このガイドではCQUERY_DIR="$HOME/cquery"を使用します。

git clone https://github.com/cquery-project/cquery "$CQUERY_DIR"
cd "$CQUERY_DIR"
git submodule update --init
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=release -DCMAKE_EXPORT_COMPILE_COMMANDS=YES
make install -j8

何か問題が発生した場合は、必ずcqueryの入門ガイドを確認してください。

後でcqueryを更新するには、git pull && git submodule updateを使用できます(cmake .. -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=release -DCMAKE_EXPORT_COMPILE_COMMANDS=YES && make install -j8で再ビルドするのを忘れないでください)。

VSCode用cquery-pluginをインストールして構成する

cquery拡張機能をVSCodeのマーケットプレイスからインストールします。V8チェックアウト内でVSCodeを開きます:

cd v8
code .

VSCodeの設定に移動します。例えば、ショートカットCtrl + ,を使用します。

以下の内容を適切にYOURUSERNAMEおよびYOURV8CHECKOUTDIRを置き換えてワークスペース構成に追加してください。

"settings": {
"cquery.launch.command": "/home/YOURUSERNAME/cquery/build/release/bin/cquery",
"cquery.cacheDirectory": "/home/YOURUSERNAME/YOURV8CHECKOUTDIR/.vscode/cquery_cached_index/",
"cquery.completion.include.blacklist": [".*/.vscache/.*", "/tmp.*", "build/.*"],
[]
}

compile_commands.jsonをcqueryに提供する

最後のステップは、cqueryにcompile_commands.jsonを生成することです。このファイルには、cqueryが使用するV8をビルドする際の特定のコンパイラーコマンドラインが含まれます。V8チェックアウト内で以下のコマンドを実行してください:

ninja -C out.gn/x64.release -t compdb cxx cc > compile_commands.json

このコマンドは、時間が経つにつれて新しいソースファイルをcqueryに教えるために再実行する必要があります。特に、BUILD.gnが変更された後、常にコマンドを再実行する必要があります。

他の便利な設定

Visual Studio Codeの括弧の自動閉じ機能はあまりうまく動作しません。この機能は以下で無効化できます。

"editor.autoClosingBrackets": false

ユーザー設定で無効化します。

以下の除外マスクは、検索時に不要な結果を避けるのに役立ちます (Ctrl+Shift+F):

"files.exclude": {
"**/.vscode": true, // これはデフォルトの値です
},
"search.exclude": {
"**/out*": true, // これはデフォルトの値です
"**/build*": true // これはデフォルトの値です
},