Tasti

Le funzioni della tastiera possono essere ampiamente personalizzate in Eclipse. All'interno di Eclipse, i tasti e le combinazioni di tasti sono assegnati per richiamare specifici comandi.

Combinazioni di tasti, sequenze di tasti e associazioni di tasti

Si definisce una "combinazione di tasti" quando si preme un tasto della tastiera, mentre si tiene premuto uno dei seguenti modificatori di tasto: Ctrl, Alt (Opzione su Macintosh), Maiusc, o Comando (solo su Macintosh.) Ad esempio, mantenendo premuto Ctrl e premendo A si produce una combinazione Ctrl+A. Premuti da soli i modificatori non rappresentano una combinazione di tasti.

Una "sequenza di tasti" è costituita da una o più combinazioni. Solitamente, emacs assegna due o più sequenze di combinazioni a particolari comandi. Ad esempio, la sequenza di tasti normalmente assegnata a Chiudi tutti in emacs è Ctrl+X Ctrl+C. Per immettere questa sequenza, si deve premere la combinazione Ctrl+X seguita dalla combinazione Ctrl+C. Eclipse supporta sequenze di tasti di lunghezze arbitrarie.

Una " associazione di tasti" è l'assegnazione di una sequenza di tasti ad un comando.

Configurazioni

Una "configurazione" è un insieme di associazioni di tasti. Eclipse include due configurazioni:

La configurazione Standard contiene un insieme generale di associazioni di tasti, in molti casi note agli utenti come sequenze tradizionali. Ad esempio, Ctrl+A è assegnato a Seleziona tutto, Ctrl+S è assegnato a Salva, ecc.

La configurazione Emacs contiene un insieme di associazioni di tasti familiari per gli utenti di emacs. Ad esempio, Ctrl+X H è assegnato a Seleziona tutto, Ctrl+X S è assegnato a Salva, ecc.

È importante capire cosa si intende dicendo che la configurazione Emacs "estende Standard". La configurazione Emacs non è un insieme di associazioni di tasti completo come la configurazione Standard. Al contrario utilizza spesso associazioni prese dalla configurazione Standard, quando possibile, definendo esplicitamente associazioni di tasti in stile emacs quando queste sono diverse dalla configurazione Standard. Generalmente, solo comandi molto utilizzati come Seleziona tutti, Salva, ecc., hanno associata una sequenza di tasti specifica di emacs.

L'utente può decidere la configurazione preferita modificando l'impostazione "Configurazione attiva" nella pagina delle preferenze Tasti. Se l'utente sceglie la configurazione Standard, tutte le associazioni di tasti Emacs saranno ignorate. Se l'utente sceglie la configurazione Emacs, le assegnazioni di tasti in stile emacs hanno la precedenza su qualsiasi assegnazione in conflitto della configurazione Standard.

Ambiti

Le associazioni di tasti possono variare in base al contesto di Eclipse corrente.

A volte, la parte attiva potrebbe essere un editor di file Java, ad esempio, per il quale sarebbe più opportuno utilizzare un insieme di assegnazioni di sequenze di tasti diverso da quello di un editor di file html. Nell'esempio specifico, Ctrl+B è assegnato a Genera nel contesto di un editor di file Java, mentre Ctrl+B viene assegnato a Metti in grassetto nel contesto di un editor di file html. Questo contesto viene definito "ambito" ed è determinato dalla parte attiva. Se la parte attiva non seleziona un ambito particolare, il workbench imposterà l'ambito attivo a Globale.

Eclipse include tre ambiti diversi. Essi comprendono:

Come le configurazioni, gli ambiti possono estendere altri ambiti. Ad esempio, l'ambito dell'Editor Java utilizza associazioni di tasti dell'ambito Editor di testo, che a sua volta utilizza associazioni di tasti dell'ambito Globale.

Piattaforma e locale

Le associazioni di tasti variano anche in funzione della piattaforma e delle impostazioni internazionali. Su piattaforma Macintosh, al comando Salva è assegnato Comando+S, invece di Ctrl+S. Per la locale cinese zh, a Assistente ai contenuti è assegnato Alt+/ invece di Ctrl+Spazio.

La piattaforma corrente e l'impostazione della locale viene determinata all'avvio di Eclipse, e non viene modificata per la durata di una istanza Eclipse.

Personalizzazione delle associazioni di tasti

Quando si personalizzano le associazioni di tasti occorre considerare molti aspetti relativi alle combinazioni, sequenze, configurazioni e ambiti dei tasti. Per semplificare le operazioni, tutte le personalizzazioni sono effettuate nella pagina delle preferenze Tasti.

Per visualizzare la pagina delle preferenze Tasti, selezionare Finestra > Preferenze > Workbench > Tasti.

Pagina delle preferenze Tasti che mostra la configurazione attiva Emacs e il comando selezionato Chiudi

In questo esempio, è stata scelta Emacs come configurazione attiva e il comando Chiudi dall'elenco dei comandi. Le informazioni sul comando e le sue associazioni di tasti sono visualizzate a destra.

Si noti che Chiudi presenta due sequenze di tasti assegnate: Ctrl+F4 nella configurazione Standard e Ctrl+X K nella configurazione Emacs. Entrambi sono assegnati nell'ambito Globale. Pertanto se l'utente imposta la configurazione Standard attiva, a Chiudi viene assegnato Ctrl+F4 e non Ctrl+X K. Pertanto se l'utente imposta la configurazione Emacs attiva, a Chiudi viene assegnato Ctrl+X H. Tuttavia, poiché la configurazione Emacs utilizza anche alcune associazioni di tasti prese dalla configurazione Standard, anche Ctrl+F4 sarà assegnato a Chiudi, sempre che Ctrl+F4 non sia stato assegnato ad un altro comando nella configurazione Emacs.

Sotto l'elenco delle associazioni di tasti assegnate a Chiudi, è possibile aggiungere o eliminare le associazioni di tasti. Per impostazione predefinita, viene selezionato l'ambito Globale e la configurazione attiva per l'utente (in precedenza era stata modificata in Emacs).

Se immettiamo una sequenza di tasti Ctrl+W, il pulsante "Aggiungi" viene abilitato. Inoltre, sotto il pulsante Aggiungi viene visualizzato un elenco dei comandi ai quali è già assegnata la sequenza di tasti Ctrl+W. Attualmente Ctrl+W è assegnato al comando Taglia nell'ambito Globale e configurazione Emacs. Premendo il pulsante "Aggiungi" Ctrl+W viene assegnato a Chiudi.

Pagina delle preferenze Tasti, che assegna la sequenza di tasti Ctrl+W al comando Chiudi

Ctrl+W viene ora visualizzato nell'elenco di sequenze di tasti assegnate a Chiudi. Si noti che una piccola immagine di "modifica" Piccola immagine grafica che rappresenta una modifica che indica che questa associazione di tasti ha modificato un'associazione esistente. La nuova associazione di tasti sostituisce realmente la precedente assegnazione di Ctrl+W a Taglia. Questa modifica può essere eliminata in qualsiasi momento per selezionando la nuova associazione e premendo il pulsante "Rimuovi". Verrà automaticamente ripristinata la precedente assegnazione di Ctrl+W a Taglia.

Pagina delle preferenze Tasti che mostra la nuova assegnazione con immagine di modifica

Selezionando il comando Taglia, si può verificare il risultato della modifica. Si noti la piccola immagine grafica "meno" Piccola immagine grafica 'meno' che indica che l'associazione di tasti è stata eliminata. Questa associazione di tasti può essere ripristinata in qualsiasi momento selezionandola e premendo il pulsante "Ripristina"; in questo modo si elimina la nuova associazione di tasti aggiunta in precedenza.

Pagina delle preferenze Tasti che mostra il comando Taglia

Supponiamo di voler assegnare un'altro tasto a Taglia nella configurazione Emacs, ad esempio Ctrl+Alt+W. Aggiungendola con la procedura utilizzata in precedenza si ottengono i seguenti risultati. Si noti la piccola immagine grafica "più" Piccola immagine grafica 'più' che indica che l'associazione di tasti è stata aggiunta dall'utente, ed in precedenza era stata eliminata l'assegnazione:

Pagina delle preferenze Tasti che aggiunge la sequenza di tasti Ctrl+Alt+W a Chiudi

Natura dinamica delle associazioni di tasti

Le associazioni di tasti sono fornite dai plug-in, e in Eclipse i plug-in possono essere aggiunti o rimossi. Pertanto le associazioni di tasti dichiarate in questi plug-in possono essere aggiunte o rimosse. Eclipse memorizza le associazioni di tasti personalizzate in modo da compensare automaticamente questa situazione. Consideriamo l'esempio precedente dove Ctrl+Alt+W è stato assegnato a Taglia nella configurazione Emacs. Supponiamo che l'utente installi un nuovo plug-in che assegna Ctrl+Alt+W ad uno specifico comando. Eclipse manterrà l'assegnazione dell'utente per Taglia, ma visualizzerà l'associazione di tasti con la piccola immagine grafica di "modifica" invece che con l'immagine "più".

Risoluzione dei conflitti

Esiste un numero finito di combinazioni di tasti semplici disponibili per l'assegnazione ad un numero elevato di comandi. Sono state illustrate la configurazione, ambito, piattaforma e impostazioni internazionali per assegnazioni di sequenze di tasti in domini che non sono in conflitto tra loro. Consideriamo il caso di Ctrl+B nel caso di mancanza di ambiti. Un plug-in potrebbe assegnare Ctrl+B a Genera, e un altro plug-in potrebbe assegnare Ctrl+B a Metti in grassetto. In che modo Eclipse può risolvere il conflitto?

Sebbene il numero di conflitti sia notevolmente ridotto dall'uso del meccanismo precedentemente illustrato, i conflitti possono sempre verificarsi. Due plug-in, indipendenti tra loro, potrebbero assegnare la stessa sequenza di tasti a comandi diversi con lo stesso ambito, configurazione, piattaforma e impostazioni internazionali. Supponiamo che un plug-in abbia assegnato a uno di questi comandi la sequenza Ctrl+F4 nell'ambito Globale e la configurazione Standard. Questo entra in conflitto diretto con Eclipse per l'assegnazione di Ctrl+F4 al comando Chiudi nello stesso ambito e configurazione.

Questo è un caso di conflitto. Non è corretto richiamare entrambi i comandi, né scegliere tra uno dei due. L'operazione corretta da eseguire è ignorare entrambe le associazioni, rendendo Ctrl+F4 inattivo per questo ambito e configurazione.

Conflitti di questa natura sono visualizzati nella seguente pagina delle preferenze Tasti. Si noti il testo in rosso e la parola "[conflitto]":

Pagina delle preferenze Tasti che mostra un conflitto per la sequenza di tasti Ctrl+F4

Questi tipi di conflitti possono essere risolti dall'utente assegnando esplicitamente la sequenza di tasti ad uno dei comandi.

Un altro tipo di conflitto può essere generato da sequenze di tasti con combinazioni di tasti multiple. Ad esempio, nella configurazione Emacs, ci sono molte sequenze di combinazioni che iniziano con la combinazione Ctrl+X. Ctrl+H K è assegnato a Chiudi. Ctrl+X H è assegnato a Seleziona tutti.

Come ricordato in precedenza, la configurazione Emacs utilizza alcune associazioni di tasti prese dalla configurazione Standard. Nella configurazione Standard, Ctrl+X è assegnato a Taglia. Anche se la configurazione Emacs non ridefinisce esplicitamente Ctrl+X, Ctrl+X è richiesto come parte di molte associazioni di tasti. Nella configurazione Emacs, quando preme Ctrl+X, l'utente immette la prima parte di molte delle sequenze di tasti assegnate. L'utente non si aspetta di richiamare in questo modo l'azione Taglia.

Per questo tipo di conflitto, la regola è che la sequenza di tasti Ctrl+X assegnata a Taglia deve essere ignorata. In caso contrario, non sarebbe possibile completare molte associazioni di tasti nella configurazione Emacs.

Argomenti correlati
Funzioni di accessibilità di Eclipse
Modifica delle associazioni di tasti
Sistema della Guida in linea

Riferimenti correlati
Impostazioni del tipo di carattere e del colore in Eclipse

Copyright IBM Corporation e altri 2000, 2002. Tutti i diritti riservati.