Tasten

Die Funktion der Tastatur kann in Eclipse intensiv angepasst werden. Innerhalb von Eclipse sind Tastenanschläge und Tastenkombinationen dem Aufrufen von bestimmten Befehlen zugeordnet.

Tastenanschläge, Tastenkombinationen und Tastenbelegungen

Ein "Tastenanschlag" besteht aus dem Drücken einer Taste auf der Tastatur, wobei optional eine oder mehrere der folgenden Kombinationstasten gedrückt gehalten werden können: Strg, Alt (Option bei Macintosh), Umschalttaste oder Befehl (nur bei Macintosh.) Wenn Sie beispielsweise die Taste Strg gedrückt halten und dann die Taste A drücken, entsteht der Tastenanschlag Strg+A. Das Drücken der Kombinationstasten selbst stellt keinen Tastenanschlag dar.

Eine Tastenkombination besteht aus einem oder mehreren Tastenanschlägen. Emacs ordnet traditionell zwei oder mehr Tastenkombinationen aus Tastenanschlägen zu bestimmten Befehlen zu. Die normale Tastenkombination, die in Emacs dem Befehl Alle schließen zugeordnet ist, ist Strg+X Strg+C. Zur Eingabe dieser Tastenkombination muss der Tastenanschlag Strg+X und dann der TastenanschlagStrg+C gedrückt werden. Obschon Eclipse Tastenkombinationen beliebiger Länge unterstützt, wird empfohlen, die Länge eines Direktaufrufs über die Tastatur auf Tastenbetätigungen (oder weniger) zu beschränken.

Eine "Tastenbelegung" ist die Zuordnung einer Tastenkombination zu einem Befehl.

Konfigurationen

Eine "Konfiguration" ist eine Gruppe von Tastenbelegungen. Eclipse enthält zwei Konfigurationen:

Die Konfiguration Standard enthält einen allgemeinen Satz an Tastenbelegungen, der dem Benutzer in vielen Fällen als traditionelle Tastenkombination bekannt ist. Beispielsweise ist die Kombination Strg+A dem Befehl Alles auswählen zugeordnet, die Kombination Strg+S dem Befehl Speichern usw.

Die Emacs-Konfiguration enthält einen Satz an Tastenbelegungen, mit dem der Benutzer von Emacs vertraut ist. Beispielsweise ist die Kombination Strg+X H dem Befehl Alles auswählen zugeordnet, die Kombination Strg+X S dem Befehl Speichern usw.

An dieser Stelle muss unbedingt erläutert werden, warum die Konfiguration Emacs als "Erweiterung" der 'Standard' gilt. Bei der Emacs-Konfiguration handelt es sich nicht um einen kompletten Satz an Tastenbelegungen, wie bei der Konfiguration Standard. Sie übernimmt vielmehr, wo möglich, die für sie gültigen Elemente aus der Konfiguration Standard und definiert nur in den Fällen explizite emacs-Tastenbelegungen, in denen Abweichungen zur Konfiguration Standard gegeben sind. Im Allgemeinen sind nur den gängigsten Befehlen wie Alles auswählen, Speichern usw. spezifische emacs-Tastenkombinationen zugeordnet.

Der Benutzer entscheidet, welche Konfiguration für ihn am passendsten ist. Hierzu wird die Einstellung "Aktive Konfiguration" auf der Benutzervorgabenseite "Tasten" geändert. Wenn der Benutzer die Konfiguration Standard auswählt, werden alle Tastenbelegungen aus Emacs ignoriert. Wählt er hingegen die Konfiguration Emacs aus, haben explizite emacs-Tastenkombinationen Vorrang vor allen entsprechenden Zuordnungen in der Konfiguration Standard.

Kontexte

Tastenbelegungen können abhängig vom aktuellen Eclipse-Kontext variieren.

Wenn eine aktive Komponente beispielsweise ein Editor für Java-Dateien ist, kann unter Umständen eine andere Zuordnungsgruppe von Tastenkombinationen geeignet sein als bei einem Editor für HTML-Dateien. Normalerweise ist z. B. die Kombination Strg+B im Kontext für die Bearbeitung einer Java-Datei dem Befehl Erstellen zugeordnet, im Kontext für die Bearbeitung einer HTML-Datei hingegen dem Befehl Fettschrift. Dieser Kontext wird üblicherweise durch die aktive Komponente festgelegt, er kann aber auch durch das aktive Fenster oder den Dialog beeinflusst werden. Wenn die aktive Komponente keinen bestimmten Kontext auswählt, legt die Workbench den aktiven Kontext auf In Windows fest.

Eclipse enthält sieben verschiedene Kontexte. Sie sind die Folgenden:

Ganz ähnlich wie Konfigurationen können auch Kontexte andere Kontexte erweitern. Der Kontext Java-Quelle bearbeiten übernimmt beispielsweise Tastenbelegungen aus dem Kontext Text bearbeiten, der wiederum Tastenbelegungen aus dem Kontext In Fenstern übernimmt.

Hinweis: Es wird nicht empfohlen, eine Tastenbelegung in einen Kontext hochzustufen, der sie erweitert. Zum Beispiel wird nicht empfohlen, die Tastenbelegung Text bearbeiten in den Kontext In Dialogen und Fenstern zu verschieben. Dies kann unerwartete Folgen haben.

Es ist möglich, dass einige Tastenbelegungen in Dialogen funktionieren. Diese Tastenbelegungen sind dem Kontext In Dialogen und Fenstern zugeordnet. Ein Beispiel für eine solche Tastenbelegung ist die Tastenbelegung für "Ausschneiden". Es ist möglich, diese Tastenbelegungen zu ändern. So ist es zum Beispiel möglich, Strg+X als 'Ausschneiden' in Dialogen aber Strg+W als 'Ausschneiden' in Fenstern zu haben.

Plattform und Ländereinstellung

Tastenbelegungen variieren je nach Plattform und Ländereinstellung. Auf der Macintosh-Plattform ist dem Befehl Speichern anstelle der üblichen Kombination Strg+S die Kombination Befehl+S zugeordnet. Bei Ländereinstellungen für Chinesisch (zh) ist dem Befehl Unterstützung für Inhalt anstelle der üblichen Kombination Strg+Leertaste die Kombination Alt+/ zugeordnet.

Die aktuelle Plattform und Ländereinstellung wird beim Start von Eclipse ermittelt und ändert sich während der Verwendungsdauer eines Eclipse-Exemplars nicht.

Tastenbelegungen anpassen

Bei der Anpassung von Tastenbelegungen müssen aufgrund von mehrteiligen Tastenkombinationen, Konfigurationen und Kontexten viele Punkte berücksichtigt werden. Zur Vereinfachung wird die gesamte Tastenanpassung auf der Benutzervorgabenseite "Tasten" vorgenommen.

Wählen Sie die Optionen Fenster > Benutzervorgaben > Workbench > Tasten aus, um die Benutzervorgabenseite "Tasten" zu öffnen.

Benutzervorgabenseite 'Tasten' mit aktiver Konfiguration 'Emacs' und ausgewähltem Befehl 'Schließen'

In diesem Beispiel wurde Emacs als aktive Konfiguration und der Befehl Schließen in der Liste der Befehle ausgewählt. Es werden Informationen über diesen Befehl, zusammen mit deiner aktuellen Tastenbelegung, gegeben.

Bitte beachten Sie, dass dem Befehl Schließen drei Tastenkombinationen zugeordnet sind:Strg+F4 und Strg+W in der Konfiguration Standard und Strg+X K in der Konfiguration Emacs. Beide Kombinationen sind dem Kontext In Fenstern zugeordnet. Wenn der Benutzer daher die aktive Konfiguration auf Standard setzt, wird Strg+F4 und Strg+W dem Befehl Schließen zugeordnet, während das bei Strg+X K nicht der Fall ist. Setzt der Benutzer die aktive Konfiguration jedoch aufEmacs wird die KombinationStrg+X K dem Befehl Schließen zugeordnet. Da die Konfiguration Emacs aber auch Tastenbelegungen aus der Konfiguration Standard übernimmt, wird auch die Kombination Strg+F4 und Strg+W dem Befehl Schließen zugeordnet, sofern diese Tastenbelegungen in der Konfiguration Emacs nicht einem anderen Befehl zugeordnet sind. In diesem Beispiel ist "Strg+W" dem befehl Ausschneiden in der Emacs-Tastenkonfiguration zugeordnet.

Unterhalb der Liste mit den Tastenkombinationen, die dem Befehl Schließen zugeordnet ist, befindet sich ein Bereich, in dem Sie Tastenbelegungen hinzufügen oder entfernen können. Als Standardeinstellung wird der Kontext In Fenstern ausgewählt.

Wenn Sie die Tastenkombination Strg+W eingeben, wird die Schaltfläche "Hinzufügen" aktiviert. Außerdem wird unter der Schaltfläche "Hinzufügen" eine Liste mit allen Befehlen angezeigt, denen bereits die Kombination Strg+W zugeordnet wurde. Sie können feststellen, dass Strg+W gegenwärtig dem Befehl Ausschneiden in dem Kontext In Fenstern und Dialogen zugeordnet ist. Wenn Sie nun auf die Schaltfläche "Hinzufügen" klicken, wird Strg+W dem Befehl Schließen zugeordnet.

Als Nächstes sehen Sie, dass Strg+W zur Liste der Tastenkombinationen hinzugefügt wurde, die dem Befehl Schließen zugeordnet sind. Achten Sie auf das kleine Änderungssymbol Kleines Symbol für Änderung. Es gibt an, dass diese Tastenbelegung eine vorhandene Tastenbelegung ändert. Unsere neue Tastenbelegung stellt sicher, dass die Tastenbelegung Strg+W für den Befehl Schließen in der Emacs-Tastenkonfiguration funktioniert. Die Zuordnung zu Ausschneiden existiert immer noch, funktioniert aber nur in Dialogen (d.h., wenn wir uns "in Dialogen und Fenstern", aber nicht "in Fenstern") befinden. Diese Änderung können Sie jederzeit entfernen, indem Sie die neue Tastenbelegung auswählen und auf die Schaltfläche "Entfernen" klicken. Dann wird die vorherige Zuordnung von Strg+W zu Ausschneiden automatisch wiederhergestellt.

Benutzervorgabenseite 'Tasten' mit neuer Zuordnung und Änderungssymbol

Durch Auswahl des Befehls Ausschneiden können Sie das Ergebnis der Änderung anzeigen. Beachten Sie die Grafik Kleine Grafik zur Darstellung von 'minus', die anzeigt, dass die Tastenbelegung entfernt wurde. Sie können diese Tastenbelegung jederzeit wiederherstellen, indem Sie sie an dieser Stelle auswählen und auf die Schaltfläche "Wiederherstellen" klicken.Hierdurch wird effektiv die neue Tastenbelegung entfernt, die im vorherigen Schritt hinzugefügt wurde.

Benutzervorgabenseite 'Tasten' mit Befehl 'Ausschneiden'

Als Nächstes soll dem Befehl Ausschneiden in der Konfiguration Emacs eine andere Taste zugeordnet werden, nämlich Strg+Alt+W. Wenn Sie hierbei so vorgehen, wie dies in der vorstehenden Prozedur beschrieben ist, erzielen Sie das folgende Ergebnis. Achten Sie auf die kleine Grafik mit dem Pluszeichen Kleine Grafik mit Pluszeichen. Sie gibt an, dass die Tastenbelegung durch den Benutzer hinzugefügt wurde und zuvor noch nicht zugeordnet war:

Benutzervorgabenseite 'Tasten', die die Tastenkombination Strg+Alt+W dem Befehl 'Schließen' hinzufügt

Dynamischer Charakter von Tastenbelegungen

Tastenbelegungen werden durch Plug-ins bereitgestellt, und in Eclipse können Plug-ins hinzugefügt und entfernt werden. Dies kann dazu führen, dass Tastenbelegungen, die durch Plug-ins deklariert werden, hinzugefügt oder entfernt werden. Eclipse speichert angepasste Tastenbelegungen auf eine Weise, die diesen Umstand automatisch kompensiert. Angenommen, Sie würden im vorstehenden Beispiel die Kombination Strg+Alt+W zum Befehl Ausschneiden in der Konfiguration Emacs hinzufügen, und der Benutzer würde anschließend ein neues Plug-in installieren, das die Kombination Strg+Alt+W einem bestimmten Befehl zuordnet. Eclipse behält die Zuordnung des Benutzers zum Befehl Ausschneiden bei, zeigt jedoch die Tastenbelegung mit dem kleinen Änderungssymbol und nicht mit der Grafik mit dem Pluszeichen an.

Konfliktlösung

Es gibt nur eine begrenzte Anzahl von einfachen und häufig verwendeten Tastenanschlägen, die einer Vielzahl von Befehlen zugeordnet sein können. Wie bereits erläutert partitionieren die Konfiguration, der Kontext, die Plattform und die Ländereinstellung Tastenkombinationszuordnungen in Domänen, in denen sie nicht miteinander im Konflikt stehen. Stellen Sie sich zur Veranschaulichung vor, dass die oben beschriebene Kombination Strg+B ohne das Vorhandensein von Kontexten verwendet würde. Ein Plug-in würde Strg+B zum Befehl Erstellen zuordnen, und ein anderes Plug-in würde Strg+B zum Befehl Fettschrift zuordnen. Wie könnte Eclipse diesen Konflikt richtig auflösen?

Konflikte werden durch die oben beschriebenen Mechanismen zwar drastisch reduziert, aber nicht gänzlich ausgeschlossen. Zwei voneinander unabhängige Plug-ins könnten dieselbe Tastenkombination zu unterschiedlichen Befehlen mit denselben Werten für Kontext, Konfiguration, Plattform und Ländereinstellung zuordnen. Angenommen, ein Plug-in würde Strg+F4 in dem Kontext In Fenstern und in der KonfigurationStandard einem seiner Befehle zuordnen. Dies stünde in direktem Konflikt mit der Eclipse-eigenen Zuordnung vonStrg+F4 zum Befehl "Schließen", die für denselben Geltungsbereich und dieselbe Konfiguration gültig wäre.

Dies ist ein Konflikt. Das Aufrufen beider Befehle ist in einem solchen Fall ebensowenig eine Lösung wie die Auswahl lediglich eines der Befehle für den Tastenanschlag. Die einzig richtige Lösung ist es, beide Tastenbelegungen zu ignorieren und die Kombination Strg+F4 in diesem Kontext und dieser Konfiguration letztlich unwirksam zu machen.

Konflikte dieser Art werden auf der Benutzervorgabenseite "Tasten" dargestellt. Achten Sie auch den roten Text und die Angabe "[Konflikt]":

Solche Konflikte können dadurch aufgelöst werden, dass der Benutzer die Tastenkombination explizit zu einem der Befehle zuordnet.

An anderer Konflikt kann durch Tastenkombinationen mit mehreren Tastenanschlägen entstehen. In der KonfigurationEmacs gibt es beispielsweise viele Tastenkombinationen mit mehreren Tastenanschlägen, die mit dem Tastenanschlag Strg+X beginnen. Strg+H K ist dem Befehl Schließen zugeordnet. Strg+X H ist dem Befehl Alles auswählen zugeordnet.

Wie bereits erläutert übernimmt die Konfiguration Emacs Tastenbelegungen aus der Konfiguration Standard. In der Konfiguration "Standard" ist Strg+X dem Befehl Ausschneiden zugeordnet. Obwohl die Konfiguration Emacs die Kombination Strg+X nicht explizit neu definiert, ist das Drücken von Strg+X bei vielen Tastenbelegungen in dieser Konfiguration erforderlich. Wenn der Benutzer in der Konfiguration Emacs die Tasten Strg+X drückt, wird auf diese Weise die Hälfte vieler möglicher Tastenkombinationen eingegeben. Ein Aufruf der Aktion Ausschneiden wäre zu diesem Zeitpunkt unerwartet.

Bei einem solchen Konflikt gilt die Regel, dass die Tastenkombination Strg+X, die dem Befehl Ausschneiden zugeordnet ist, ignoriert wird. Andernfalls wäre es nicht möglich, viele Tastenbelegungen in der Konfiguration Emacs zu verwenden.

Verwandte Konzepte
Eingabehilfen in Eclipse
Tastaturzuordnungen ändern
Onlinehilfefunktion

Verwandte Referenzinformationen
Schriftart- und Farbeinstellungen in Eclipse

Rechtliche Hinweise