2012年7月2日月曜日

ショートカットキーで開発効率化(Mac/Eclipse)

先日、参加したAndroid Hackathon in Fukuoka でペアプロを行いました。
普段の自身で作業する中ではあまり気にならない各種操作で意外と時間がかかっていることを感じ、ショートカットまわりのまとめを行うことにしました。

なお、今回はMac、Eclipseを対象としました。

今日の目次はこんな感じです。
  1. Macキー配列のおさらい
  2. 事前準備
  3. Macショートカットキー
  4. 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キーに読み替えることでほぼそのまま利用可能です。

ここでは、その他、知っておくと便利なショートカットをまとめます。

Macショートカットキー
オススメ 操作 ショートカットキー 備考
バックスペース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ショートカットキーで開発効率化でした。
上記以外にもオススメのショートカットがありましたら教えてください。

6 件のコメント:

  1. alt + ↑ or ↓ で現在の行を移動できます。
    alt + command + ↑ or ↓ で現在の行をコピーできます。
    けっこう気に入ってます。

    あと、キーバインドはemacsにして、カーソル移動などは←↑↓→を使わないようにしてますっ。

    返信削除
    返信
    1. オススメのコメントありがとうございます。
      使ってみました。コピーや切り取りして、ペーストする手番がひとつ減っていい感じですね。
      本文のほうにも追加させてもらいましたー。

      しかじろうさんは、Emacs派なんですね。
      Eclipseでもそのキーバインドを使うって発想はなかったです。なるほど。参考になります。

      削除
    2. おぉー。「alt + command + ↑ or ↓ で現在の行をコピー」・・・これは便利です。

      クリップボードの中身を破壊せずに、行をコピーできるのがいいですね。

      削除
  2. コメント系で私がよく使うのは

    Ctrl + Shift + J で カーソル位置のメンバのJavaDoc用のコメントを直前に挿入
    Ctrl + Shift + C で 複数選択行を一括して //挿入または //解除

    です。

    返信削除
    返信
    1. コメントありがとうございます。
      JavaDocのコメント挿入は、/**[Enter]とやっていたので、ショートカット助かります。
      コメントのほうもあわせて本文に追加させていただきましたー。

      削除
    2. ありがとうございます。

      ついでですが、「クイックソースメニューの呼び出し」を既に書かれておりますから、monochromeganeさんは多分普段から使われているかもしれませんが、コンボ技として、そこから v につなげるというのは、記述するに値する、お得なショートカットと思っています。

      たとえば(Winのばあい)Shift + Alt + s -> v -> o というふうにショートカットのコンボ入力をすると、カーソル位置のクラスの Override や Implement のうち、oから始まる一覧が出てきます。そこで矢印キーとスペースキーで欲しいのをチェックしてエンターを押すと、あっという間に onCreate とか onTouchEvent とかが Override できたりして重宝しています。

      削除