Как установить ярлык для & ldquo; Always on Top & rdquo; для окна?

В 12.04 (Unity) я хотел бы назначить ярлык для «всегда сверху» для окна. Возможно, что-то вроде Ctrl + Shift + Home для включения и Ctrl + Shift + End , чтобы выключить или что-то еще. Есть ли возможность сделать это где-нибудь в Менеджере настроек Compiz?

В этом (старом) посте утверждается, что

Для compiz: Включить дополнительные действия WM. Проверьте свойства и вставьте поле ALT + A в ключ для действия Toggle Always-On-Top.

Но я не смог найти это.

27
задан 27 April 2012 в 19:35

6 ответов

Он должен работать на каждой ОС Ubuntu начиная с версии 9.04, ничего не устанавливая, изменяя создание любых ярлыков.

Попробуйте Alt + Пробел , T

  • Alt + Пробел в качестве первого ярлыка вызывает контекстное меню мыши

  • T выбирает функцию «Всегда сверху».

0
ответ дан 27 April 2012 в 19:35

Если не установить CCSM и дополнительные подключаемые модули Compiz с помощью:

sudo apt-get install compizconfig-settings-manager compiz-plugins-extra

Будь в курсе, пожалуйста. CCSM может убить Unity3D в некоторых системах.

Если вы еще не установили compiz-plugins-extra, вам необходимо перезапустить Compiz, чтобы загрузить их (даже если перед перезагрузкой они хорошо отображаются в CCSM) с помощью Alt + F2 и

compiz --replace

Вы можете увидеть дополнительные действия WM в разделе управления Windows в CCSM, как объяснено в найденном вами сообщении. Вы можете легко установить желаемое действие.

0
ответ дан 27 April 2012 в 19:35

Поскольку никто еще не упомянул об этом, я просто оставлю решение, которое работало для меня на Ubuntu 12.04.

Вы можете установить обычное сочетание клавиш и использовать wmctrl для переключения опции «Всегда сверху».

Перейдите на Системные настройки> Клавиатура> Сочетания клавиш> Пользовательские сочетания клавиш . Нажмите + и дайте вашему ярлыку имя. Затем введите следующую команду.

wmctrl -r :ACTIVE: -b toggle,above

Если у вас его еще нет, вы можете установить wmctrl из репозиториев, используя

sudo apt-get install wmctrl

. ]

Screenshot showing a custom keyboard shortcut setup screen

Хит применить, и вы должны быть в порядке!

Это решение пришло из обсуждения на форумах Ubuntu .

0
ответ дан 27 April 2012 в 19:35

Другое, на мой взгляд, лучшее решение - добавить Alt + A в качестве ярлыка для переключения свойства «Всегда сверху» окна. Это можно сделать через gconf-editor . Просто следуйте простым инструкциям, приведенным в этого видео .

РЕДАКТИРОВАТЬ: Скопировано из видео

  1. , если вы используете 12.04 & amp; 12.10 Вы должны установить gconf-editor

    sudo apt-get install gconf-editor

  2. Тип gconf-editor в терминале.

  3. Нажмите на приложения

  4. Перейдите в metacity

  5. window_keybindings

  6. right щелкните внутри правого поля и нажмите new key

  7. Выберите string из выпадающего списка.

  8. Добавьте слово toggle_above

  9. Введите любую команду. то есть: A и нажмите OK

Готово: -)

0
ответ дан 27 April 2012 в 19:35

Возможно, уже слишком поздно, но если кто-то снова найдет его и придет сюда, то, как по мне, есть более простое решение:

В Ubuntu и во многих других дистрибутивах, использующих GTK (они в основном используют общий доступ). панель настроек), вы можете перейти в Настройки -> клавиатура> ярлык. В «списке» ярлыков вы найдете запись, не назначенную для сохранения окон сверху. Не уверен в названии по-английски, но по-французски это «Активист / Дезактиватор, первый план плана».

Установите его и все:)

0
ответ дан 27 April 2012 в 19:35

Я пытался использовать wmctrl переключатель команды, но он не работал над моей настроенной Ubuntu. Переключатель включил бы, но не выключил бы. (Я думаю, что это могло бы быть, потому что я использую рабочую среду GNOME, на которой wmctrl немного повреждается AFAIK).

Так или иначе, после большого исследования и удающийся, как написать надлежащий код в ударе, я создал единственную команду, которая использует wmctrl команды на слое логики для переключения 'поверх остальных окон' состояние эффективно на текущем рабочем столе GNOME. Я отправил этот ответ на, Спрашивает Unix/Linux, но думал, что я отправлю его здесь также в случае, если у любого была та же проблема.

Вот команда:

bash -c 'wmctrl -r :ACTIVE: -b $([[ $(xprop -id $(xprop -root -f _NET_ACTIVE_WINDOW 0x " \[110]\\n" _NET_ACTIVE_WINDOW | awk "{print \$2}") _NET_WM_STATE) =~ "ABOVE" ]] && echo "remove" || echo "add"),above'

Это проверяет государственную собственность активного окна "_NET_WM_STATE" использование xprops, и если это содержит текст "ВЫШЕ" этого, означает 'поверх остальных окон', опция активна. Затем это просто работает эти wmctrl команда с параметром add или remove как соответствующее.

<час>

разбивка Команды (каждая команда вставляется в следующее, заменяя заполнитель):

  • Получают идентификатор активного окна:

    xprop -root -f _NET_ACTIVE_WINDOW 0x " \[111]\\n" _NET_ACTIVE_WINDOW | awk "{print \$2}"
    
  • Получают статус окна от [1 115] использование идентификатора:

    xprop -id $(■) _NET_WM_STATE
    
  • Проверка, если состояние содержит "ВЫШЕ", указывая, что окно установлено на "поверх остальных окон":

    [[ $(■) =~ "ABOVE" ]]
    
  • Возврат "удаляет" если это правда, иначе возвращается, "добавьте":

    ■ && echo "remove" || echo "add"
    
  • работает wmctrl команда с помощью возвращенного значения в качестве параметра:

    wmctrl -r :ACTIVE: -b $(■),above
    
  • Отправляют все это в [1 117] так, чтобы можно было использовать замену команды ${ ... }, колотите булеву оценку [[ ... ]] и оператор =~ соответствия regex:

    bash -c '■'
    

    Этот последний шаг в особенности взял меня очень долгое время для выяснения. Пока я не понял, что сочетания клавиш не работали в ударе по умолчанию, я понятия не имел, почему команды работали в консоли, поскольку я протестировал их, но тихо перестал работать, когда выполнено непосредственно как сочетание клавиш. Это управляло мной стена целую вечность!

Примечание: потому что Вам нужны кавычки вокруг команды, которую Вы отправляете в удар, я должен был быть осторожным при записи команды, что я никогда не шел больше, чем еще один уровень глубоко (использующий двойные кавычки). Дальнейшее вложение строк в кавычках потребовало бы, чтобы много запутывающих обратных косых черт вышло из кавычек.

1
ответ дан 16 November 2019 в 11:40

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

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