Xcodeのオススメ初期セットアップ

## はじめに

Xcodeのオススメ初期セットアップを紹介します:level_slider:

セットアップ完了前後でこのように変わります。

__before__
<img width="1123" alt="Xcode_before.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/9ea9a204-ad1a-af2c-9c72-181bd37034bd.png">

__after__
<img width="1123" alt="Xcode_after.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/073660ea-30c9-3e58-4f3f-118740e28e89.png">

## 環境

- OS：macOS Mojave 10.14
- Xcode：10.0 (10A255)

## インストール

App Storeからインストールします。
https://itunes.apple.com/jp/app/xcode/id497799835?mt=12

## 環境設定

Xcodeを起動して `⌘,` で環境設定を開きます。

### 行番号を表示する

__[Text Editing]タブ > [Editing]タブ
Show: - [Line numbers]チェックをON__
<img width="800" alt="Xcode環境設定_Editing_行番号.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/7bbb1709-2de4-fa35-f18b-3be78576b42e.jpeg">

行数の把握やコードレビューのために行番号の表示は必須です。

### ブロックを折り畳み・展開できるリボンを表示する

 __[Text Editing]タブ > [Editing]タブ
Show: - [Code folding ribbon]チェックをON__
<img width="800" alt="Xcode環境設定_Editing_リボン.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/8e62b174-31d9-85d6-ea25-b1de897f8e23.jpeg">

メソッドなどを折り畳み・展開できるようになります。

Xcode 9まではカーソルを近づけないとリボンが表示されませんでしたが、10.0からは常にリボンが表示され、さらにネストの深さに応じて色が濃くなるようになりました。

### ソースコードの文字色をVisual Studio風にする

__[Fonts & Colors]タブ
[Theme]を「Default (Light)」から「Basic」に変更__
<img width="800" alt="Xcode環境設定_Theme.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/f4c9c4d7-7830-73a8-5286-2f30ce1207ad.jpeg">

私はVisual Studioの文字色に慣れているので、それに近い色合いのテーマを選択します。
背景色が白でコメントの文字色が緑でないと落ち着きません:no_mouth:

### ソースコードのフォントと文字サイズを変更する

__[Fonts & Colors]タブ > Theme - 「Basic」 > [Source Editor]タブ
右側を選択して右下の[T]アイコンをクリック__
<img width="800" alt="Basic.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/3dca587b-1c5c-45f1-0a66-b54fe930c2a2.jpeg">

__「SF Mono Regular - 12.0」「SF Mono SemiBold - 12.0」から「Menlo Regular - 14.0」に変更
「SF Mono Bold - 12.0」から「Menlo Bold - 14.0」に変更
これを右側の項目分繰り返す(複数選択して同時変更可)__
<img width="445" alt="Fonts.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/3cb1f801-9298-30f0-c331-167b2edc7d1b.jpeg">

Xcode 8.0からデフォルトのフォントが「Menlo」から「SF Mono」に変わりました。
私はMenloが好きなので戻します。

文字サイズは14がちょうどいいです。

### ドキュメンテーションコメントの文字色を変更する

__[Fonts & Colors]タブ > Theme - 「Basic」 > [Source Editor]タブ
「Documentation Markup」「Documentation Markup Keywords」を選択して右下の色をクリック__
<img width="800" alt="Basic_ドキュメント.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/0fc1d013-8e05-a558-8218-aa923adb1b5e.jpeg">

__「#008000(緑)」から「#808080(グレー)」に変更__
<img width="231" alt="Colors.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/c4a4aa89-6296-9335-bb28-1bbdc32075f1.jpeg">

Visual Studioと同様、ドキュメンテーションコメントの文字色をグレーにします。

### コンソールのフォントを変更する

__[Fonts & Colors]タブ > Theme - 「Basic」 > [Console]タブ
右側を選択して右下の[T]アイコンをクリック__
<img width="800" alt="Basic_Console.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/6b0604a6-e350-ca71-6299-2bd4ff5ec3f2.jpeg">

__「SF Mono Regular - 11.0」から「Menlo Regular - 11.0」に変更
「SF Mono Bold - 11.0」から「Menlo Bold - 11.0」に変更
これを右側の項目分繰り返す(複数選択して同時変更可)__

コンソールのフォントもMenloに変更します。
文字サイズは変更しません。

### デバッグの停止時に専用タブで表示する

__[Behaviors]タブ
[Running]の[Pauses]を選択
[Show tab named]チェックをONにし、タブ名に「Debug」と入力__
<img width="800" alt="Behaviors.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/6f22c7f6-8404-ef29-8d3e-d87a6499fbec.jpeg">

デバッグでブレイクポイントに引っかかったときやエラーが発生したときに処理が止まります。
専用タブを設定していないと現在開いているタブを上書きして止まったファイルが表示されてしまうので使いづらいです。

## その他の設定

### ビルドにかかった時間を表示する

ターミナル.appを起動し、以下のコマンドを実行します。

```bash
$ defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES
```

ビルド時に現在日時でなくビルドにかかった時間が表示されるようになります。

__before__
<img width="428" alt="Xcode_t.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/c03ee1a5-22b5-816f-5eac-0d568b22a8bb.jpeg">

__after__
<img width="426" alt="Xcode_s.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/ee01947a-0d09-523a-2dbe-7da9705e8fff.jpeg">

### シミュレータにタップジェスチャを表示する

ターミナル.appを起動し、以下のコマンドを実行します。

```bash
defaults write com.apple.iphonesimulator ShowSingleTouches 1
```

シミュレータにタップジェスチャが表示されるようになります。

## おわりに

これで今日から楽しいiOS開発ライフの始まりです:computer::sparkles:

メモらずに変更していて漏れている設定や、他にもオススメの設定がありましたらコメントなどでご連絡いただけると嬉しいです:blush:

## 参考リンク

- https://twitter.com/MaShunzhe/status/1270173280884920322?s=20
- https://twitter.com/hkato193/status/1267024606323302401?s=20