普段の自身で作業する中ではあまり気にならない各種操作で意外と時間がかかっていることを感じ、ショートカットまわりのまとめを行うことにしました。
なお、今回はMac、Eclipseを対象としました。
今日の目次はこんな感じです。
- Macキー配列のおさらい
- 事前準備
- Macショートカットキー
- Mac Eclipseショートカットキー
1. Macキー配列のおさらい
MacのJISキーボードは以下のような配置となっています。
以下のボタンはよく利用するので、ボタン名とボタンを表す記号の組み合わせは覚えておくとよいでしょう。
Mac特殊キー
記号 | ボタン |
---|---|
⌃ | Controlボタン |
⇧ | Shiftボタン |
⌥ | Optionボタン |
⌘ | Commandボタン |
2. 事前準備
各種ショートカットを利用する前に、以下の設定を行います。
Control + Space
Eclipseの入力補完とMacOSが標準で持つ検索ユーティリティSpotlightを呼び出すショートカットが重複するので機能をOffにするか、ショートカットの割当を変更します。
システム環境設定 > Spotlight
画面下の「Spotlightメニューのキーボードショートカット」チェックを外すか、別のショートカットを割り当てます。
ファンクションキー
EclipseでF3等のファンクションキーを利用した機能がありますが、Mac標準のキーボード操作では、F3相当の機能を利用するためには、fnキーを押しながらF3等を押下しなければなりません。
これは操作の手間が増えるため、fnキーを押さなくてもファンクションキーとして利用できるように設定を変更します。
システム環境設定 > キーボード画面真ん中のチェックボックス「F1、F2などのすべてのキーを標準のファンクションキーとして使用」にチェックを入れてください。
以上で、事前準備が完了です。
3. Macショートカットキー
Windowsで利用する標準的なショートカット(コピー、ペースト、保存、全選択等)は、WindowsのCtrlキーをCommandキーに読み替えることでほぼそのまま利用可能です。
ここでは、その他、知っておくと便利なショートカットをまとめます。
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | バックスペース | fn + delete | ショートカットではありませんが… |
☆ | エスケープ文字 | Option + ¥ | ショートカットではありませんが… |
行の先頭へ移動 | Command + ← | ||
行の末尾へ移動 | Command + → | ||
ページアップ | fn + ↑ | ||
ページダウン | fn + ↓ |
4. Mac Eclipseショートカットキー
ここでは、Mac Eclipseを利用する際に、知っておくと便利なショートカットをカテゴリごとにまとめます。
編集系ショートカットキー
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | コメント追加削除 | Command + / Command + Shift + C | 複数行のコメントアウト操作 |
行削除 | Command + D | カーソルのある行を削除 | |
☆ | JavaDocコメント生成 | Command + Option + J | カーソル位置のメンバに 対するJavaDocコメント の挿入 |
☆ | 現在行の移動 | Option + ↑ Option + ↓ | カーソルのある行を上下 に移動 |
☆ | 現在行のコピー | Command + Option + ↑ Command + Option + ↓ | カーソルのある行を上下 にコピー |
コード補完系ショートカットキー
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | コード補完 | Control + Space | コード補完。必須。 |
☆ | インポート編成 | Command + Shift + O | 必要なimport文の追加と 不要なimport文の削除 |
☆ | クイックフィックス | Command + 1 | 警告、エラー箇所で実行。 修正候補を選択して修正。 |
☆ | クイックアシスト | Command + 2 | 右辺のみ記載して実行。 Lキーにて左辺補完。 |
リファクタ系ショートカットキー
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | 名前の変更 | Command + Option + R | 変数/メソッド/クラス名変更。 参照先も置換可能。 |
リファクタメニュー | Command + Option + T | クイックリファクタ メニューの呼び出し | |
ソースメニュー | Command + Option + S | クイックソース メニューの呼び出し |
検索/移動系ショートカットキー
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | 宣言を開く | F3 | カーソル位置の定義箇所へ 移動 |
呼び出し階層の表示 | Control + Option + H | カーソル位置の利用箇所の 表示と移動 | |
クイック アウトライン | Command + O | クラス内の変数/メソッド 一覧の表示と移動 | |
最終編集位置 | Control + Q | 最終編集位置へ移動 | |
タブ移動 | Control + fn + ↑ Control + fn + ↓ | 開いているタブの切替 | |
パースペクティブ 移動 | Command + F8 | 開いているパースペクティブ の切替 | |
☆ | 型を開く | Command + Shift + T | クラス、インターフェース のインクリメンタル検索 |
リソースを開く | Command + Shift + R | リソースファイル のインクリメンタル検索 | |
エラー箇所へ移動 | Command + . Command + Shift + . | エラー箇所へ移動(下へ) エラー箇所へ移動(上へ) | |
変数利用箇所へ移動 | Command + K Command + Shift + K | 変数利用箇所へ移動(下へ) 変数利用箇所へ移動(上へ) |
実行/デバッグ系ショートカットキー
オススメ | 操作 | ショートカットキー | 備考 |
---|---|---|---|
☆ | 実行 | Command + Shift + F11 | 前回の構成でプロジェクト を実行 |
☆ | デバッグ実行 | Command + F11 | 前回の構成でプロジェクト をデバッグ実行 |
☆ | ステップオーバー | F6 | デバッグ時のステップ オーバー操作。 |
☆ | ステップイン | F5 | デバッグ時のステップイン 操作 |
☆ | 再開 | F8 | デバッグ時の処理再開操作 |
---------------------------------
以上、Macショートカットキーで開発効率化でした。
上記以外にもオススメのショートカットがありましたら教えてください。
alt + ↑ or ↓ で現在の行を移動できます。
返信削除alt + command + ↑ or ↓ で現在の行をコピーできます。
けっこう気に入ってます。
あと、キーバインドはemacsにして、カーソル移動などは←↑↓→を使わないようにしてますっ。
オススメのコメントありがとうございます。
削除使ってみました。コピーや切り取りして、ペーストする手番がひとつ減っていい感じですね。
本文のほうにも追加させてもらいましたー。
しかじろうさんは、Emacs派なんですね。
Eclipseでもそのキーバインドを使うって発想はなかったです。なるほど。参考になります。
おぉー。「alt + command + ↑ or ↓ で現在の行をコピー」・・・これは便利です。
削除クリップボードの中身を破壊せずに、行をコピーできるのがいいですね。
コメント系で私がよく使うのは
返信削除Ctrl + Shift + J で カーソル位置のメンバのJavaDoc用のコメントを直前に挿入
Ctrl + Shift + C で 複数選択行を一括して //挿入または //解除
です。
コメントありがとうございます。
削除JavaDocのコメント挿入は、/**[Enter]とやっていたので、ショートカット助かります。
コメントのほうもあわせて本文に追加させていただきましたー。
ありがとうございます。
削除ついでですが、「クイックソースメニューの呼び出し」を既に書かれておりますから、monochromeganeさんは多分普段から使われているかもしれませんが、コンボ技として、そこから v につなげるというのは、記述するに値する、お得なショートカットと思っています。
たとえば(Winのばあい)Shift + Alt + s -> v -> o というふうにショートカットのコンボ入力をすると、カーソル位置のクラスの Override や Implement のうち、oから始まる一覧が出てきます。そこで矢印キーとスペースキーで欲しいのをチェックしてエンターを押すと、あっという間に onCreate とか onTouchEvent とかが Override できたりして重宝しています。