애플리케이션 내에서 열린 창 사이를 전환하기 위해 Openbox에서 키 바인딩을 설정할 수 있습니까? gnome 3에서 alt + [Tab 위의 키]를 사용하는 것과 같습니다.
답변1
이 기능을 구현하기 위해 wmctrl을 사용했습니다.
openbox의 rc.xml 관련 부분:
<keybind key="A-space">
<action name="execute">
<execute>wmctrl-switch-by-application</execute>
</action>
</keybind>
다음은 wmctrl-switch-by-application의 코드입니다.
# taken from https://unix.stackexchange.com/questions/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
답변2
모든 데스크탑의 창 간을 전환할 수 있으며 데스크탑 자체와 패널도 전환할 수 있습니다.언박싱 작업페이지에 있지만 동일한 애플리케이션의 창 간에 전환할 수 없는 것 같습니다.
답변3
Alt 및 Tab 키를 눌러 열려 있는 창이나 응용 프로그램 간에 전환할 수 있습니다. 동일한 프로그램의 창이 두 개 열려 있는 경우에도 마찬가지입니다.