Qt Creator をインストールしたらまずやること

# はじめに

みなさん、Qt Creator 便利に使っていますか？

インストールしたら、まず不必要なプラグインを無効化しましょう。これにより、起動や通常動作が微妙に早くなります。

# プラグインの一覧

インストール直後にデフォルトで有効になってそうなものを以下にまとめました。

Qt Creator 13.0.2 の商用版を元にしていますので、オープンソース版の場合は多少差異があるかもしれません。

## Build Systems

|プラグイン名|説明|必要性|
|--|--|--|
|CMakeProjectManager|CMake support.|CMake を利用している場合|
|GenericProjectManager|Generic support.|[Import Exisitng Project](https://doc.qt.io/qtcreator/creator-project-generic.html) を利用する場合|
|IncrediBuild|Support for Incredibuild.|[IncrediBuild](https://www.incredibuild.com/ja/)を利用する場合|
|QbsProjectManager|QBS support.|[Qbs](https://www.qt.io/ja-jp/blog/2018/10/30/deprecation-of-qbs)を利用する場合|
|QmakeProjectManager|Provides project type for Qt/QMake .pro files and tools.|qmake を利用する場合|
|QtSupport|Provides support code for build systems.|Qt で開発する場合|

私は、GenericProjectManager と、IncrediBiuld と、QbsProjectManager は無効にしています。

## C++

|プラグイン名|説明|必要性|
|--|--|--|
|ClangCodeModel|Clang Code Model plugin.|[Clang を利用したコードモデル](https://doc.qt.io/qtcreator/creator-clang-codemodel.html) を利用する場合|
|ClangFormat|clang-format indentation plugin.|コードの整形に [ClangFormat](https://clang.llvm.org/docs/ClangFormat.html) を利用する場合|
|ClassView|Class View component.|[クラスビュー](https://doc.qt.io/qtcreator/creator-class-view.html) を利用する場合|
|CppEditor|C/C++ editor component.|C++ を利用する場合|

私は、ClassView は無効にしています。

## Code Analyzer

|プラグイン名|説明|必要性|
|--|--|--|
|ClangTools|ClangTools Plugin.|[Clang のツール](https://doc.qt.io/qtcreator/creator-preferences-analyzer-clang-tools.html) で解析をする場合|
|CtfVisualizer|Chrome Trace Format Visualizer Plugin.|[Chorme Trace Format](https://doc.qt.io/qtcreator/creator-ctf-visualizer.html) 形式ファイルを可視化をする場合|
|PerfProfiler|Perf Profiler Plugin.|[perf を用いた CPU の解析](https://doc.qt.io/qtcreator/creator-cpu-usage-analyzer.html) をする場合|
|Valgrind|Valgrind Plugin.|[Valgrind を用いたコードの解析](https://doc.qt.io/qtcreator/creator-valgrind-overview.html) をする場合|

私は、CtfVisualizer は年に１回くらいしか利用しないので普段は無効にしています。

## Core

|プラグイン名|説明|
|--|--|
|Help|Help system.|
|ProjectExplorer|ProjectExplorer framework that can be extended with different kind of project types.|
|TextEditor|Text editor framework and the implementation of the basic text editor.|
|Welcome|Secondary Welcome Screen Plugin.|

ここは基本的にはすべて有効でいいと思います。

## Device Support

|プラグイン名|説明|必要性|
|--|--|--|
|Android|Support for deployment to and execution on Android Devices.|Android 向けの開発をする場合|
|Qnx|Adds support for QNX to Qt Creator.|QNX 向けの開発をする場合|
|RemoteLinux|Support for deployment to and execution on a remote Linux host.|Rapsberry Pi などの開発をする場合|

私は、普段はすべて無効にしていて、RemoteLinux はたまに有効にして使っています。

## Modeling

|プラグイン名|説明|必要性|
|--|--|--|
|ModelEditor|Graphical modeling with structured diagrams.|[UML 形式のモデル](https://doc.qt.io/qtcreator/creator-modeling.html) を利用する場合|
|ScxmlEditor|Visual Editor for SCXML (State Chart XML) files.|[SCXML 形式のモデル](https://doc.qt.io/qtcreator/creator-scxml.html) を利用する場合|

私は２つとも無効にしています。

## Other Languages

|プラグイン名|説明|必要性|
|--|--|--|
|GLSLEditor|Editor for GLSL.|[GLSL を記述する](https://doc.qt.io/qtcreator/creator-how-to-create-opengl-shaders.html) 場合|
|LanguageClient|Language Server Protocol client component. See https://microsoft.github.io/language-server-protocol/overview for an overview on Language Servers.|[Language Server](https://doc.qt.io/qtcreator/creator-language-servers.html) の機能を利用する場合|
|Python|Plugin for supporting the Python language.|Python を記述する場合|

私は、GLSL と Python は無効にしています。
LanguageClient は、ClangCodeModel や Copilot プラグインが依存しているため有効にしています。

## Qt Creator

|プラグイン名|説明|必要性|
|--|--|--|
|BinEditor|Binary editor component.|バイナリエディタを利用する場合|
|Debugger|Debugger integration.|デバッガを利用する場合|
|Designer|Qt Designer integration.|QtWidgets のデザイナを利用する場合|
|LicenseChecker|License Checker Plugin.|ライセンスチェックをする場合|
|ResourceEditor|Editor for qrc files.|リソースを編集する場合|

私は、すべて有効にしています。

## Qt Quick

|プラグイン名|説明|必要性|
|--|--|--|
|QmlDesignerBase|Provides support code for the qml designer and co..|QML のデザイナ関係の機能を必要とする場合|
|QmlJSEditor|Editor for QML and JavaScript.|QML と JavaScript を記述する場合|
|QmlJSTools|Tools for analyzing Qml/JS code.|QML と JavaScript の解析をする場合|
|QmlPreview|Qml Preview Plugin.|QML のプレビューをする場合|
|QmlProfiler|Qml Profiler Plugin.|QML のプロファイリングをする場合|
|QmlProjectManager|Qt Quick support|QML のみのプロジェクトを管理する場合|

私は、QmlDesignerBase と、QmlPreview、QmlProjectManager は無効にしています。

## Utilities

|プラグイン名|説明|必要性|
|--|--|--|
|AutoTest|Auto Test plugin.|[テスト](https://doc.qt.io/qtcreator-extending/plugin-tests.html) を利用する場合|
|CodePaster|Codepaster plugin for pushing/fetching diff from server.|[pastebin などを利用する](https://doc.qt.io/qtcreator/creator-editor-codepasting.html) 場合|
|Copilot|Copilot support|[Copilot](https://doc.qt.io/qtcreator/creator-copilot.html) を利用する場合|
|DiffEditor|Diff editor component.|差分表示をする場合|
|FakeVim|VI-style keyboard navigation.|Vim っぽいキーバインドを利用する場合|
|ImageViewer|Image Viewer component.|画像を表示する場合|
|Macros|Macros in text editors.|[エディタのマクロ機能](https://doc.qt.io/qtcreator/creator-macros.html) を利用する場合|
|Marketplace|Qt Marketplace plugin.|[Qt Market Place](https://marketplace.qt.io/) の機能を利用する場合|
|Terminal|Terminal window.|[Terminal](https://doc.qt.io/qtcreator/creator-reference-terminal-view.html) を利用する場合|
|UpdateInfo|Displays Update-Infos for Qt Installer Framework-based Updaters.|更新のチェックを行う場合|

私は、CodePaster と FakeVim と Macros と Marketplace は無効にしています。

## Version Control

|プラグイン名|説明|必要性|
|--|--|--|
|Bazaar|Bazaar integration.|[Bazaar](https://doc.qt.io/qtcreator/creator-vcs-bazaar.html) を利用する場合|
|Git|Git integration.|[Git](https://doc.qt.io/qtcreator/creator-vcs-git.html) を利用する場合|
|Mercurial|Mercurial integration.|[Mercurial](https://doc.qt.io/qtcreator/creator-vcs-mercurial.html) を利用する場合|
|Subversion|Subversion integration.|[Subversion](https://doc.qt.io/qtcreator/creator-vcs-subversion.html) を利用する場合|
|VcsBase|Version Control System Base Plugin.|上記を１つ以上利用する場合|

私は、Bazaar と Mercurial と Subversion は無効にしています。

# おわりに

みなさんも、自分の使い方に合うように、プラグインを無効化し Qt Creator を最適化して利用してみましょう。

また、デフォルトで有効になっているプラグインにも掘り出し物があるかもしれないので、ぜひチェックしてみてください。