Tasten

Die Funktion der Tastatur kann in Eclipse auf der Befehlslink Allgemein > Tasten umfangreich 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.

Schemata

Eine "Schema" ist eine Gruppe von Tastenbelegungen. Eclipse enthält zwei Schemen:

Das Schema Standard enthält einen allgemeinen Satz an Tastenbelegungen, der in vielen Fällen als traditionelle Tastenkombination für gängige Befehle bekannt ist. Beispielsweise ist die Kombination Strg+A dem Befehl Alles auswählen zugeordnet und Strg+S ist dem Befehl Speichern zugeordnet.

Das Emacs-Schema 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 und die Kombination Strg+X S dem Befehl Speichern zugeordnet.

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

Sie können das für Sie am meisten geeignete Schema auswählen, indem Sie die Einstellung "Schema" auf der Benutzervorgabenseite "Tasten" ändern. Bei Auswahl des Schemas Standard werden alle Emacs-Bindings ignoriert. Falls Sie das Schema Emacs auswählen, haben explizite Tastenkombinationszuordnungen in Emacs-Darstellung Vorrang vor allen anders lautenden Zuordnungen im Schema 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 Build 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 eine Reihe verschiedener Kontexte. Hierzu zählen beispielsweise:

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 Inhaltshilfe 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 einer Eclipse-Instanz nicht.

Tastenbelegungen anpassen

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

Benutzervorgabenseite 'Tasten' und Befehl 'Info über' ohne Belegung

In diesem Beispiel belegen Sie die Tastenkombination Strg+5 mit dem Befehl Info über. Standardmäßig zeigt die Benutzervorgabenseite Tasten alle Tastenbelegungen an, die möglich sind. Sie sehen, dass der Befehl 'Info über' in der Kategorie 'Hilfe' aufgeführt ist. Sie können den Befehl der Taste zuordnen, indem Sie den Fokus in das Textfeld 'Binding' setzen und wie bei der Befehlsausführung die Tasten 'Strg' und '5' gleichzeitig drücken.

Benutzervorgabenseite 'Tasten' mit Belegung von 'Strg-5' für den Befehl 'Info über'

Wenn Sie 'Strg+5' drücken, erstellen Sie eine Belegung für 'Info über'. Die Spalte ganz rechts zeigt an, dass es sich hierbei um eine Benutzerbelegung handelt, indem Sie ein U anzeigt. Wenn es einen Konflikt mit einer anderen Taste gäbe, würde in dieser Spalte außerdem ein C angezeigt. Die Belegung wird in den Standardkontext "In Fenstern" gestellt. Nun können Sie das kombinierte Feld Zeitpunkt verwenden, um den Tastenbelegungskontext zu ändern (z. B. um diese Belegung nach "Text bearbeiten" zu versetzen).

Wenn Sie dem Befehl 'Info über' eine zweite Belegung zuordnen möchten, können Sie mit der Schaltfläche Befehl kopieren einen zweiten Befehlseintrag erstellen, mit dem eine weitere Taste belegt wird. Wenn Sie eine Belegung löschen möchten, können Sie entweder die Schaltfläche Binding entfernen verwenden oder den Fokus einfach in das Textfeld Binding stellen und die Rücktaste drücken.

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 kompensiert. Angenommen, Sie würden im vorstehenden Beispiel die Tastenkombination Strg+6 dem Befehl Info über im Schema Standard zuordnen. Gehen Sie weiter davon aus, dass Sie ein neues Plug-in installieren, das Strg+6 einem bestimmten Befehl zuordnet. Eclipse behält in diesem Fall die Zuordnung zum Befehl Info über bei.

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 das Schema, 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, Schema, Plattform und Ländereinstellung zuordnen. Angenommen, ein Plug-in würde Strg+F4 in dem Kontext In Fenstern und in dem Schema Standard 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 dasselbe Schema 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. Wir rufen den Dialog Hilfe für Tastenbelegung... mit im Konflikt stehenden Befehlen auf und ermöglichen dem Benutzer, einen der Befehle auszuwählen. Der Dialog Hilfe für Tastenbelegung... ist derselbe wie der, der Auswahlmöglichkeiten von Befehlen für Tastenbelegungen mit mehreren Tastenanschlägen anzeigt. Beispiel: Wenn zwei Befehle auf die Taste F12 gelegt wurden, erhalten Sie möglicherweise Folgendes:

Dialog 'Hilfe für Tastenbelegung'

Wenn der Benutzer eine Tastenbelegung einrichtet und einen Konflikt auslöst, werden die Belegungen, die miteinander in Konflikt stehen, in der Liste 'Konflikt' angezeigt. Diese kann verwendet werden, um zwischen Tastenbelegungen zu navigieren, die in Konflikt miteinander stehen, um diese zu ändern.

Konfliktliste der Benutzervorgabenseite 'Tasten'

Solche Konflikte können dadurch aufgelöst werden, dass die Tastenkombination explizit zu einem der Befehle zugeordnet oder von einem der Befehle entfernt wird.

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

Wie bereits erläutert übernimmt das Schema Emacs Tastenbelegungen aus dem Schema Default. In dem Schema "Standard" ist Strg+X dem Befehl Ausschneiden zugeordnet. Obwohl das Schema Emacs die Kombination Strg+X nicht explizit neu definiert, ist das Drücken von Strg+X bei vielen Tastenbelegungen in diesem Schema erforderlich. Wenn der Benutzer in dem Schema 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.

Zugehörige Konzepte
Eingabehilfen in Eclipse
Tastaturzuordnungen ändern
Hilfe

Zugehörige Referenzinformationen
Schriftart- und Farbeinstellungen in Eclipse