Eclipse HotKey: come passare da una scheda all'altra?


673

Come posso passare da una finestra aperta in Eclipse? C'è Ctrl+ F6, ma mi sta chiedendo quale voglio, ma voglio cambiarlo come schede nel browser o finestra nel sistema operativo ( Cmd/ Win+ Tab) senza selezione di file dall'elenco. Come fare questa cosa facile in Eclipse?

Ho provato ad assegnare il tasto di scelta rapida per gli eventi:

  • inoltrare
  • storia in avanti
  • pagina successiva

ma non funziona come voglio.


3
Aggiunti collegamenti specifici del sistema operativo nella mia risposta, ma non è possibile ridefinirli.
VonC,

Risposte:


903
  • CTRL+ E(per un elenco di editor)
  • CTRL+ F6(per passare all'editor successivo tramite un elenco)
    È possibile assegnare un altro collegamento al tasto "Editor successivo".

sono le due scorciatoie ufficiali, ma comportano entrambe la visualizzazione di un elenco.

CTRL+ Page Up/ CTRL+ Page Downpuò scorrere gli editor senza visualizzare un elenco.

Ciò che è interessante con quest'ultima serie di scorciatoie è:
non sono elencati nelle scorciatoie dei tasti Eclipse da definire.
Possono essere ereditati dall'editor multipagina, rendendoli un collegamento specifico del sistema operativo .


Per quanto riguarda le scorciatoie su Mac OS (OSX), Matt Ball si è lamentato a settembre 2011 di non essere in grado di rimappare CTRL+ Page Up/ CTRL+ Page Down:

Mi fa impazzire non riuscire a sfogliare le schede aperte come posso praticamente in ogni altro programma a schede in OS X ( - Lefte - Right).

Bene, nel marzo 2012, Arthur ha risposto:

, Ho appena scaricato l'ultima versione di Eclipse (3.7+). Sono stato in grado di associare "Scheda precedente / successiva" a ( - Lefte - Right) in Editor, cosa che sono abbastanza sicuro di non poter fare prima.
Quindi immagino che ti abbiano sentito.
Funziona proprio come ti aspetti, le schede vanno da sinistra a destra e viceversa, non su base cronologica o assurdità del genere.

Matt Ball conferma:

oh wow, la selezione di "Modifica sorgente Java" ha funzionato davvero !
Ora, sfortunatamente, ciò significa che sono SOL se navigo in un file non Java (JSP, XML, JS, ecc.).
La correzione per questo è di "copiare il comando" per questa coppia e selezionare tutte le "whens" che desidero .
Finora funziona almeno magnificamente per i file Java e JSP.
Questa è una grande PITA da configurare, ma è solo una cosa sola.

Le sue preferenze esportate sono disponibili qui per provare.
Una volta importato, dovresti vedere, per tutti i tipi di documento rilevanti:

Associazioni di tasti Mac Os


7
Su OSX, sostituire CTRL con CMD per le prime due azioni da tastiera. Ma dovrai comunque usare CTRL con PgUp o PgDown per scorrere gli editor. Un'altra serie di utili scorciatoie KB che ho appena trovato mentre provavo alcuni dei suggerimenti seguenti: puoi usare ALT + Su o ALT + Giù per spostare un'intera riga di codice.
Tyler,

5
Non c'è possibilità che ora ci sia un modo per rimappare CTRL+Page Up/ CTRL+Page Downin Indigo, vero? Mi fa impazzire non riuscire a sfogliare le schede aperte come posso praticamente in ogni altro programma a schede in OS X ( ⌘-Lefte ⌘-Right).
Matt Ball,

24
Su una tastiera OSX non estesa: fn + ctrl + up_arrow / down_arrow per impostazione predefinita.
Ben Flynn,

1
@ MДΓΓБДLL Su OS X, ho appena scaricato l'ultima versione di Eclipse. Sono stato in grado di associare "Scheda precedente / successiva" a (⌘-sinistra e ⌘-destra) quando in Editor, che sono abbastanza sicuro di non poter fare prima. Quindi immagino che ti abbiano sentito. Funziona proprio come ti aspetti, le schede vanno da sinistra a destra e viceversa, non su base cronologica o assurdità del genere.
Arthur

1
@ MДΓΓБДLL ahi ... Immagino che avrei dovuto dire che ero su Eclipse per C / C ++ . Scusa, non mi è passato per la testa. Non funziona con "Modifica sorgente Java"? Se questo può smorzare il tuo dolore, quando sono nella scheda all'estrema destra, Right-Right non mi porterà all'estrema sinistra ... Inoltre, sto ottenendo davvero "fastidiosi errori" fastidiosi (gli errori vengono visualizzati ma tutto si compila perfettamente) dall'aggiornamento. Spero che non lo capisca anche tu!
Arthur

191

Se vai su Preferenze (ad es. Finestra → Preferenze) e visualizza Generale → Tasti

e quindi cerca "Scheda successiva" e "Scheda precedente", puoi rimappare.

Comando della scheda successiva nelle Preferenze di Eclipse, prima di eseguire nuovamente l'associazione


15
Ho aggiunto "scheda successiva" -> "Ctrl + Tab" "scheda precedente" -> "Ctrl + Maiusc + Tab" come in Firefox
Bruno Bieri,

19
Questa non è esattamente la cosa giusta. Questo fa semplicemente scorrere le schede nell'ordine in cui appaiono sulla barra delle schede rispetto all'ultima volta passate all'ordine.
Hafthor,

Funziona alla grande, tranne l'editor di layout Android, che sembra assorbire / ignorare questi comandi. È sempre qualcosa!
Scott Biggs,

25
@Hafthor: sono abituato a Notepad ++, quindi volevo che Ctrl + Tab passasse tra le ultime schede / editor attivi . Per fare ciò, rimuovere Ctrl + F6 predefinito da "Editor successivo" e Ctrl + Maiusc + F6 dai comandi "Editor precedente" e inserire invece Ctrl + Tab e Ctrl + Maiusc + Tab per quei comandi. Nota che ho dovuto rimuovere i vecchi comandi per qualche motivo (cosa che non avevo bisogno di fare in altri casi in cui ho cambiato le chiavi), ma sono contento che funzioni ora! Inoltre, mentre giocavo, Eclipse (Juno) si comportava in modo strano e non potevo cambiare scheda usando nessuna delle combinazioni di tasti consuete o modificate, ma un riavvio lo risolveva.
FriendFX

1
Ho aggiunto "scheda successiva" -> "Ctrl + Tab" "scheda precedente" -> "Ctrl + Maiusc + Tab" come in Visual Studio
Memet Olsen

103

Passa come Windows nel sistema operativo ( vai alla finestra che ha avuto l'ultimo focus )

CTRL-F6 in Eclipse, come ALT-TAB (su Windows), visualizza un elenco di schede / finestre disponibili (se si tiene premuto il tasto CTRL/ ALT) ed evidenzia quello a cui si salterà quando si rilascia questo tasto. Non è necessario selezionare la finestra. Se vuoi attraversare più schede contemporaneamente, tieni premuto il CTRLpulsante e tocca il TABpulsante. Questo comportamento è identico a ALT-TAB su Windows.

In questo senso, CTRL- SHIFT-F6 in eclipse è l' analogo ALT- SHIFT-TAB . Personalmente, cambio questi collegamenti in Eclipse per essere come Visual Studio. Cioè CTRL-TAB e CTRL- SHIFT-TAB e lo faccio in questo modo:

Finestra> Preferenze> Generale> Chiavi

Quindi impostare "Editor successivo" = Ctrl+Tab e "Editor precedente" = Ctrl+ Shift+Tab . Non dimenticare di fare clic su "Unbind Command" prima di impostare il nuovo binding.

Passa come il browser ( vai alla scheda a destra della scheda corrente )

Questo è CTRL-PageDown per andare a destra, CTRL-PageUp per andare a sinistra. Frustrantemente, quando arrivi alla fine dell'elenco di schede (dì la scheda all'estrema destra) e poi provi ad andare di nuovo a destra, Eclipse non passa alla prima scheda (all'estrema sinistra) come farebbe la maggior parte dei browser.


12
Questa è la risposta più sottovalutata in questa discussione. Soprattutto dal momento che Juno cambia le schede che sono mostrate come un puro elenco e non gli editor utilizzati di recente.
Jason Axelson,

Funziona il 90% delle volte. Non riesce se il cursore del mouse si trova nella posizione in cui viene visualizzato l'elenco delle schede. Qualunque sia la scheda sfortunata che appare davanti al cursore viene selezionata.
Utente 1

La versione 3.6.2 di Eclipse funziona il 100% delle volte, ovunque si trovi il mouse. Dopotutto, il comportamento naturale di Eclipse è mappato su chiavi diverse! Non ho provato le antiche versioni di Eclipse ...
Robino,

1
Non è necessario separare il comando "Editor successivo". Basta fare clic su "Copia comando", modificare la copia e associarla a CTRL-TAB.
Gillfish,

1
Il promemoria non vincolante è la chiave. In eclipse 2019-03, non ha funzionato fino a quando il comando originale non è stato rimosso, sembra non supportare più i binding multipli.
Liam Steele,

55

Puoi usare ALT+ Leftper andare alla scheda precedente o ALT+ Rightper andare avanti. Questo metodo utilizza il cambio di tabulazione come la cronologia, tuttavia, quindi passerà alla scheda precedente che avevi aperto e in avanti se sei tornato "indietro" una o più volte. Un po 'strano, lo so, ma funziona. Puoi sempre "ripristinare" la cronologia facendo clic una volta su ogni scheda.


5
Non utile quando sono presenti azioni registrate nella cronologia, come ad esempio la definizione del metodo nella stessa classe.
SiN

questo era utile, per gli elicotteri eclissi funziona come ha detto SiN
Toskan,

2
In realtà mi piace il comportamento in cui vanno le azioni come andare alla definizione del metodo, è un modo utile per andare avanti e indietro quando si naviga in molti file.
Ibrahim,

1
Funziona benissimo quando si passa da una finestra all'altra. Mi piace dividere il mio schermo in 2 e gli altri metodi eseguono solo un ciclo di raggruppamento di schede 1 (tranne ctrl-F6, ma lo trovo ingombrante).
Jlange,


13

CTRL+ F6è buono da usare. Se vuoi passare alla scheda successiva / precedente, devi fare CTRL+ Page Down/ CTRL+ Page Up.


2
Sì, lo uso spesso. Tuttavia, quando l'editor propone visualizzazioni multiple (ad esempio quando lavori su un file XMLo properties), passa tra le diverse visualizzazioni e non puoi più passare da una
scheda all'altra

"CTRL + F6 è buono da usare." Non fa nulla qui, su Eclipse Photon in Windows.
ChrisJJ,

10

L'impostazione predefinita è Ctrl+ F6. Puoi cambiarlo andando in Preferenze di Windows . Di solito lo cambio in Ctrl+ Tab, lo stesso che usiamo per cambiare scheda in un browser e altre cose.


Non sono un down-voter, ma metto in dubbio la tua capacità di mappare un'associazione di tasti con Ctrl + Tab insieme su Windows Vista, usando Eclipse Indigo. È impossibile! Se dovessi premere Tab, cambierebbe semplicemente lo stato attivo sui pulsanti e sull'elenco a discesa.
tom_mai78101

@ tom_mai78101 Siamo spiacenti, non sono a conoscenza di questo problema con Windows Vista. Puoi provare una mappatura diversa a tua scelta, sebbene abbia successo in XP.
as

6

Esempio di sequenza KeyBinding personalizzata: CTRL + TAB per alternare tra Moduli visibili o Editor Direzione in avanti usando Eclipse RCP.

si preme la CTRL + TAB seconda volta per aprire un altro editor e chiudere l'editor precedente utilizzando 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;
    }
}

Esempio di sequenza KeyBinding personalizzata: SHIFT + TAB per alternare tra Moduli visibili o Direzione Backword degli editor 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;
    }
}

Sequenza di tasti

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>

5

Script AutoHotKey a 3 righe (su Windows, comunque):

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

Inseriscilo nella cartella di avvio (salvalo come * .ahk, deve avere AutoHotKey installato) e le schede Eclipse ora funzioneranno come Chrome o Firefox.


3

Risolto !!

Cambia schema in Microsoft Visual Studio

Finestra> Preferenze> Generale> Chiavi

Cerca il menu a discesa Schemi

La mia versione eclissi:

IDE Java EE di Eclipse per sviluppatori Web.

Versione: Juno Service Release 1 ID build: 20120920-0800



2

Su Windows se hai un mouse a 5 pulsanti, puoi usare avanti e indietro al posto di ALT+Lefte ALT+Right.


2

Tasto di scelta rapida per tornare alla scheda precedente

Alt+ LeftArrowper tornare indietro.


1

Un modo per farlo è usare il VI Plugin , e poi basta fare: n (e: N) per spostarsi tra i file.

Questo è ciò che faccio.


1

È possibile impostare i tasti di scelta rapida in Preferenze -> Generale -> Tasti (o semplicemente digitare "tasti" nel campo filtro nella parte superiore della finestra di dialogo Preferenze.

Una volta selezionata la sezione Chiavi, trova la scheda Avanti e la scheda Precedente e assegna loro il tuo tasto di scelta rapida facendo clic nel campo "Binding" e digitando i tasti di scelta rapida.

Premi Applica o OK per completare il processo.


1

Cito la risposta VonC, aggiungendo qualcosa.

  • Ctrl+ PgUp( PgDn) per passare da una scheda all'altra dello stack corrente (sia editor che vista)
  • Ctrl+ Eper passare da una scheda all'altra dello stack corrente, usando un elenco filtrato
  • Ctrl+ F6per passare da un editor all'altro, indipendentemente dallo stack
  • Ctrl+ F7per passare da una vista all'altra, indipendentemente dallo stack

Inoltre, è disponibile un bug 206299 da richiedere utilizzando Ctrl+ Tabper cambiare scheda anziché Ctrl+ PgUp( PgDn).

  • Poiché ciò comprometterebbe l'accessibilità, l'utente dovrebbe impostare una preferenza per questo. Forse ci dovrebbe essere una domanda nel questionario di benvenuto durante le installazioni di Oomph.

Se non sei soddisfatto, puoi assegnarti il ​​Key Binding, da Finestra> Preferenze> Generale> Chiavi .


1

Per qualche ragione le mie impostazioni di Eclipse erano danneggiate, quindi ho dovuto modificare manualmente il file /.plugins/org.eclipse.e4.workbench/workbench.xmi

Devo aver precedentemente impostato Ctrl+ Tabsu Cambio scheda simile a Browser, e anche il ripristino di tutti i collegamenti dei tasti nelle preferenze di Eclipse non mi sbarazzerebbe delle scorciatoie (non erano nemmeno visualizzate da nessuna parte). Ho aperto il file sopra menzionato e rimosso gli <bindings>elementi contrassegnati con <tags>type:user</tags>relativi ai collegamenti non funzionanti.


1

Da destra a sinistra: ctrl+ shift+ 9 o ctrl+ shift+ Page Upo ctrl+Page Up

Da sinistra a destra: ctrl+ shift+ 3o ctrl+ shift+ Page Downo ctrl+Page Down


0

Se vuoi semplicemente passare dalla selezione della scheda corrente a quella precedente, usare CTRL+ F6ti farà andare avanti e indietro. Per passare a una scheda più indietro nella cronologia, è necessario utilizzare i tasti UP/ DOWNmentre la finestra di modifica è aperta. Funziona con Helios (Eclipse 3.6); non sono sicuro che ciò sia vero per le versioni precedenti di Eclipse.


0

Tenere CTRLpremuto e premere F6fino a raggiungere l'editor desiderato, quindi rilasciare. L'interfaccia utente non è carina come la selezione della finestra, ma la funzionalità è la stessa.


0

Su una macchina SLES12 è possibile utilizzare Ctrl+ PageUpe Ctrl+ PageDownper spostarsi tra le schede per impostazione predefinita. Puoi sempre cambiare questi tasti dalla finestra Preferenze sfogliando la sezione "tasti" nella categoria "Generale". Questo processo è ben spiegato da Victor e VonC sopra.


0

Come posso passare tra le finestre aperte in Eclipse

CTRL + F7 funziona qui - Eclipse Photon su Windows.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.