Przełączanie kompozycji w metacity

10 października 2009 20:32 | Kategorie: Komputery | Tagi:

No więc, metacity (dla niezorientowanych, chodzi o to, co zajmuje się okienkami w GNOME) obsługuje kompozycję, choć nie w domyślnej konfiguracji. Czym jest kompozycja? Chodzi o to, że obraz nie jest rysowany bezpośrednio na ekranie, w praktyce oznacza to półprzezroczystość i cienie pod oknami, a czasem również odrobinę lepszą wydajność, no i koniec z innymi problemami. Włączenie kompozycji w Metacity wymaga ustawienia odpowiedniej opcji w GConf. Czasem jednak potrzeba wyłączyć kompozycję, np. gdy przeszkadza ona niektórym aplikacjom (tutaj trzeba przyznać, że Compiz znacznie lepiej radzi sobie z niekompatybilnymi programami, jednak jest o wiele bardziej zasobożerny). Można kombinować i grzebać w GConfie, ja jednak wolę, gdy jest to zautomatyzowane. Dlatego też napisałem króciutki skrypcik, który robi to za mnie.

iscompositingon=`gconftool-2 -g '/apps/metacity/general/compositing_manager'`
if [ "$iscompositingon" == "true" ]
then
    gconftool-2 -s '/apps/metacity/general/compositing_manager' --type bool false
else
    gconftool-2 -s '/apps/metacity/general/compositing_manager' --type bool true
fi

Edycja – kubzior zaproponował, żeby wywalić export, co też czynię, bo w sumie niepotrzebny tam był.

Kolejna edycja – tak, jak poradził d4rky, ująłem zmienną w cudzysłów.

  1. 10 października 2009 o 20:35

    A dlaczemu export?

  2. 10 października 2009 o 20:36

    Nie miałem innego pomysłu, by wynik wyrzucić do zmiennej :P

  3. 11 października 2009 o 14:51

    Kubzior zaproponował? Noż, a Wasacz, to co? ;F

  4. 11 października 2009 o 14:57

    Zamiast użyj $( ) i otocz $iscompositingon cudzysłowami, bo ci się skrypt wypierdziuli jak zwróci niespodziewaną wartość ;)

  5. 11 października 2009 o 22:06

    poprawion’d