Blog (15)
Komentarze (236)
Recenzje (0)

[Managery okien, cz. 4] dwm i kumple

@Vifon[Managery okien, cz. 4] dwm i kumple13.09.2011 17:42

Czym byłaby seria wpisów o managerach okien bez dwma i jego pochodnych? Pisałem już kiedyś o awesome, ale takich managerów jest więcej (wbrew przesadnie onetowemu tytułowi tamtego wpisu...). Omówię je raczej powierzchownie, nie miałem czasu by je wszystkie dogłębnie przetestować. Skupię się na najbardziej widocznych różnicach.

Cechy wspólne

Wszystkie managery wywodzące się z dwm są dość charakterystyczne: - okna są rozmieszczane w pełni automatycznie. Jest kilka układów, które można zmieniać, można zamieniać okna miejscami i można w pewnym stopniu zmieniać ich proporcje. To tyle, reszta dzieje się sama, - raczej nie mają graficznych konfiguratorów - przeważnie używa się plików konfiguracyjnych pisanych w poważnych językach programowania. Daje to bardzo duże możliwości konfiguracyjne, - nacisk jest położony na obsługę klawiaturą.

Bez wnikania w szczegóły, dwmoidy różnią się między sobą głównie językiem w jakim się je konfiguruje i często paskiem informacyjnym.

dwm

Konfiguracja dwm to zwykły C. Język dość powszechnie znany, przez co myślę, że wiele osób szybko się w niej odnajdzie. Niespodzianek większych nie ma. W jednej tablicy są zapisane klawisze, w drugiej - elementy paska z informacjami, w jeszcze innej - lista tagów. Podejrzewam, że nawet bez wcześniejszej znajomości C, dałoby się zmienić podstawowe rzeczy.

Po modyfikacji tego pliku trzeba przekompilować dwm, co niestety nie jest w żaden sposób uproszczone, jak np. w xmonadzie. Przeżyć można, ale nie jest to najwygodniejsze rozwiązanie. Pewnie dałoby się coś naskrobać w konfigu, żeby to uprościć, ale jakoś mi nie zależało, skoro i tak jedynie testowałem dwm na potrzeby tego wpisu.

Podsumowując, dwm spełnia swoje zadanie jako manager okien i to chyba tyle, ale za to pod względem lekkości nie ma sobie równych.

xmonad

Główną atrakcją xmonada jest język w jakim go napisano - Haskell. Dość ciekawy wybór. Haskella znam w stopniu, powiedzmy, pół-podstawowym, ale mniej więcej rozumiałem co się tam dzieje. Jeśli ktoś nigdy nie widział na oczy Haskella, może mieć na początku problemy, bo to zupełnie inna filozofia niż ta stosowana w popularnych językach typu C, Java, Perl czy Python. Zastosowanie Haskella ma jeszcze jedną wadę - trzeba zainstalować GHC, kompilator Haskella. Ponad pół gigabajta dla minimalistycznego managera okien to dość dużo. Mimo wszystko, można się spodziewać, że ktoś, kto się decyduje na xmonad, ma już zainstalowany GHC.

By przekompilować plik konfiguracyjny wystarczy wcisnąć odpowiednią kombinację klawiszy i chwilę poczekać. Jeśli były jakieś błędy, xmonad uruchomi się z domyślnym konfigiem, dzięki czemu raczej nie "zbrickujemy" sobie managera okien. Podobne rozwiązanie jak w opisywanym przeze mnie ostatnio i3.

xmobar, który jest wykorzystywany jako pasek zadań, wydaje się mieć spore możliwości, ale nie miałem czasu by się z nim bardziej pobawić. Tego akurat nie sprawdzałem, ale podobno dokumentacja xmonada jest dłuższa niż jego kod. Całkiem imponujące, niezależnie od tego czy to kod jest krótki, czy dokumentacja długa. ;)

xmonad sprawia wrażenie bardzo potężnego, ale trudnego w opanowaniu. Głównie za sprawą Haskella, ale to raczej kwestia znajomości języka.

UPDATE 24.05.2012: No i przeczucie mnie nie zawiodło. Bardzo skrzywdziłem XMonada powyższym opisem. Jak znajdę wolną chwilę (czytaj: po sesji, czyli koło lipca), to naskrobię erratę aka piątą część cyklu o managerach okien. Note to self: nie pisać o rzeczach, które znam słabo.

awesome

Językiem wykorzystywanym w awesome jest Lua. Przed poznaniem awesome nic nigdy nie pisałem w Lua. Mimo to, byłem w stanie zmienić to i owo, a z czasem nauczyłem się podstaw tego języka jedynie eksperymentując z awesome.

Z drugiej strony, domyślny konfig jest mocno chaotyczny i nie zawsze łatwo się szuka fragmentów odpowiedzialnych za dane rzeczy. Jeśli chodzi o pasek, jest kilka niezależnych wtyczek do tworzenia widgetów na nim. Ja używałem Vicious i nie narzekałem. Proste w obsłudze i robiło to co kazałem. Czego chcieć więcej?

Przeładowanie konfiguracji jest błyskawiczne - Lua to język interpretowany. Niestety nie ma żadnych ostrzeżeń o błędach. Jeśli coś popsujemy, to dalsza część konfigu się nie wczytuje. Jeśli skrót odpowiedzialny za restart się już załadował to pół biedy, gorzej gdy błąd jest na początku pliku i de facto pracujemy na gołych Xach.

Z tej trójki awesome to najcięższy manager, ale oczywiście nie może się równać z KDE czy GNOME.

scrotwm

scrotwm nie zapadł mi szczególnie w pamięć. Konfiguracja była zwykłą listą opcji, jak w i3. Cech szczególnych nie zauważyłem. Melduję, że testowałem, nic poza tym.

Co dalej?

Zachęcam do komentowania i wytykania mi przeoczeń, chętnie dopiszę to i owo, zwłaszcza, że temat zaledwie musnąłem. Chętnie posłucham co mają do powiedzenia bardziej doświadczeni użytkownicy. Zróbmy z tego taki eksperymentalny wpis zbiorowy.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.