Alt-`используется для переключения между окнами приложения в текущем окне просмотра в Unity.
Есть ли еще одна комбинация клавиш для переключения между окнами приложения во всех видовых экранах?
Я не хочу изменять поведение по умолчанию Alt -`, которое переключается между окнами приложения в текущем окне просмотра.
Я использую Ubuntu 14.04 и Unity.
Откройте терминал и введите следующую команду:
dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport false
В качестве альтернативы вы можете установить инструмент Unity Tweak Tool:
sudo apt-get install unity-tweak-tool
unity-tweak-tool
Затем включить переключатель между окнами на всех рабочих пространствах в вкладке Switcher:
Обзор
Следующий сценарий должен быть совместим со всеми менеджерами окон, совместимыми с EWMH (например, xfwm4, openbox, kwin, compiz ...). Он использует wmctrl и xprop, которые могут быть установлены с помощью:
sudo apt-get install x11-utils wmctrl
Обзор
Скопируйте и сохраните следующий фрагмент как simple-window-switcher:
#!/bin/bash
# based on a script by Robert Steiniger
# (http://lars.st0ne.at/blog/switch%20between%20windows%20within%20the%20same%20application)
Usage="
Title: simple-window-switcher 0.1
Description: switch between all windows of active application
Author: Copyright Glutanimate 2014 (https://github.com/Glutanimate)
License: GNU GPLv3
Usage: $(basename "$0") [-g|-l|-h]
-g: global window switching (across all workspaces)
-l: local window switching (current workspace)
-h: display this help message
If no argument is provided window switching will be set to global.
"
while getopts "lgh" OPTIONS; do
case $OPTIONS in
l ) Fields="3-4"
;;
g ) Fields="4"
;;
h ) echo "$Usage"
exit 0
;;
\? ) echo "$Usage"
exit 1
;;
esac
done
ActiveWinID="$(xprop -root | sed -n 's/_NET_ACTIVE_WINDOW(WINDOW): window id # 0x//p')"
# fields 3-4: <desktop number> <window class>
ActiveWinClass="$(wmctrl -xl | grep "$ActiveWinID" | cut -d" " -f${Fields})"
WindowList="$(wmctrl -xl | grep "$ActiveWinClass" | cut -d" " -f1)"
NextWindow="$(echo "$WindowList" | grep -A1 "$ActiveWinID" | sed -n 2p)"
if [[ -z "$NextWindow" ]]; then
NextWindow="$(echo $WindowList | head -n 1)"
fi
wmctrl -i -a "$NextWindow"
Отметьте сценарий как исполняемый файл и сохраните его в любом месте (желательно в вашем PATH, например /usr/local/bin или ~/bin).
Использование [!d11 ]
Используйте меню сочетаний клавиш вашего оконного менеджера, чтобы назначить simple-window-switcher на горячую клавишу по вашему выбору. Вы можете использовать следующие параметры для управления тем, как работает скрипт:
-g: глобальное переключение окон (во всех рабочих пространствах) -l: локальное переключение окон (текущее рабочее пространство); может не работать с Unity / Compiz (см. раздел комментариев для дополнительной информации)