ADT(Eclipse)の環境構築メモ

以前すでに[環境構築メモ](http://d.hatena.ne.jp/shiraji/20140115/1390240223) が書いてあったのだけど、ADTのMac用のものがなかったので、Qiitaで再度作成する。

# ADTのダウンロード
ADTの[ダウンロード](http://developer.android.com/sdk/index.html)
今のところ、あまり気にせず、毎回最新バージョンを取得している。

# Android SDKのインストール
必要そうなAndroid SDKをAndroid SDK Managerからインストールする。(cmd+3でQuick Access -> Managerで検索すれば出てくる）
ライブラリがAPI8を利用していることが多いので、API8(ver2.2)はインストールしておくことをおすすめします。
 
# プラグインのインストール 
## Glance
cmd+J（インクリメンタルサーチ）の機能がソース以外でも使えるようになるプラグイン
http://code.google.com/p/eclipse-glance/

### Update Site
http://eclipse-glance.googlecode.com/svn/site/

### 補足
キーバインドの設定は下に記載

## Eclipse Theme
パネル間のスペースをなくしたり、Eclipse自体のテーマを設定できる。

### Update Site
http://eclipse.jeeeyul.net/update/

### 設定方法
#### テーマを選ぶ
ADT -> 環境設定 -> General -> AppearanceのThemeでJeeeyul's theme - Chrome Themeを選び、再起動する
#### プレセットのテーマを設定する
ADT -> 環境設定 -> General -> Appearance -> Jeeeyul's ThemesのGeneralタブの右側の下三角ボタンをクリック -> Preset -> Chrome(Classic)を選ぶ
![Untitled.png](https://qiita-image-store.s3.amazonaws.com/0/20058/86efe2f0-b32f-2859-517e-c9d7275c250d.png)
#### さらにスペースを小さくする
ADT -> 環境設定 -> General -> Appearance -> Jeeeyul's ThemesのGeneralタブ -> Window Spacing -> Case Shadowをチェック

## Eclipse Color Theme
Editor内のテーマの設定を行うことができるプラグイン。
テンプレートの追加なども可能。

### Update Site
http://eclipse-color-theme.github.io/update/

### 設定方法
#### テーマを選ぶ
ADT -> 環境設定 -> General -> Appearance -> Color Themeで選ぶ（いつもWombat）

#### Wombat好きなんだけど、field名とクラス名の色が同じなので、かえる。
ADT -> 環境設定 -> Java -> Editor -> Syntax Coloring -> Java -> Fieldsを選択。色を変える。

#### カーソル行のハイライトがうざい
ADT -> 環境設定 -> General -> Editors -> Text Editors -> Highlight current lineのチェックを外す

#### 行番号を表示する（デフォルトにしてほしい）
ADT -> 環境設定 -> General -> Editors -> Text Editors -> Show line numbersをチェックする

# 補完設定
Java補完機能をカスタマイズする
ADT -> 環境設定 -> Java -> Editor -> Contents AssistのAuto Activationで

* Enable auto activationをチェック
* Auto activation delay(ms)に80
* Auto activation triggers for Javaに`.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_`
* Completion overwritesを選択する。（候補で上書き設定。）

いらない補完候補を消す 
ADT -> 環境設定 -> Java -> Editor -> Contents Assist -> AdvancedのContent assist cyclingでJava Proposalsのみを選択する

# eclipse.iniの設定変更
Eclipse.app/Contents/MacOS/eclipse.iniで設定変更できる。変更したら再起動する。

## ファイルのUTF-8化。
`-Dfile.encoding=utf-8`を追記

## メモリ関連

```
-Xms1024m
-Xmx1024m
```
のように揃える。（マシンスペック次第で修正する。）

# キーバインド
キーバインドの設定を変更する。変更設定はADT -> 環境設定 -> General -> Keys

## Glanceのため、Incrementalサーチのキーバインドを削除
`type filter text`にIncrementalと入力し、出てくる`Incremental Find`と`Incremental Fimd Reverse`を両方ともUnbind Commandボタンにより、削除する。
![スクリーンショット 2014-06-08 14.47.52.png](https://qiita-image-store.s3.amazonaws.com/0/20058/9a834f7c-43ec-e085-ee1e-963eb5e86edb.png)

## キーバインドの追加

|Command|Binding|When|
|---|---|---|
|Open Glance|cmd+J|In Dialogs and Windows|
|Next Match|エンター|Glance Search Context|
|Next Match|cmd+J|Glance Search Context|
|Previous Match|SHIFT+エンター|Glance Search Context|
|Previous Match|SHIFT+cmd+J|Glance Search Context|
|Build Clean|F8|Project|

# スプラッシュ画像を変更
plugins\com.android.ide.eclipse.adt.package_xxのsplash.bmpを差し替える。

# コードテンプレートの追加
Log.dなどのコードテンプレートを追加する。すでにWindowsでも利用していたものでいけるので、それを再利用。
レポジトリをcloneする。

```
git clone git@github.com:shiraji/eclipse_settings.git
```

ADT -> 環境設定 -> Java -> Editor -> Templatesでimportして、cloneしてきた、templates.xmlを指定する。
プロジェク毎にテンプレートの設定ができるので、扱いには注意。

# コードスタイル

## 新しいファイル作成時、付くコメントをつけないようにする。

ADT -> 環境設定 -> Java -> Code Style -> Code Templates -> Comments -> Files -> Edit...ボタンクリック -> 空にする。

## 新しいフィールド作成時、付くコメントをつけないようにする。

ADT -> 環境設定 -> Java -> Code Style -> Code Templates -> Comments -> Fields -> Edit...ボタンクリック -> 空にする。


## Overrideしたメソッドのコメントが意味不明なので修正する。

ADT -> 環境設定 -> Java -> Code Style -> Code Templates -> Comments -> Overriding methods -> Edit...ボタンクリック

```
/**
 * {@inheritDoc}
 */
```

## 新しいメソッドのテンプレートがうざいので、修正する。

ADT -> 環境設定 -> Java -> Code Style -> Code Templates -> Code -> Method body -> Edit...ボタンクリック


```
throw new UnsupportedOperationException("haven't implemented, yet");
```

## 新しいメソッドやタイプ作成時に必ずコメントをつける

ADT -> 環境設定 -> Java -> Code Style -> Code Templates -> Automatically add comments for new methods and typesをチェック

# toString()メソッドのフォーマット

うまくやり方がわからないのだけど、デフォルトのtoString()はsuperのメソッドを呼ばないので、POJOクラスなどを継承している場合、アクセスできるフィールドなのに、値がデバッグしにくいということになるので、superも呼ぶように修正する。

* toString()を生成できる、javaファイルを開く
* source -> Generate toString()...でポップアップが開く（cmd+option+S）
* Generated codeの中にある、String formatのEdit...ボタンをクリック
* Manage toString() TemplatesでNew...ボタンをクリック
* Name: にわかりやすい名前
* Patternには以下を追加。

```
${object.superToString} ${object.className} [${member.name()}=${member.value}, ${otherMembers}]
```

![スクリーンショット 2014-06-17 23.56.43.png](https://qiita-image-store.s3.amazonaws.com/0/20058/e7405963-034a-ea39-f32c-f83a9b29ff6f.png)

# Save Actions

保存時についでに何かをしたい時に利用する。例えば、ファイル全体にフォーマットをかけたり、import文の整理をしたりする。

ADT -> 環境設定 -> Java -> Editors -> Save Actions -> Perform the selected actions on saveをチェックする

## フォーマットする

Format source codeをチェックし、Format all linesを選択する

## imports文の整理

Organize importsをチェックする

## コードオーガナイズ

他にも保存時の追加設定をすることもできます。

Additional actionsをチェックし、Configure...ボタンをクリックする

Code Organizingタブでは、コードを整理できます。

### 文の最後の空白の削除

Remove trailing whitespaceをチェックし、All linesを選択する

### インデントを正しくする

Correct indentationをチェックする

## コードスタイル

スタイルの設定はCode Styleタブでできる。

### if/while/for/doの{}を強制する

Use blocks in if/while/for/do statementsをチェックし、Alwaysを選択する

### finalを自動でつけないようにする。

Use modifier 'final' where possibleのチェックを外す

## 必要なアノテーションの追加

Missing Codeタブで必要なアノテーションを自動で付与してくれる。

### @Override, @Deprecatedを自動で追加

Add missing Annotationsをチェックし、@Override, @Deprecated, implementations of interface methodsを全てチェックする。

## 不必要なコードの削除

Unnecessary Codeでは必要ないコードに対しての設定ができます

### 使っていない、import文を削除

Remove unused importsをチェック

### 必要ないキャストの削除

Remove unnecessary castsをチェック

### $NON-NLS$タグの削除

Remove unnecessary NON-NLS tagsをチェック

最終的にこんな感じ。
![スクリーンショット 2014-06-18 0.29.56.png](https://qiita-image-store.s3.amazonaws.com/0/20058/e1cd7e07-8be3-7271-0677-e227b9e01e1e.png)

# その他

## 検索した結果からファイルへ飛ぶときには新しいタブを開く

ADT -> 環境設定 -> General -> Search -> Reuse editors to show matchesを外す

## Packege Explorerに隠しファイルを表示する

Packege Explorerの右上にある、下三角 -> Filters -> .* resourcesのチェックを外す


この記事は逐次自分に合わせて更新していきます。
（Android Studioに乗り換えた場合、新たにそれを作成する。）