Eclipseで開いているウィンドウを切り替えるにはどうすればよいですか?Ctrl+ がありますがF6、どちらを使用するか尋ねられますが、ブラウザのタブやオペレーティングシステムのウィンドウのように(Cmd/ Win+ Tab)、リストからファイルを選択せずに切り替えたいです。Eclipseでこの簡単なことを行う方法は?
イベントにホットキーを割り当てようとしました:
- フォワード
- フォワードヒストリー
- 次のページ
しかし、それは私が望む方法では機能しません。
Eclipseで開いているウィンドウを切り替えるにはどうすればよいですか?Ctrl+ がありますがF6、どちらを使用するか尋ねられますが、ブラウザのタブやオペレーティングシステムのウィンドウのように(Cmd/ Win+ Tab)、リストからファイルを選択せずに切り替えたいです。Eclipseでこの簡単なことを行う方法は?
イベントにホットキーを割り当てようとしました:
しかし、それは私が望む方法では機能しません。
回答:
は2つの公式ショートカットですが、どちらもリストが表示されます。
CTRL+ Page Up/ CTRL+ Page Downはリストを表示せずにエディターを循環できます。
最後の一連のショートカットで興味深いのは、
それらが定義されるEclipseキーのショートカットにリストされていないことです。
それらはマルチページエディタから継承され、OS固有のショートカットになります。
Mac OS(OSX)のショートカットについて、Matt Ballは2011年9月に再マッピングできないと不満を述べましたCTRL+ Page Up/ CTRL+ Page Down:
OS Xの他のほとんどすべてのタブ付きプログラム(⌘- Leftおよび⌘- Right)でできるように、開いているタブをめくることができないように、それは私を混乱させます。
まあ、2012年3月に、アーサーは答えました:
、Eclipseの最新バージョン(3.7以降)をダウンロードしました。エディターで「前/次のタブ」を(⌘- Leftと⌘- Right)にバインドできましたが、これは以前はできなかったと確信しています。
だから彼らはあなたの言うことを聞いたと思います。
期待どおりに機能します。タブは左から右、またはその逆に移動します。履歴ベースやそのようなナンセンスではありません。
マットボールは確認します:
ああ、「Javaソースの編集」を選択すると実際に機能しました。
さて、残念ながらこれは、Java以外のファイル(JSP、XML、JSなど)をナビゲートした場合、私がSOLであることを意味します。
これを修正するには、このペアの「コピーコマンド」を実行し、必要なすべての「タイミング」を選択します。
これまでのところ、少なくともJavaおよびJSPファイルに対しては問題なく機能しています。
これはセットアップする主要なPITAですが、これは1回限りのものです。
彼のエクスポートされた設定は、ここで試すことができます。
インポートすると、関連するすべてのタイプのドキュメントが表示されます。
CTRL+Page Up
/ を再マッピングする方法がある可能性はありませんCTRL+Page Down
か?OS X(⌘-Left
および⌘-Right
)の他のほとんどすべてのタブ付きプログラムでできるように、開いているタブをめくることができないように、それは私を混乱させます。
設定(例:ウィンドウ→設定)に移動し、全般→キーを表示する場合
次に「次のタブ」と「前のタブ」を検索すると、それらを再マッピングできます。
CTRL-F6 Eclipseで、のようにALT-TAB(Windowsの場合)、(あなたが続ければ利用できるタブ/ウィンドウのリストが表示されますCTRL/ ALTキーが押さ)とハイライトあなたがこのキーを手放すときにジャンプします1。ウィンドウを選択する必要はありません。一度に複数のタブを行き来したい場合は、CTRLボタンを押しながらボタンをタップしTABます。これは、同じ動作ですALT-TAB Windows上で。
この意味で、CTRL- SHIFT-F6日食であるALT- SHIFT-TABアナログ。個人的には、EclipseでこれらのバインディングをVisual Studioのように変更します。すなわちCTRL-TABとCTRL- SHIFT-TABと私はこのようにそれを実行します。
ウィンドウ>設定>一般>キー
次に、「次のエディター」= Ctrl+Tabおよび「前のエディター」= Ctrl+ Shift+を設定しTabます。新しいバインドを設定する前に、「コマンドのバインド解除」をクリックすることを忘れないでください。
これはCTRL-PageDown右に行くCTRL-PageUp左に行く 苛立たしいことに、タブのリストの最後(たとえば、右端のタブ)に到達して再び右に移動しようとすると、ほとんどのブラウザーのように、Eclipseは最初のタブ(左端)に循環しません。
CTRL-TAB
ます。
あなたは使用することができますALT+をLeft、あなたの前のタブに移動し、またはALT+ Right転送するために行くことに。ただし、この方法は履歴のようなタブ切り替えを使用しているため、開いていた前のタブに移動し、「戻る」を1回以上行った場合は転送されます。少し変だと思いますが、うまくいきます。すべてのタブを一度クリックすると、いつでも履歴を「リセット」できます。
Right
横移動:Ctrl+page DownLeft
横移動:CTRL+page Up追加
Eclipseその他のショートカット
CTRL+ F6を使用すると便利です。次/前のタブに切り替えるには、CTRL+ Page Down/ CTRL+ を実行する必要がありますPage Up。
XML
またはproperties
ファイルで作業する場合)、異なるビュー間で切り替えられ、タブ間を切り替えることができなくなります:(
デフォルトはCtrl+ F6です。ウィンドウの設定に移動して変更できます。私は通常、それをCtrl+ Tabに変更します。これは、ブラウザーやその他のタブの切り替えに使用するのと同じです。
カスタムキーバインドのシーケンス例: CTRL + TAB visilbleモジュールや編集者間のスイッチに転送するのEclipse RCPを使用して方向。
CTRL + TAB 2回目に押すと、RCP Eclipseを使用して別のエディターを開き、前のエディターを閉じます。
package rcp_demo.Toolbar;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.handlers.HandlerUtil;
import rcp_demo.Editor.EmployeeEditor;
import rcp_demo.Editor.EmployeeEditorInput;
import rcp_demo.Editor.ProductEditor;
import rcp_demo.Editor.ProductEditorInput;
import rcp_demo.Editor.UserEditor;
import rcp_demo.Editor.UserEditorInput;
public class Forward_Editor extends AbstractHandler{
static String Editor_name; // Active Editor name store in Temporary
static int cnt; // close editor count this variable
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindow(event);
IWorkbenchPage page = window.getActivePage();
UserEditorInput std_input = new UserEditorInput();
EmployeeEditorInput emp_input=new EmployeeEditorInput();
ProductEditorInput product_input=new ProductEditorInput();
IEditorReference[] editors = page.getEditorReferences();
//Blank Editor Window to execute..
if(editors.length==0)
{
//First time close editor can open Student_Editor
if(cnt==1 && Editor_name.equals("Student_Editor"))
{
try {
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("EMP>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First time close editor can open Employee_Editor
else if(cnt==1 && Editor_name.equals("Employee_Editor"))
{
try {
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("PRO>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {e.printStackTrace();
}
}
//First time close editor can open Product_Editor
else if(cnt==1 && Editor_name.equals("Product_Editor"))
{
try {
page.openEditor(std_input, UserEditor.ID);
System.out.println("student Editor open");
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("Close::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First Time call // empty editors
else{
try {
page.openEditor(std_input, UserEditor.ID);
System.out.println("student Editor open");
Editor_name=page.getActiveEditor().getTitle();
} catch (PartInitException e) {
e.printStackTrace();
}
}
}//End if condition
//AvtiveEditor(Student_Editor) close to open Employee Editor
else if(page.getActiveEditor().getTitle().equals("Student_Editor"))
{
try {
//page.closeAllEditors(true);
page.closeEditor(page.getActiveEditor(), true);
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("EMP>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//AvtiveEditor(Employee_Editor) close to open Product Editor
else if(page.getActiveEditor().getTitle().equals("Employee_Editor"))
{
try {
page.closeAllEditors(true);
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("PRO>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//AvtiveEditor(Product_Editor) close to open Student Editor
else if(page.getActiveEditor().getTitle().equals("Product_Editor"))
{
try {
page.closeAllEditors(true);
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("stud>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//by default open Student Editor
else
{
try {
page.closeAllEditors(true);
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("stud_else>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
return null;
}
}
>Custom KeyBinding sequence example : <kbd> SHIFT + TAB </kbd> to switch between visilble Modules or Editors **Backword** direction using Eclipse RCP.
package rcp_demo.Toolbar;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.handlers.HandlerUtil;
import rcp_demo.Editor.EmployeeEditor;
import rcp_demo.Editor.EmployeeEditorInput;
import rcp_demo.Editor.ProductEditor;
import rcp_demo.Editor.ProductEditorInput;
import rcp_demo.Editor.UserEditor;
import rcp_demo.Editor.UserEditorInput;
public class Backword_Editor extends AbstractHandler{
static String Editor_name; // Active Editor name store in Temporary
static int cnt;
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindow(event);
IWorkbenchPage page = window.getActivePage();
//Three object create in EditorInput
UserEditorInput std_input = new UserEditorInput();
EmployeeEditorInput emp_input=new EmployeeEditorInput();
ProductEditorInput product_input=new ProductEditorInput();
IEditorReference[] editors = page.getEditorReferences();
System.out.println("Length : "+editors.length);
if(editors.length==0)
{
//First time close editor can open Student_Editor
if(cnt==1 && Editor_name.equals("Product_Editor"))
{
try {
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("EMP>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First time close editor can open Employee_Editor
else if(cnt==1 && Editor_name.equals("Employee_Editor"))
{
try {
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("Student>>Len:: "+editors.length+"..student::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First time close editor can open Product_Editor
else if(cnt==1 && Editor_name.equals("Student_Editor"))
{
try {
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("PRO>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First Time or empty editors to check this condition
else{
try {
page.openEditor(product_input,ProductEditor.ID);
System.out.println("product Editor open");
} catch (PartInitException e) {
e.printStackTrace();
}
}
}
//AvtiveEditor(Product_Editor) close to open Employee Editor
else if(page.getActiveEditor().getTitle().equals("Product_Editor"))
{
System.out.println("Product:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("Employee Editor open");
} catch (PartInitException e) {
e.printStackTrace();
}
}
//AvtiveEditor(Employee_Editor) close to open Student Editor
else if(page.getActiveEditor().getTitle().equals("Employee_Editor"))
{
System.out.println("Emp:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("student Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//AvtiveEditor(Student_Editor) close to open Product Editor
else if(page.getActiveEditor().getTitle().equals("Student_Editor"))
{
System.out.println("Product:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("product Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//by default open Student Editor
else
{
try {
page.closeAllEditors(true);
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("product Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
}
カスタムKeyBindingシーケンスの例:Eclipse RCPを使用して SHIFT + TAB 、可視モジュールまたはエディターのバックワード方向を切り替える。
package rcp_demo.Toolbar;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.handlers.HandlerUtil;
import rcp_demo.Editor.EmployeeEditor;
import rcp_demo.Editor.EmployeeEditorInput;
import rcp_demo.Editor.ProductEditor;
import rcp_demo.Editor.ProductEditorInput;
import rcp_demo.Editor.UserEditor;
import rcp_demo.Editor.UserEditorInput;
public class Backword_Editor extends AbstractHandler{
static String Editor_name; // Active Editor name store in Temporary
static int cnt;
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindow(event);
IWorkbenchPage page = window.getActivePage();
//Three object create in EditorInput
UserEditorInput std_input = new UserEditorInput();
EmployeeEditorInput emp_input=new EmployeeEditorInput();
ProductEditorInput product_input=new ProductEditorInput();
IEditorReference[] editors = page.getEditorReferences();
System.out.println("Length : "+editors.length);
if(editors.length==0)
{
//First time close editor can open Student_Editor
if(cnt==1 && Editor_name.equals("Product_Editor"))
{
try {
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("EMP>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First time close editor can open Employee_Editor
else if(cnt==1 && Editor_name.equals("Employee_Editor"))
{
try {
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("Student>>Len:: "+editors.length+"..student::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First time close editor can open Product_Editor
else if(cnt==1 && Editor_name.equals("Student_Editor"))
{
try {
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("PRO>>Len:: "+editors.length+"..EDi::"+Editor_name);
} catch (PartInitException e) {
e.printStackTrace();
}
}
//First Time or empty editors to check this condition
else{
try {
page.openEditor(product_input,ProductEditor.ID);
System.out.println("product Editor open");
} catch (PartInitException e) {
e.printStackTrace();
}
}
}
//AvtiveEditor(Product_Editor) close to open Employee Editor
else if(page.getActiveEditor().getTitle().equals("Product_Editor"))
{
System.out.println("Product:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(emp_input, EmployeeEditor.Id);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("Employee Editor open");
} catch (PartInitException e) {
e.printStackTrace();
}
}
//AvtiveEditor(Employee_Editor) close to open Student Editor
else if(page.getActiveEditor().getTitle().equals("Employee_Editor"))
{
System.out.println("Emp:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(std_input, UserEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("student Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//AvtiveEditor(Student_Editor) close to open Product Editor
else if(page.getActiveEditor().getTitle().equals("Student_Editor"))
{
System.out.println("Product:: "+page.getActiveEditor().getTitle());
try {
page.closeAllEditors(true);
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("product Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//by default open Student Editor
else
{
try {
page.closeAllEditors(true);
page.openEditor(product_input,ProductEditor.ID);
cnt=1;
Editor_name=page.getActiveEditor().getTitle();
System.out.println("product Editor open");
} catch (PartInitException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
}
キーシーケンス
M1は CTRL
M2は SHIFT
plugin.xml
<extension point="org.eclipse.ui.commands">
<command
defaultHandler="rcp_demo.Toolbar.Forward_Editor"
id="RCP_Demo.Toolbar.Forward_editor_open_cmd"
name="Forward_Editor">
</command>
<command
defaultHandler="rcp_demo.Toolbar.Backword_Editor"
id="RCP_Demo.Toolbar.backwards_editor_open_cmd"
name="Backword_Editor">
</command>
</extension>
<extension point="org.eclipse.ui.bindings">
<key
commandId="RCP_Demo.Toolbar.Forward_editor_open_cmd"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+TAB">
</key>
<key
commandId="RCP_Demo.Toolbar.backwards_editor_open_cmd"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+TAB">
</key>
</extension>
誰も私の答えを読むことはありませんが、とにかく... Mac OS Xを使用している場合は、Eclipseの履歴ナビゲーション用のマルチタッチジェスチャーを気に入っていただけることでしょう。http://sourceforge.net/apps/mediawiki/eclipsemultitch/
私は何かを追加して、VonC応答を引用します。
加えて、あるバグ206299を使用して要求するオープンCtrl+のTab代わりにタブを切り替えるためのCtrl+をPgUp(PgDn)。
満足できない場合は、[ウィンドウ]> [設定]> [一般]> [キー]からキーバインディングを割り当てることができます。
目的のエディターに到達するまでCTRL押しF6続けてから放します。UIはウィンドウの選択ほどきれいではありませんが、機能は同じです。