Eclipse HotKey: ¿cómo cambiar entre pestañas?

673

¿Cómo puedo cambiar entre ventanas abiertas en Eclipse? Hay Ctrl+ F6, pero me pregunta cuál quiero, pero quiero cambiarlo como pestañas en el navegador o ventana en el sistema operativo ( Cmd/ Win+ Tab) sin selección de archivos de la lista. ¿Cómo hacer esta cosa fácil en Eclipse?

He intentado asignar teclas de acceso rápido para eventos:

  • adelante
  • historia hacia adelante
  • siguiente página

Pero no funciona como yo quiero.

Skay
fuente
3
Se agregaron accesos directos específicos del sistema operativo en mi respuesta, pero no puede redefinirlos.
VonC

Respuestas:

903
  • CTRL+ E(para una lista de editor)
  • CTRL+ F6(para cambiar al siguiente editor a través de una lista)
    Puede asignar otro acceso directo a la tecla 'Siguiente editor'.

son los dos atajos oficiales, pero ambos involucran una lista que se muestra.

CTRL+ Page Up/ CTRL+ Page Downpuede recorrer los editores sin mostrar una lista.

Lo que es interesante con ese último conjunto de accesos directos es:
no se enumeran en los accesos directos de Eclipse Keys que se definirán.
Se pueden heredar del editor de varias páginas, lo que los convierte en un acceso directo específico del sistema operativo .


Con respecto a los accesos directos en Mac OS (OSX), Matt Ball se quejó en septiembre de 2011 por no poder reasignar CTRL+ Page Up/ CTRL+ Page Down:

Me vuelve loco no poder pasar las pestañas abiertas como puedo en casi cualquier otro programa con pestañas en OS X ( - Lefty - Right).

Bueno, en marzo de 2012, Arthur respondió:

, Acabo de descargar la última versión de Eclipse (3.7+). He podido vincular "Pestaña Anterior / Siguiente" a ( - Lefty - Right) cuando estoy en el Editor, lo cual estoy bastante seguro de que no podía hacer antes.
Así que supongo que te escucharon.
Funciona como esperabas, las pestañas van de izquierda a derecha y viceversa, no en base a la historia o alguna tontería como esa.

Matt Ball confirma:

oh wow, ¡seleccionar "Edición de código fuente Java" realmente funcionó !
Ahora, desafortunadamente, esto significa que soy SOL si navego en un archivo que no sea Java (JSP, XML, JS, etc.).
La solución para esto es "copiar el comando" para este par, y seleccionar todos los "cuándo" que quiero .
Hasta ahora, al menos funciona maravillosamente para archivos Java y JSP.
Este es un PITA importante para configurar, pero es solo una vez.

Sus preferencias exportadas están disponibles aquí para que las pruebe.
Una vez importado, debería ver, para todos los tipos de documentos relevantes:

Asignaciones de teclas de Mac Os

VonC
fuente
77
En OSX, reemplace CTRL con CMD para las dos primeras acciones del teclado. Pero aún necesitará usar CTRL con PgUp o PgDown para recorrer los editores. Otro conjunto de atajos útiles de KB que encontré al probar algunas de las sugerencias a continuación: puede usar ALT + Arriba o ALT + Abajo para mover una línea completa de código.
Tyler
55
No hay posibilidad de que ahora haya una forma de reasignar CTRL+Page Up/ CTRL+Page Downen Indigo, ¿verdad? Me vuelve loco no poder pasar las pestañas abiertas como puedo en casi todos los demás programas con pestañas en OS X ( ⌘-Lefty ⌘-Right).
Matt Ball
24
En un teclado OSX no extendido: fn + ctrl + flecha arriba / flecha abajo por defecto.
Ben Flynn
1
@ MДΓΓБДLL En OS X, acabo de descargar la última versión de Eclipse. He podido vincular la "pestaña Anterior / Siguiente" a (⌘-Izquierda y ⌘-Derecha) cuando estoy en el Editor, lo que estoy bastante seguro de que no podía hacer antes. Así que supongo que te escucharon. Funciona como esperabas, las pestañas van de izquierda a derecha y viceversa, no en base a la historia o alguna tontería como esa.
Arthur
1
@ MДΓΓБДLL ouch ... Creo que debería haber dicho que estaba en Eclipse para C / C ++ . Lo siento, no se me pasó por la cabeza. ¿No funciona con "Edición de código fuente Java"? Si eso puede calmar tu dolor, cuando estoy en la pestaña de la extrema derecha, ⌘-Derecha no me llevará a la extrema izquierda ... Además, estoy recibiendo "errores falsos" realmente molestos (se muestran errores pero todo se compila perfectamente) desde la actualización. ¡Espero que no entiendas eso también!
Arthur
191

Si va a Preferencias (por ejemplo, Ventana → Preferencias) y ve General → Teclas

y luego busque “Pestaña siguiente” y “Pestaña anterior”, puede reasignarlos.

Comando Siguiente pestaña en Preferencias de Eclipse, antes de volver a vincular

Víctor
fuente
15
He agregado "siguiente pestaña" -> "Ctrl + Tab" "pestaña anterior" -> "Ctrl + Shift + Tab" como si estuviera en Firefox
Bruno Bieri
19
Esto no es exactamente lo correcto. Esto solo recorre las pestañas en el orden en que aparecen en la barra de pestañas vs.
Hafthor
Funciona muy bien, excepto por el editor de diseño de Android, que parece absorber / ignorar estos comandos. ¡Siempre es algo!
Scott Biggs
25
@Hafthor: estoy acostumbrado a Notepad ++, así que quería que Ctrl + Tab cambiara entre las últimas pestañas / editores activos . Para hacer esto, elimine Ctrl + F6 predeterminado del "Editor siguiente" y Ctrl + Shift + F6 de los comandos del "Editor anterior" e inserte Ctrl + Tab y Ctrl + Shift + Tab para esos comandos. Tenga en cuenta que tuve que eliminar los comandos antiguos por alguna razón (que no necesitaba hacer en otros casos en los que cambié las claves), ¡pero me alegra que funcione ahora! Además, mientras jugaba, Eclipse (Juno) actuó de forma extraña y no pude cambiar las pestañas usando ninguna de las combinaciones de teclas habituales o cambiadas, pero un reinicio solucionó eso.
FriendFX
1
He agregado "pestaña siguiente" -> "Ctrl + Tab" "pestaña anterior" -> "Ctrl + Shift + Tab" como si
estuviera
103

Cambie como Windows en el sistema operativo ( vaya a la ventana que tuvo el último foco )

CTRL-F6 en Eclipse, como ALT-TAB (en Windows), muestra una lista de pestañas / ventanas disponibles (si mantiene presionada la tecla CTRL/ ALT) y resalta a la que saltará cuando suelte esta tecla. No tiene que seleccionar la ventana. Si desea recorrer varias pestañas a la vez, mantenga presionado el CTRLbotón y toque el TABbotón. Este es un comportamiento idéntico a ALT-TAB en Windows.

En este sentido, CTRL- SHIFT-F6 en eclipse es el ALT- SHIFT-TAB análogo. Personalmente, cambio estos enlaces en Eclipse para que sean como Visual Studio. Es decir CTRL-TAB y CTRL- SHIFT-TAB y lo hago de esta manera:

Ventana> Preferencias> General> Teclas

Luego configure "Editor siguiente" = Ctrl+Tab y "Editor anterior" = Ctrl+ Shift+Tab . No olvide hacer clic en "Desvincular comando" antes de configurar el nuevo enlace.

Cambiar como navegador ( ir a la pestaña a la derecha de la pestaña actual )

Esta es CTRL-PageDown a ir a la derecha, CTRL-PageUp ir a la izquierda. Frustrantemente, cuando llegas al final de la lista de pestañas (por ejemplo, la pestaña a la derecha) y luego intentas volver a la derecha, Eclipse no pasa a la primera pestaña (a la izquierda) como lo haría la mayoría de los navegadores.

Robino
fuente
12
Esta es la respuesta más subestimada en este hilo. Sobre todo porque Juno cambia qué pestañas se muestran como una lista pura y no como los editores utilizados recientemente.
Jason Axelson el
Esto funciona el 90% del tiempo. Falla si el cursor del mouse se encuentra donde aparece la lista de pestañas. Se selecciona la pestaña desafortunada que aparece delante del cursor.
Usuario1
Eclipse versión 3.6.2 funciona el 100% del tiempo, esté donde esté el mouse. ¡Es, después de todo, el comportamiento natural de Eclipse reasignado a diferentes teclas! Aunque no he probado versiones antiguas de Eclipse ...
Robino
1
No tiene que desvincular el comando "Siguiente editor". Simplemente haga clic en "Copiar comando" y edite la copia y agréguela CTRL-TAB.
Gillfish
1
El recordatorio de desvinculación es clave. En eclipse 2019-03, no funcionó hasta que se eliminó el comando original, parece que ya no admite enlaces múltiples.
Liam Steele
55

Puede usar ALT+ Leftpara ir a su pestaña anterior o ALT+ Rightpara ir a adelante. Sin embargo, este método utiliza el cambio de tabulación como historial, por lo que irá a la pestaña anterior que tenía abierta y reenviará si ha retrocedido una o más veces. Un poco raro, lo sé, pero funciona. Siempre puede "restablecer" el historial haciendo clic en cada pestaña una vez.

peirix
fuente
55
No es útil cuando hay acciones registradas en el historial, como ir a la definición del método en la misma clase.
SiN
esto solía ser útil, para eclipse helios esto funciona como lo mencionó SiN
Toskan
2
En realidad, me gusta el comportamiento en el que va a acciones como ir a la definición de métodos, es una forma útil de ir y venir cuando se navega por muchos archivos.
Ibrahim
1
Esto funciona muy bien al ir y venir entre ventanas de edición. Me gusta dividir mi pantalla en 2 y los otros métodos solo alternan la agrupación de pestañas 1 (excepto ctrl-F6, pero me parece engorroso).
Jlange
13

CTRL+ F6es bueno de usar. Si desea cambiar a la pestaña siguiente / anterior, debe hacer CTRL+ Page Down/ CTRL+ Page Up.

fastcodejava
fuente
2
Sí, a menudo uso este. Sin embargo, cuando el editor propone múltiples puntos de vista (por ejemplo, cuando se trabaja en una XMLo propertiesarchivo), se cambia entre los diferentes puntos de vista, y no son capaces de cambiar entre pestañas más :(
Romain Linsolas
"CTRL + F6 es bueno para usar". No hace nada aquí, en Eclipse Photon en Windows.
ChrisJJ
10

El valor predeterminado es Ctrl+ F6. Puede cambiarlo yendo a las preferencias de Windows . Normalmente lo cambio a Ctrl+ Tab, lo mismo que usamos para cambiar las pestañas en un navegador y otras cosas.

pide
fuente
No soy un votante negativo, pero cuestiono su capacidad para asignar un enlace de teclas con Ctrl + Tab juntos en Windows Vista, usando Eclipse Indigo. ¡Es imposible! Si tuviera que presionar Tab, simplemente cambiaría el enfoque en los botones y la lista desplegable.
tom_mai78101
@ tom_mai78101 Lo siento, no estoy al tanto de este problema con Windows Vista. Puede probar una asignación diferente de su elección, aunque es exitosa en XP.
pide el
6

Ejemplo de secuencia de encuadernación de teclas personalizada: CTRL + TAB para cambiar entre módulos visibles o dirección de avance de los editores utilizando Eclipse RCP.

presiona por CTRL + TAB segunda vez para abrir otro editor y cerrar el editor anterior usando 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;
    }
}

Ejemplo de secuencia personalizada de KeyBinding: SHIFT + TAB para cambiar entre módulos visibles o dirección de contraseñas de editores usando 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;
    }
}

Secuencia clave

M1 significa CTRL

M2 significa 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>
Chetan Bhagat
fuente
5

Script de AutoHotKey de 3 líneas (en Windows, de todos modos):

#IfWinActive ahk_class SWT_Window0
^+Tab::^PgUp
^Tab::^PgDn

Ponga esto en su carpeta de inicio (guárdelo como * .ahk, debe tener AutoHotKey instalado) y las pestañas de Eclipse ahora funcionarán como Chrome o Firefox.

Zook
fuente
3

Resuelto !!

Cambiar esquema a Microsoft Visual Studio

Ventana> Preferencias> General> Teclas

Buscar esquemas desplegable

Mi versión de eclipse:

Eclipse Java EE IDE para desarrolladores web.

Versión: Juno Service Release 1 ID de compilación: 20120920-0800

sumitarora
fuente
3

Nadie leerá mi respuesta, pero de todos modos ... Si está en Mac OS X, le encantarán los gestos multitáctiles para la navegación del historial en Eclipse: http://sourceforge.net/apps/mediawiki/eclipsemultitch/

borisdiakur
fuente
1
Leo todas las entradas todos los días ;) Y "Eclipse Multi-Touch" se ve bien, así que +1. Pero parece inactivo desde 2010. ¿Seguiría funcionando con Eclipse 4.x reciente como Juno?
VonC
2

En Windows, si tiene un mouse de 5 botones, puede usar adelante y atrás en lugar de ALT+Lefty ALT+Right.

ajon
fuente
2

Tecla de acceso directo para volver a la pestaña anterior

Alt+ LeftArrowpara volver.

Sunil Garg
fuente
1

Una forma de hacerlo es usar el complemento VI , y luego simplemente hacer: n (y: N) para ir entre los archivos.

Eso es lo que hago.

CPerkins
fuente
1

Puede configurar las teclas de acceso rápido en Preferencias -> General -> Teclas (o simplemente escriba "teclas" en el campo de filtro en la parte superior del cuadro de diálogo Preferencias.

Una vez que se selecciona la sección Teclas, busque la pestaña Siguiente y la pestaña anterior y asígneles su propia tecla de acceso rápido haciendo clic en el campo "Enlace" y luego escribiendo las teclas de acceso rápido.

Presiona Aplicar u OK para finalizar el proceso.

Grigb
fuente
1

Cito la respuesta de VonC, agregando algo.

  • Ctrl+ PgUp( PgDn) para cambiar entre pestañas en la pila actual (tanto editores como vistas)
  • Ctrl+ Epara cambiar entre pestañas en la pila actual, usando una lista filtrada
  • Ctrl+ F6para cambiar entre editores, sin importar qué pila
  • Ctrl+ F7para cambiar entre vistas, sin importar qué pila

Además, hay un Bug 206299 abierto para solicitar usando Ctrl+ Tabpara cambiar de pestaña en lugar de Ctrl+ PgUp( PgDn).

  • Como esto rompería la accesibilidad, el usuario debería establecer una preferencia para esto. Tal vez debería haber una pregunta en el Cuestionario de bienvenida durante las instalaciones de Oomph.

Si no está satisfecho, puede asignarse el enlace de teclas, desde Ventana> Preferencias> General> Teclas .

psuzzi
fuente
1

Por alguna razón, mi configuración de Eclipse estaba dañada, así que tuve que editar manualmente el archivo /.plugins/org.eclipse.e4.workbench/workbench.xmi

Debo haber establecido previamente Ctrl+ Taben el cambio de pestaña similar al navegador, e incluso restablecer todas las asociaciones de teclas en las preferencias de Eclipse no eliminaría los accesos directos (tampoco se mostraban en ningún lado). Abrí el archivo mencionado anteriormente y eliminé los <bindings>elementos marcados con <tags>type:user</tags>los accesos directos que no funcionan.

Friederbluemle
fuente
1

De derecha a izquierda: ctrl+ shift+ 9 o ctrl+ shift+ Page Upo ctrl+Page Up

De izquierda a derecha: ctrl+ shift+ 3o ctrl+ shift+ Page Downo ctrl+Page Down

Parth Patel
fuente
0

Si simplemente desea cambiar entre sus selecciones de pestañas actuales y anteriores, el uso de CTRL+ F6lo cambiará de un lado a otro. Para navegar a una pestaña más atrás en su historial, debe usar las teclas UP/ DOWNmientras la ventana Editores está abierta. Esto funciona con Helios (Eclipse 3.6); No estoy seguro si esto es cierto para las versiones anteriores de Eclipse.

Mel Llaguno
fuente
0

Mantenga CTRLpresionado F6hasta llegar al editor que desea, luego suelte. La interfaz de usuario no es tan bonita como la selección de la ventana, pero la funcionalidad es la misma.

Christopher Oezbek
fuente
0

En una máquina SLES12, puede usar Ctrl+ PageUpy Ctrl+ PageDownpara navegar entre pestañas de forma predeterminada. Siempre puede cambiar estas claves desde la ventana Preferencias navegando por la sección "claves" en la categoría "General". Este proceso está bien explicado por Victor y VonC arriba.

pavan kumar
fuente
0

¿Cómo puedo cambiar entre ventanas abiertas en Eclipse

CTRL + F7 funciona aquí: Eclipse Photon en Windows.

ChrisJJ
fuente