Eclipseでよく使うショートカットや設定済みのショートカットキー一覧の確認方法、ショートカットキーの割当て変更や新規割り当ての設定方法、例えばJavaエディタでコンテンツアシスト機能(自動入力補完機能)のショートカットキー割当てを変更して有効にする方法などを説明しています。Eclipseのショートカットやコンテンツアシストを活用すれば、Javaプログラマはコーディングのスピード・効率を上げる助けとなるので参考にしてください。
※ 本ページはプロモーションが含まれています。
・開発環境やバージョン情報です。
OS:macOS Big Sur(バージョン11.7.1)
Eclipse:Pleiades All in One、4.16(2020-06)、Java Full Edition版
Eclipseで設定されているショートカットの一覧を確認したい場合、Eclipse上で"command(⌘) + Shift + L"を押すと見ることができます。
さらにショーットカットの一覧が表示されている状態で、もう一度"command(⌘) + Shift + L"を押すと設定ウインドウが開いてショートカット一覧テーブルが表示されるようになるので、そこでショートカット一覧を確認したり、カスタマイズする事ができます。
(OSがWindows(MacOS)でもEclipseの設定画面を開いて、左サイドバーから"一般"->"エディタ"->"キー"を選択すれば、このショートカット一覧画面を見れると思います。)
設定ウインドウのショートカット一覧テーブルの"バインディング"列が、ショートカットキーを表します。
また、ショートカット一覧テーブルはとにかく数が多いので、テーブル上部にあるフィルター入力のテキストボックスにキーワードを入力してフィルタリングすれば、ある程度絞れるので便利だと思います。
Eclipseのショートカットキーを自分で決めて割り当てる事もできます。
上で説明した設定ウインドウのショートカット一覧テーブル画面上で、割り当てたいコマンドを選択して、テーブル下にある"バインディング"入力欄に割り当てたいバインディング(ショートカット)を入力して適用ボタンを押せばできます。
EclipseでJavaプログラミングをする時の便利な機能の1つに、コンテンツアシスト機能があります(自動補完、入力補完機能、テンプレートプロポーザル機能とも呼ばれる)。
コンテンツアシスト機能は例えば、"sys"と入力している途中で入力候補のクラスやメソッドの一覧を表示してくれたり、"sys"や"sysout"と入力したら"System.out.println();"に変換したり、コードを選択できるようになります。
このコンテンツアシスト機能のショートカットは、初期設定では"Ctrl + Space"です。(設定画面のショートカット一覧テーブルで"コンテンツ"とフィルタリングすればすぐに確認できる)
Windowsの場合は問題ないと思いますがmacOSの場合、"Ctrl + Space"と"command(⌘) + Space"は、Spotlightの呼び出しやキーボード切り替え機能で使用されているため、Eclipseで"Ctrl + Space"を入力してもコンテンツアシスト機能は無効で効きません。
さすがにOSのSpotlightのショートカットの方が優先度が高いので、Eclipseのコンテンツアシスト機能を有効にして使えるようにするために、ここではコンテンツアシスト機能のショートカットをショートカットキー割り当てを変更してみます。
ショートカットキー割り当てを変更するには、上でも説明しましたが、設定ウインドウのショートカット一覧テーブルのバインディング入力で設定できます。
コンテンツアシスト機能のコマンド名は"コンテンツ・アシスト"です。ここでは、コンテンツアシスト機能のショートカットキーに、"option(⌥) + Space"を割り当てます(割り当てるにはバインディング入力欄でoption(⌥)キー、Spaceキーを入力するだけ)。
設定変更後に動作確認をするためJavaエディタで"sys"と入力して、ショートカット"option(⌥) + Space"を押したら、コンテンツアシスト機能が起動して"System.out.println();"などのコードが選択できるようになりました!
個人的に便利でよく使うショートカット一覧です(最初から割り当てられているショートカット。コピペなどの当たり前のショートカットは書いてないです)。
コマンド | ショートカットキー | 説明 |
---|---|---|
設定ウインドウを開く | command(⌘) + ,(カンマ) | |
コメントアウト、アンコメント | command(⌘) + /(スラッシュ) | |
行削除 | command(⌘) + D | |
指定行へ移動 | command(⌘) + L | 行番号を入力してジャンプ |
矩形選択 | option(⌥) + command(⌘) + A | "option(⌥) + command(⌘) + A"でカーソルが十字になり矩形選択モードになる、もう一度"option(⌥) + command(⌘) + A"を押すと元に戻る。 |
コードのフォーマット整形 | command(⌘) + Shift + F | エディタ上のJavaやHTMLコードのインデントを揃えたり、行の末尾を折り返してくれて、キレイに整えてくれる。 |
import文の整形 | command(⌘) + Shift + O | 必要なクラスをインポート(import文の追加)、使用していないimport文は削除してくれる |
エディタで作業していた箇所に戻ったり進んだり | command(⌘) + [ , command(⌘) + ] または、 option(⌥) + command(⌘) + ←(左矢印) option(⌥) + command(⌘) + →(右矢印) |
エディタでクラスやメソッドにカーソルを当ててcommand(⌘)を押すと、クラスやメソッドの宣言や実装を開いて移動できるが、その移動を戻ったり、進んだりしたい場合に使う。 |
開いているタブの検索、選択 | command(⌘) + E , command(⌘) + F6 |
エディタ上で開いているタブを検索して移動できます。エディタでタブをいっぱい開いているとよく使う。 |
行の先頭へ移動 | command(⌘) + ←(左矢印) | 行頭にタブやスペースがある場合、1度目のショートカットで文字列の先頭へ移動し、2度目で行の先頭へ移動 |
行の末尾へ移動 | command(⌘) + →(右矢印) | |
ハイライトしながら行の先頭へ移動 | shift + command(⌘) + →(右矢印) | |
ハイライトしながら行の末尾へ移動 | shift + command(⌘) + →(右矢印) | |
行選択 | "command(⌘) + ←(左矢印)" + "shift + command(⌘) + →(右矢印)" | 2つのショートカットの組み合わせで行全体を選択する。 もしかしたら自分が知らないだけで、1度でできるショートカットがあるかも。 |
ファイルの先頭へ移動 | command(⌘) + ↑(上矢印) | |
ファイルの末尾へ移動 | command(⌘) + ↓(下矢印) | |
次の単語へ移動 | option(⌥) + →(右矢印) | |
前の単語へ移動 | option(⌥) + ←(左矢印) | |
カーソル行を1行上へ移動 | option(⌥) + ↑(上矢印) | |
カーソル行を削除 | command(⌘) + D | |
カーソル行を複製する | option(⌥) + command(⌘) + ↓(下矢印) | 複数行を選択していれば、その複数行を複製できる |
対応する括弧へ移動 | shift + command(⌘) + P | |
選択中のファイルを、Eclipseウインドウ内で最大化 | control + M | 選択中のファイル以外のビューはすべて非表示になります。 別にファイルじゃなくて、ビューを選択していても、そのビューが最大化します。 トグルなので、連続して入力すれば元の状態へ戻る。 |
選択中のカーソルの上の行へ移動して改行する | shift + command(⌘) + エンターキー | |
Java検索ダイアログを開く | control + H | Javaファイルやメソッドを検索。ソースだけじゃなくてライブラリも対象にできます。 |
型検索ダイアログを開く | command(⌘) + Sfhit + T | クラス・インタフェースなどの型検索ダイアログを開く |
便利なコンテンツアシスト機能の一覧のメモ書きです。
入力コード | 変換後のコード | 説明 |
---|---|---|
sysout | System.out.println(); | "syso"でも変換してくれる。ただJavaライブラリを色々と導入していて、"syso"で他に選択肢がある場合は選択形式でコンテンツアシストが起動。 "sys"で選択するのがいいかも。 |
syserr | System.err.println(); | "syse"でも変換してくれる |
systrace | System.out.println("HogeClass.hogeMethod()"); | 現在のクラス名とメソッド名をSystem.out.println()で出力 |
foreach | for (iterable_type iterable_element : iterable) {} | |
ifnull | if (condition == null) {} | nullチェックのif文 |
そして、自動補完機能(コンテンツアシスト機能)の一覧の設定は、設定ウインドウを開いて、左サイドバーから"Java"->"エディター"->"テンプレート"を選択してテンプレート画面を開けば、一覧を確認できたり、自動補完するコードを変更したり、新規で自動補完コード追加したりなどの設定ができます。
コンテンツアシスト機能の入力コードや変換後のコードを変更したい場合や、自分で新規に追加したい場合は、"テンプレート"画面の編集ボタンや新規ボタンからできます。
これまで説明してきたショートカットやコンテンツアシスト機能を活用すれば、Javaプログラミングのスピード・効率を上げれると思うので、積極的に活用すると良いと思います。