Können Sie in Openbox zwischen Fenstern innerhalb einer Anwendung wechseln?


Antworten:


13

Ich habe diese Funktion mit wmctrl implementiert.

Der relevante Teil in rc.xml von openbox:

<keybind key="A-space">
  <action name="execute">
    <execute>wmctrl-switch-by-application</execute>
  </action>
</keybind>

Unten ist der Code in wmctrl-switch-by-application:

# taken from /unix/26546/can-you-switch-between-windows-within-an-application-in-openbox
# taken from: http://www.st0ne.at/?q=node/58

# get id of the focused window
active_win_id=$(xprop -root | grep '^_NET_ACTIVE_W' | awk -F'# 0x' '{print $2}')

# get window manager class of current window
win_class=$(wmctrl -x -l | grep $active_win_id | awk '{print $2 " " $3}' )

# get list of all windows matching with the class above
win_list=$(wmctrl -x -l | grep -- "$win_class" | awk '{print $1}' )

# get next window to focus on
switch_to=$(echo $win_list | sed s/.*$active_win_id// | awk '{print $1}')

# if the current window is the last in the list ... take the first one
if [ -z "$switch_to" ];then
   switch_to=$(echo $win_list | awk '{print $1}')
fi

# switch to window
wmctrl -i -a $switch_to

Vielen Dank! Wenn Sie die Alt-Rücktaste als Umschalttaste verwenden möchten, verwenden Sie `<keybind key =" A-grave ">`
cayhorstmann

Zur Info: Wer eine minimale ArchLinux Installation läuft wahrscheinlich installieren müssen wmctrlund xorg-xprop.
Brad Johnson

1

Sie können zwischen Fenstern aller Desktops wechseln oder sogar den Desktop selbst und die Bedienfelder einbeziehen, wie auf der Seite Openbox-Aktionen beschrieben. Es scheint jedoch keine Möglichkeit zu geben, zwischen Fenstern derselben Anwendung zu wechseln.


1

Sie können zwischen jedem geöffneten Fenster oder jeder geöffneten Anwendung wechseln, indem Sie Alt und Tab drücken. Auch wenn zwei Fenster desselben Programms geöffnet sind.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.