멋진 WM 구성에서 화면 회전을 사용하는 방법은 무엇입니까? 모드이고 다른 화면은 회전합니다.

xrandr스크립트 를 사용하여 화면 크기와 회전을 설정하고 있습니다. 이 경우 한 화면은 가로 모드이고 다른 화면은 회전합니다. Awesome WM 구성 에서이 회전을 어떻게 감지 합니까?

목표는 창을 화면의 짧은 축을 따라 분할하도록 태그 레이아웃을 설정하는 것입니다. 즉, awful.layout.suit.tile가로 모드에서 사용하는 태그 awful.layout.suit.tile.bottom는 세로 모드에서 사용 됩니다. 즉, 이것보다는

여기에 이미지 설명을 입력하십시오

나는 이것을 원한다 :



답변

오늘날 이것은 다소 쉽습니다. 에 다음과 같은 레이아웃이 정의되어 있다고 가정합니다 rc.lua.

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

를 사용 awful.screen.connect_for_each_screen(func)하면 기존 및 미래에 생성 된 각 화면에 대해 함수를 호출 할 수 있습니다. rc.lua이미 전화를 걸었을 가능성이 높습니다 (예 : 배경 화면 설정 또는 태그 생성). 구성에 따라 다음과 같은 것이 필요합니다.

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)