Wie kann ich eine Tastenkombination binden, die eine Registerkarte enthält

827
Davor Cubranic

Ich möchte die nächste / vorherige Tab-Verknüpfung in XFCEs Terminal von Ctrl+ PgDn/ PgUpnach Ctrl+ Tab/ Ctrl+ Shift+ erneut binden Tab. Es scheint nicht zu funktionieren, indem Sie accels.scmdie Verknüpfung bearbeiten oder interaktiv ändern, indem Sie den Mauszeiger über das Menü bewegen und die gewünschte Tastenkombination drücken.

Andere Tasten funktionieren gut, es sind nur Tastenkombinationen, die Tabein Problem darstellen. Ich gehe davon aus, dass diese für GTK etwas Besonderes sind und die Anwendung nicht erreichen. Gibt es eine Möglichkeit, dies zu überschreiben?

1

1 Antwort auf die Frage

1
clearkimura

Sie können die Tabulatortaste nicht für Tastenkombinationen verwenden, zumindest in Xfce Terminal.

Direkte Antworten

[...] es sind nur Verknüpfungen, die Tab betreffen, die ein Problem darstellen. Ich gehe davon aus, dass diese für GTK etwas Besonderes sind und die Anwendung nicht erreichen.

Ihre Annahme ist richtig. Die Einschränkung gilt für GTK + -Anwendungsprogramme, und Xfce Terminal ist eine davon. Und es sind nicht nur Tastenkombinationen, die die Tabulatortaste verwenden, sondern auch einige andere Tasten, z. B. PageUp, PageDown, F10, die nicht einzeln verwendet werden können (ohne Zusatztaste).

Gibt es eine Möglichkeit, dies zu überschreiben?

Wahrscheinlich nein, obwohl eine Problemumgehung existiert. Besser ist es, nach Alternativen zur Tabulatortaste zu suchen oder andere Anwendungsprogramme zu verwenden, die dies zulassen. Siehe auch die folgenden Erklärungen.

Erklärt durch Mitwirkende

Erstens gibt es den datierten Fehler 3524, der "Nächste / Vorherige Tabulator-Tastenkombinationen hat nichts" gemeldet. Der relevanteste Kommentar wurde unten zitiert.

[Kommentar 9: Nick Schermer 2009-10-10 13:49:08 CEST]

Xfwm und Terminal verwenden eine andere Methode, wenn Beschleuniger verarbeitet werden sollen (xfwm direkt von x, Terminal setzt auf gtk). Wird in gtk als ungültiger Beschleuniger behandelt, überprüft dieses Terminal vor dem Einstellen, ob der Beschleuniger gültig ist. Als Ergebnis bewirkt das Drücken von nun an im Verknüpfungseditor nichts.

Zweitens gibt es einen datierten Beitrag zum Stack Overflow mit der Aufforderung "PyGTK: Verwendung von Tab in AccelGroup zulassen". Ein relevanter Teil der Frage wurde unten zitiert.

Bei Verwendung von gtk.AccelGroup ist jede Kombination mit Tab-Zeichen ungültig. Jetzt verstehe ich, dass die Navigation der Benutzeroberfläche mit dieser Taste erfolgt. [...]

Erklärt durch Dokumentation

In Bezug auf "Die Navigation der Benutzeroberfläche erfolgt mit dieser Taste", hat die Dokumentation des GNOME-Entwicklers die Angelegenheit im Thema " Tastatureingabe" wie unten angegeben notiert .

Tastaturnavigation

[...] Tabist der Standardschlüssel, um eine Schnittstelle mit GTK + und GNOME zu bewegen.

Außerdem haben Verknüpfungen, die die Tabulatortaste verwenden, spezielle Funktionen.

Standardnavigationstasten

Tabund Shift+ Tab Bewegt den Tastaturfokus zum nächsten / vorherigen Steuerelement

Ctrl+ Tabund Shift+ Ctrl+ Tab Verschiebt den Tastaturfokus aus dem umschließenden Widget zum nächsten / vorherigen Steuerelement, wenn Tab nur eine andere Funktion hat

Ctrl+ Tabund Shift+ Ctrl+ Tab Verschiebt den Tastaturfokus zur nächsten / vorherigen Gruppe von Steuerelementen

Daher sind frühere Kommentare jetzt sinnvoll.

Überarbeitete Antwort (2017.04.04)

Obwohl die Tabulatortaste ^Ifür die Tabulatorvervollständigung als in der Befehlszeilen-Shell erkannt wird, hat sie die geringste Relevanz, da die Tabulatortaste nicht als Abkürzung in grafischen Anwendungsprogrammen verwendet werden kann.

Warum kann die Tabulatortaste nicht als Verknüpfung verwendet werden? Der Grund war einfach: Die Tabulatortaste und ihre Kombinationstasten sind von GTK + und GNOME reserviert.

Obwohl GNOME Terminal über GSettings die Verwendung der Tabulatortaste für Verknüpfungen zulässt, gibt es für Xfce Terminal über Xfconf keinen äquivalenten Hack zu diesem Antwortdatum.

Ja, Tab wird von der Shell interpretiert, aber Ihre ausführliche Erklärung bezieht sich nicht auf meine Frage: Warum kann Strg + Tab nicht als Abkürzung verwendet werden? Davor Cubranic vor 7 Jahren 1
Sieht aus, als hätte ich die Frage nicht vollständig verstanden. Dies kann also ein Xfce- oder GTK + -spezifisches Problem sein. Müssen Sie weiter forschen, bevor Sie die Antwort überarbeiten. clearkimura vor 7 Jahren 0
Überarbeitete meine Antwort. Obwohl der Grund einfach war, konnte ich keine direkte Antwort finden. Ich musste Text aus verschiedenen Quellen zitieren, was meine Antwort ohnehin langwierig macht. clearkimura vor 7 Jahren 0
Vielen Dank für das Update: Sie haben Recht, der GTK reserviert die Tab-Kombination in Beschleunigern, sodass die Apps sie nicht ohne Tricks verwenden können (wie Pidgin dies tut): https://bugzilla.gnome.org/show_bug.cgi id = 123994. Davor Cubranic vor 7 Jahren 0
Außerdem hat jemand einen Workaround mit gnome-terminal gefunden, der "Tab "und"Tab ": https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/162000/comments/13. Könnte so etwas auch in xfce-terminal verwendet werden, frage ich mich? Davor Cubranic vor 7 Jahren 1
Sie können `xfconf-query -l` ausführen, um zu sehen, ob Xfce Terminal über eine dedizierte Konfiguration verfügt. Es scheint keine zu geben. clearkimura vor 7 Jahren 0