Jak korzystać z obracania ekranu w konfiguracji Awesome WM?

9

Korzystam ze xrandrskryptu, aby ustawić rozmiar i obrót ekranu. W takim przypadku jeden ekran jest w trybie poziomym, a drugi jest obrócony. Jak mogę wykryć ten obrót w konfiguracji Awesome WM ?

Celem jest ustawienie układu znaczników w taki sposób, aby okna były podzielone wzdłuż krótkiej osi ekranu. Oznacza to, że znacznik używany awful.layout.suit.tilew trybie poziomym używałby awful.layout.suit.tile.bottomw trybie pionowym. To znaczy raczej niż to:

wprowadź opis zdjęcia tutaj

Chcę to:

wprowadź opis zdjęcia tutaj

l0b0
źródło

Odpowiedzi:

4

Dzisiaj jest to dość łatwe. Zakładając, że masz zdefiniowane następujące układy rc.lua:

awful.layout.layouts = {
    awful.layout.suit.tile,
    awful.layout.suit.tile.bottom,
}

Dzięki awful.screen.connect_for_each_screen(func)możesz wywołać funkcję dla każdego istniejącego i utworzonego w przyszłości ekranu. Jest bardzo prawdopodobne, że masz już takie połączenie rc.lua(na przykład, aby ustawić tapetę lub utworzyć tagi). W zależności od konfiguracji potrzebujesz czegoś takiego:

awful.screen.connect_for_each_screen(function(s)
    if s.geometry.width >= s.geometry.height then
      awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9", "0" }, s, awful.layout.layouts[1])
    else
      awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9", "0" }, s, awful.layout.layouts[2])
    end
  end)
ploth
źródło
Dziękuję bardzo za odpowiedź na pięcioletnie pytanie! Tak, cały czas mnie to denerwuje i tak, twoje rozwiązanie zadziałało. Rzeczywista implementacja
l0b0,