Eclipse CDTにおすすめの設定10選

Eclipse CDT(C/C++ Development Tooling)はそのままでも十分便利なIDEですが、設定を変えることでもっと便利に使うことができます。本記事ではおすすめの設定をご紹介します。

EclipseベースのAtollic TrueSTUDIO・SW4STM32・GNU MCU Eclipse等でも同様の設定ができるので参考になさってください。

1.行番号を表示

基本的なところからいきましょう。まずは行番号の表示を有効化です。

コンパイルエラーの時に特に便利で、エラーが発生した行数がわかりやすくなります。

 

  • Eclipseのメニュー→Window→Preferencesで設定ウィンドウを開いてください(以降、重複するので省略します)
  • 設定ウィンドウの左メニューのGeneral→Editors→Text Editorsをクリックしてください
  • 『Show line numbers』にチェックを入れてください

 

行数表示の設定

 

2.コードのフォーマット

コードのフォーマットを適切に設定して、コードを見やすい状態に維持しましょう。

 

  • 設定ウィンドウの左メニューのC/C++→Code Style→Formatterをクリックしてください
  • Active Profileにフォーマットがいくつかあるので、一番好みに近いものを選び、Edit…ボタンをクリックしてフォーマット編集画面を開いてください
  • 細かく設定が変えられるので好みに合わせて編集してください。
  • おすすめの設定はTab PoicyにSpaces Onlyを選択することです。タブは環境によって表示が変わるので、タブを使わずスペースだけを使う人も多いです。
  • すでに登録されているフォーマット(Profile)は上書き保存できないので、Profile nameも適当に変更してください。

 

コードのフォーマット設定

 

3.ソースフォルダをツリー表示

これはプロジェクトが大きくなってきて、プロジェクトエクスプローラ内に大量のソースフォルダが表示されてしまい見辛くなった時に便利な設定です。

階層構造になっているソースフォルダはツリー構造に表示できるようにできます。普段はツリーを閉じておくことでプロジェクトエクスプローラがすっきりした見た目になります。

 

ソースフォルダのツリー表示

 

  • 設定ウィンドウの左メニューのC/C++→Appearanceをクリックしてください
  • Show source roots at top of projectのチェックを外してください

 

ソースフォルダの設定

 

4.Doxygenを簡単に

DoxygenはC/C++のドキュメント生成ツールのデファクトスタンダートとなっており、お使いの方も多くいらっしゃると思います。とても便利なDoxygenですが手書きで書くのはけっこうしんどいです。

 

ここではDoxygenのコメントの記述を楽にするための設定をご紹介します。

 

4-1.ドキュメント生成ツールの選択

まずはドキュメント生成ツールの設定をDoxygenに変更しましょう。変更しておけば、下記の用に関数の真上で『/**』と入力した後にEnterを押すと、自動的にDoxygenのコメントが生成されるようになります。

 

Doxygenの自動生成

 

  • 設定ウィンドウの左メニューのC/C++→Editorをクリックしてください
  • Workspace defaultでDoxygenを選択してください

 

Doxygenの有効化

 

4-2.コードテンプレートを編集

ソースファイルやヘッダファイルを生成した時に、Doxygenのコメントが自動生成されていると便利です。コードテンプレートにDoxygenのコメントを追加しておきましょう。

 

下記は私の設定例です。こちらを参考に好みに合わせて編集してください。

 

ソースファイルとヘッダファイルの先頭部分は共通にできるので、下記のコメントを先に登録しておきます。

 

  • 設定ウィンドウの左メニューのC/C++→Code Style→Code Templatesをクリックしてください
  • Code Templatesの中のComments→Filesを選択してください

 

コードテンプレートのfilecomments

 

  • Editボタンをクリックして下記のコメントを登録してください。

 

/**
* @file ${file_name}
* TODO
* @since TODO
* @date ${date}
* @author ${user}
*
* Copyright (c) ${year} yukblog. All rights reserved.
*/

 

次にソースファイルのテンプレートを作成します。

 

  • 設定ウィンドウの左メニューのC/C++→Code Style→Code Templatesをクリックしてください
  • Code Templatesの中のFile→C Source File→Default C source templateを選択してください(C++の場合は、File→C++ Source File→Default C++ source template)

 

コードテンプレートCソースファイル

 

  • Editボタンをクリックして下記のテンプレートを登録してください。(これはC言語用のサンプルです。)

 

${filecomment}

#include <${file_base}.h>

/**
* @addtogroup ${project_name}
* @{
*/

/**
* @addtogroup ${file_base}
* @{
*/

/**
* @addtogroup ${file_base}-Type
* @{
*/

/**
* @}
*/

/**
* @addtogroup ${file_base}-Macro
* @{
*/

/**
* @}
*/

/**
* @addtogroup ${file_base}-Function
* @{
*/

/**
* @}
*/

/**
* @}
*/

/**
* @}
*/

 

『${filecomment}』の部分に先ほど登録したファイルの先頭部分のコメントが挿入されます。

『#include <${file_base}.h>』はDoxygenと関係ありませんが、ヘッダファイルのインクルードを自動生成しています。

それ以降の『@addgroup』などはお好みでどうぞ。

 

ヘッダファイルも同様の手順で登録できます。お好みに合わせて設定してください。設定する場所は、Code Templatesの中のFile→C Header File→Default C header templateです。

 

5.コンテンツ・アシスト

コンテンツ・アシストはスマホの予測変換に似た機能です。単語を途中まで入力すると候補をいくつか提案してくれるので、高速にコーディングができるようになります。

 

コンテンツ・アシスト

 

5-1.自動起動のディレイタイム

構造体のメンバなどは『.』や『->』を入力するとコンテンツ・アシストが自動的に起動してくれます。この起動するまでのディレイタイムがデフォルトだと長めなので、短くしましょう。

 

  • 設定ウィンドウの左メニューのC/C++→Editor→Content Assistをクリックしてください
  • Delay (ms)の値を変更してください。参考までに私は100にしています。

 

コンテンツ・アシストのディレイタイム

 

5-2.手動起動のキーバインド

関数の名前なども、途中まで入力したらコンテンツ・アシストを起動したいですよね。デフォルトでは『Ctrl+Shift』で起動できます。

キーバインドを変えることもできるのでお好みに合わせて変更してください。

 

  • 設定ウィンドウの左メニューのGeneral→Keysをクリックしてください
  • content(日本語ならコンテンツ)でフィルタをかけて、Content Assisy(コンテンツ・アシスト)を探してください
  • お好みのキーバインドを設定してください

 

6.単語補完

単語補完はコンテンツ・アシストに似ていますが、こちらは候補は表示されずキーを押す度に次々と変換されていきます。使いやすい方を適時使っていきましょう。

デフォルトでは『Alt+/』にキーバインドされています。

 

7.ビルド前に自動保存

複数のソースファイルを変更した後にビルドしたけど、変更が反映されていないなんてことがあります。大抵はファイルの保存し忘れが原因です。保存し忘れを避けるためにビルド前に自動保存してくれるように設定しておきましょう。

 

  • 設定ウィンドウの左メニューのGeneral→Workspace→Buildをクリックしてください
  • Save automatically before buildにチェックを入れてください

 

ビルド前に保存

 

8.ビルドコンソールの出力の行数を増やす

ビルド時のエラーは非常に重要な情報です。デフォルトだとビルドコンソールに出力される最大行数が500行程度とちょっと心許ないです。場合によっては出力の始めの方は見えなくなってしまう可能性があります。

出力の行数を増やしてエラーが出ても消えないようにしておきましょう。

 

  • 設定ウィンドウの左メニューのC/C++→Build→Consoleをクリックしてください
  • Limit console output (number of lines)を例えば5000に変更してください

 

ビルドコンソール

 

9.インデクサのアクティブビルド

Eclipse CDTのインデクサは非常に強力です。しかし、インデクサとコンパイラの整合が取れなくなることがあり、コンパイルは成功してるけどエディタ上ではエラーになっている、といったことがあります。これは何かしらの設定変更をした後に起こりやすく、インデクサに設定変更が反映されていないために起きます。次の設定をしておくとこの現象が改善します。

 

  • 設定ウィンドウの左メニューのC/C++→Indexerをクリックしてください
  • Build configuration for the indexerのところで、Use active build configurationを選択してください

 

インデクサのアクティブビルド

 

10.デバッグボタンで必ず前回のデバッグを実行

通常はタイトル通りに動くのですが、たまにEclipseがどれを実行したらよいかわかりません、といった旨のメッセージを出して自動実行してくれないことがあります。

デバッグ実行は常に前回と同じものの方が便利なので、これを強制してしまいましょう。

 

  • 設定ウィンドウの左メニューのRun/Debug→Launchingをクリックしてください
  • Launch Optionのところで、Always launch the previously lanched applicationを選択してください

 

前回のデバッグを起動