Сочетание клавиш для переключения между окнами приложения во все области просмотра

Высокий звук -' используется для переключения между окнами приложения в текущую область просмотра в Единице.

Там другое сочетание клавиш состоит в том, чтобы переключиться между окнами приложения во все области просмотра?

Я не хочу изменять поведение по умолчанию Высокого звука - ', который переключается между окнами приложения в текущую область просмотра.

Я использую Ubuntu 14.04 и Единицу.

11
задан 12 March 2015 в 12:39

3 ответа

Вдохновленный ответом Pineau, я нашел, что злая шутка сделала его: сохраните Высокий звук +' для переключения между окнами приложения в одной области просмотра и (например) Alt+1 для переключения между окнами приложения на всех областях просмотра.

Незначительная косметическая оборотная сторона - то, что скорость отклика немного менее точна, так как для настроек нужна часть секунды для изменения. На практике однако Вы едва заметите.

  1. установка xdotool:

    sudo apt-get install xdotool
    
  2. Скопируйте следующий scipt в пустой файл и сохраните его как switch.sh

    #!/bin/bash
    
    dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport false
    sleep 0.2
    xdotool keydown alt key 0x60
    dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport true
    sleep 1
    
  3. установите сочетание клавиш для запущения скрипта: System Preferences > Keyboard > Shortcuts > Custom Shortcuts. Я выбираю Alt+1, так как это близко к другому.

    Теперь можно использовать любого Alt+1 для переключения между всеми окнами (например), gedit:

    enter image description here

    или Высокий звук +' для переключения между gedit окнами только currect рабочей области:

    enter image description here

примечание:

  1. В сценарии ключ выше Вкладки устанавливается к key 0x60. Это могло бы отличаться на другом lauyouts. В случае, если это не будет работать, работать в терминале xev, затем нажмите Return, затем ключ выше вкладки. В выводе ищите строку как (keysym 0x60, grave). Значение keysym является значением, в котором Вы нуждаетесь в (сценарий-) строка:

    xdotool keydown alt key 0x60
    
  2. Значения sleep 0.2 и sleep 1 заставьте сценарий хорошо работать в моей системе, но они могли бы подвергнуться оптимизации для более быстрых систем (уменьшают).

Больше опций

Точно так же можно установить сочетание клавиш для переключения между всеми окнами приложения на всех областях просмотра, которыми затем был бы сценарий:

#!/bin/bash

dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport false
sleep 0.2
xdotool keydown alt key 0xff09
dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport true
sleep 1

При установке, например, Alt+Q для этого у Вас есть хороший набор всех опций:

Высокий звук +' Переключатель между окнами текущего приложения на текущей области просмотра

Переключатель Alt+1 между окнами текущего приложения на всех областях просмотра

Переключатель Alt+Tab между всеми окнами приложения на текущей области просмотра

Переключатель Alt+Q между всеми окнами приложения на всех областях просмотра

enter image description here

Alt+Tab: Переключатель между всеми окнами приложения на текущей области просмотра

enter image description here

Alt+Q: Переключатель между всеми окнами приложения на всех областях просмотра

7
ответ дан 23 November 2019 в 04:01

Откройте Terminal и введите следующую команду:

dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-bias-viewport false

, Кроме того, можно установить Инструмент Тонкой настройки Единицы:

sudo apt-get install unity-tweak-tool
unity-tweak-tool

Тогда включают эти Переключатель между окнами на всех рабочих областях опция на Вкладке Переключателя:

enter image description here

4
ответ дан 23 November 2019 в 04:01

Универсальное использование решения wmctrl


Обзор

Следующий сценарий должен быть совместим со всеми 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"

Mark сценарий как исполняемый файл и сохраните его где угодно, Вам нравится (предпочтительно в Вашем ПУТИ, например. /usr/local/bin или ~/bin).

Использование

Используйте они вводят с клавиатуры меню ярлыков Вашего менеджера окон для присвоения simple-window-switcher к горячей клавише по Вашему выбору. Можно использовать следующие параметры, чтобы управлять, как сценарий ведет себя:

  • -g: глобальное переключение окна (через все рабочие области)
  • -l: локальное переключение окна (текущая рабочая область); не мог бы работать с Unity/Compiz (см. раздел комментария для получения дополнительной информации),
5
ответ дан 23 November 2019 в 04:01

Другие вопросы по тегам:

Похожие вопросы: