Xcompmgr (Русский)
Contents |
Введение
Xcompmgr - это простой композитный менеджер окон, умеющий прорисовывать тени и создавать примитивную прозрачность с помощью transset. Разработан как доказательство возможности существования легковесных альтернатив Compiz Fusion.
Так как xcompmgr не заменяет оконный менеджер, он является идеальным для Openbox и Fluxbox.
Установка
Xcompmgr и transset, доступны в стандартных репозиториях:
# pacman -S xcompmgr transset-df
Настройка
Для запуска xcompmgr, выполните:
$ xcompmgr -c
Для автозагрузки с Иксами, добавьте его в ~/.xinitrc:
xcompmgr -c &
Вместо -c Вы можете экспериментировать с другими настройками. Пример:
xcompmgr -c -t-5 -l-5 -r4.2 -o.55 &
Для получения полного списка опций, выполните:
$ xcompmgr --help
Прозрачность окон
Хотя практическое применение ограничено из-за его низкой производительности, transset может быть использована для установки прозрачности отдельных окон.
Для запуска прозрачности окна программы, убедитесь, что она запущена, далее выполните:
transset n
.. где n это число от 0 до 1, где 0 - абсолютная прозрачность, а 1 - непрозрачный.
Курсор превратиться в крест. наведите его на желаемую программу. Например, transset .25 установит прозрачность до 75%.
Возможные неисправности
окна в Fluxbox не разворачиваются
Это зафиксировано в CVS после Fluxbox 0.9.10. Смотреть [1] для дополнительной информации.
Решением в 0.9.10 является создание слоя "Desktop" (flux menu -> Configure -> Slit -> Layer -> Desktop).
Падает Mozilla Firefox при работающем флеше
Вы можете исправить это, создав в /etc/profile.d файл flash.sh:
export XLIB_SKIP_ARGB_VISUALS=1
Или добавить это в 184 строку /opt/mozilla/bin/firefox.
Картинка оказывается светло-серой после входа в систему (например в Openbox)
Эта ошибка исправляется путем установки hsetroot (есть в AUR) и настройкой цвета фона, выполнив hsetroot -solid "#000000" (введите html код нужного цвета, вместо 000000) до xcompmgr.
Советы
Запуск/остановка xcompmgr по требованию
Этот скрипт (например в ~/bin) позволяет легко остановить/перезапустить композитный менеджер.
#!/bin/bash
#
# Start a composition manager.
# (xcompmgr in this case)
function comphelp () {
echo "Composition Manager:"
echo " (re)start: COMP"
echo " stop: COMP -s"
echo " query: COMP -q"
echo " returns 1 if composition manager is running, else 0"
exit
}
function checkcomp () {
( ps nc -C xcompmgr &>/dev/null ) && exit 1
exit 0
}
function stopcomp () {
( ps nc -C xcompmgr &>/dev/null ) && killall xcompmgr
}
function startcomp () {
stopcomp
# Example settings only. Replace with your own.
xcompmgr -CcfF -I-.015 -O-.03 -D6 -t-1 -l-3 -r4.2 -o.5 &
exit
}
case "$1x" in
"x") startcomp;;
"-qx") checkcomp;;
"-sx") stopcomp; exit;;
*) comphelp;;
esac
Я сделал COMP и COMP -s горячими клавишами в IceWM, поскольку в нём есть проблемы с использованием xcompmgr в. Это позволяет перезапуск или временную остановку xcompmgr, в случае необходимости, не прерывая работу.
Дополнительные средства
- AIGLX
- Compiz Fusion
- Compiz
- Xcompmgr
- Cairo Composite Manager -- Универсальный и расширяемый композитный менеджер, используемый cairo для рендеринга
- Wikipedia(en): Compositing Window Managers