Wie kann ich eine Verknüpfung zum Durchlaufen von Arbeitsbereichen in GNOME 3 erstellen?

Wie kann ich eine Verknüpfung zum Durchlaufen von Arbeitsbereichen in GNOME 3 erstellen?

Ich verwende Ubuntu 18.04. Ich kann die Option finden, die Tastaturkürzel zu ändern, um zu Arbeitsbereich 1, 2 usw. zu wechseln, aber es scheint keine Option zu geben, zum „nächsten Arbeitsbereich“ zu wechseln oder durch vorhandene Arbeitsbereiche zu blättern, wie ich es mit alt+ tun würde tab, um zwischen Fenstern zu wechseln.

Klicken Sie auf die Schaltfläche '+Die Schaltfläche ' im Fenster 'Tastaturkürzel' zum Erstellen eines benutzerdefinierten Tastaturkürzels würde wahrscheinlich funktionieren. Aber ich weiß nicht, welchen Befehl ich verwenden müsste.

Antwort1

DerArbeitsbereichsschalter WraparoundDie GNOME Shell-Erweiterung ermöglicht das Radfahren. Esoffiziellunterstützt bis zu GNOME Shell v3.32, funktioniert aber in der Praxis sogar auf Ubuntu 20.04 LTS (Focal Fossa).

Update Juni 2022: Es funktioniert auch einwandfrei auf Ubuntu 22.04 LTS.

Antwort2

Durch Arbeitsbereiche blättern

Es gibt keinen vorhandenen Befehl zum Durchlaufen von Arbeitsbereichen, aber wie immer können wir es schaffen.

Führen Sie das folgende Skript über eine praktische Verknüpfung aus und es führt genau das aus, was Sie beschreiben: Durchlaufen Sie die vorhandenen Arbeitsbereiche. Sobald der letzte erreicht ist, springt es zurück zum ersten.

NotizDass dynamische Arbeitsbereiche so eingestellt werden müssen,false

Das Drehbuch

Mithilfe von Wnckkönnen wir Informationen sowohl zu den (Listen-)Arbeitsbereichen als auch zum aktuellen Arbeitsbereich abrufen. Anschließend können wir auf organisierte Weise zu jedem anderen der aufgelisteten Arbeitsbereiche wechseln.

Bitte stellen Sie sicher, Wnckdass Folgendes installiert ist:

sudo apt install python3-gi gir1.2-wnck-3.0

Kopieren Sie dann das folgende Skript in eine leere Datei, speichern Sie es unter cycle_workspaces.py,ausführbar machenund führen Sie es über eine Verknüpfung Ihrer Wahl aus. (läuft: /path/to/cycle_workspaces.py)

#!/usr/bin/env python3
import gi
gi.require_version("Wnck", "3.0")
gi.require_version("Gtk", "3.0")
from gi.repository import Wnck, Gtk

scr = Wnck.Screen.get_default()
scr.force_update()

# list existing workspaces
workspaces = scr.get_workspaces()
# get the (index of) current one
currws = workspaces.index(scr.get_active_workspace())
# since first in list has index 0, subtract 1, if index is last,
# move to first index of the list (workspaces)
if currws == len(workspaces) - 1:
    next_workspace = workspaces[0]
# else pick the next in list
else:
    next_workspace = workspaces[currws + 1]
# and activate it...
next_workspace.activate(Gtk.get_current_event_time())

Genießen!

verwandte Informationen