Xcompmgr (Русский) - ArchWiki

# Xcompmgr (Русский)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Ссылки по теме

- Compiz (Русский)
- Compton (Русский)

Состояние перевода: На этой странице представлен перевод статьи Xcompmgr. Дата последней синхронизации: 9 февраля 2018. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Xcompmgr - это простой композитный менеджер окон, умеющий рендерить тени, создавать примитивную прозрачность окон посредством transset. Разработан исключительно как доказательство концепции, Xcompmgr - легковесная альтернатива Compiz и ему подобных композитных менеджеров.

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

## Установка

Перед установкой Xcompmgr убедитесь в том, что Xorg установлен и правильно настроен. Чтобы убедиться в том, что расширение Composite для X Server включено, выполните:

    $ xdpyinfo | grep Composite

    Composite

Если вывод отсутствует, добавьте `Composite` в раздел `Extensions` в xorg.conf:

    /etc/X11/xorg.conf

    Section "Extensions"
            Option  "Composite" "true"
    EndSection

Установите пакет xcompmgr. Для прозрачности установите transset-dfAUR. Для примера смотрите Xterm#Automatic transparency.

## Настройка

Запуск `xcompmgr`:

    $ xcompmgr -c

Чтобы запускать `xcompmgr` при старте сессии, добавьте в xprofile:

    xcompmgr -c &

Вы можете экспериментировать с параметрами, чтобы изменить отбрасывание теней или даже включить затухание. Например:

    xcompmgr -c -t-5 -l-5 -r4.2 -o.55 &

Получение полного списка опций:

    $ xcompmgr --help

### Прозрачность окон

Практическое применение ограничено из-за низкой производительности, но можно использовать `transset-df` для установки прозрачности отдельных окон.

Чтобы установить прозрачность окна программы, убедитесь в том, что она запущена, затем выполните:

    $ transset-df прозрачность

где прозрачность - это число от 0 до 1, где 0 - абсолютная прозрачность, 1 - непрозрачность.

Курсор превратится в крест, наведите его на требуемую программу. Например, `transset-df 0.25` установит непрозрачность на уровне 25% (75% прозрачности).

## Советы и рекомендации

### Запуск/остановка Xcompmgr по требованию

Этот скрипт позволяет легко запустить, перезапустить и остановить композитный менеджер.

    ~/.bin/comp

    #!/bin/bash
    #
    # Start a composition manager.
    # (xcompmgr in this case)

    comphelp() {
        echo "Composition Manager:"
        echo "   (re)start: COMP"
        echo "   stop:      COMP -s"
        echo "   query:     COMP -q"
        echo "              returns 0 if composition manager is running, else 1"
        exit
    }

    checkcomp() {
        pgrep xcompmgr &>/dev/null
    }

    stopcomp() {
        checkcomp && killall xcompmgr
    }

    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 "$1" in
        "")   startcomp ;;
        "-q") checkcomp ;;
        "-s") stopcomp; exit ;;
        *)    comphelp ;;
    esac

Для удобства использования можно назначить скрипт на горячую клавишу, используя, например, Xbindkeys. Это позволит перезапускать или временно приостанавливать Xcompmgr в случае необходимости, не прерывая работу.

### Переключатель Xcompmgr

Назначьте следующий скрипт на любую горячую клавишу:

    #!/bin/bash

    if pgrep xcompmgr &>/dev/null; then
        echo "Turning xcompmgr ON"
        xcompmgr -c -C -t-5 -l-5 -r4.2 -o.55 &
    else
        echo "Turning xcompmgr OFF"
        pkill xcompmgr &
    fi

    exit 0

## Решение проблем

### Mozilla Firefox падает при заходе на сайт с Flash

Вы можете исправить это путем создания файла `/etc/profile.d/flash.sh`, который должен содержать следующее:

    export XLIB_SKIP_ARGB_VISUALS=1

Важно: Это отключит композитные эффекты.

### Фон становится светло-серым после входа в систему (например, в Openbox)

Эта ошибка исправляется установкой hsetroot и настройки цвета фона посредством `hsetroot -solid "#000000"` (просто введите код цвета, который вы хотите вместо #000000) перед `xcompmgr`. Если `xcompmgr` запускается до `exec` в `~/.xinitrc`, то вы можете заменить `xcompmgr &` на `(sleep 1 && xcompmgr) &`; это позволит `xcompmgr` запускаться после старта оконного менеджера.

### BadPicture request в awesome

Если вы получаете следующую ошибку в awesome:

     error 163: BadPicture request 149 minor 8 serial 34943
     error 163: BadPicture request 149 minor 8 serial 34988
     error 163: BadPicture request 149 minor 8 serial 35033

просто установите feh и перезапустите awesome.

### Не обновляется экран в awesome после изменения разрешения

При использовании внешнего монитора могут возникнуть проблемы при автоматическом изменении разрешения экрана: часть экрана становится "застывшей" и больше не обновляется. Эта проблема возникает из-за первоначального изменения разрешения (которое происходит перед стартом Xcompmgr), а также при установке фона в awesome посредством feh.

Чтобы исправить это, вам нужно установить hsetroot и добавить следующую строчку в `.xinitrc` перед `xcompmgr`:

    hsetroot -solid "#000066"

(можно заменить #000066 на любой другой цвет).

Categories:

- X server (Русский)
- Eye candy (Русский)