LINUX.ORG.RU

История изменений

Исправление serg002, (текущая версия) :

 -- srv monitor 1
    { rule = { class = "srv1_1" },
      properties = { screen = 1, tag = "srv1_1" } },
    { rule = { class = "srv2_1" },
      properties = { screen = 1, tag = "srv2_1" } },
    { rule = { class = "srv3_1" },
      properties = { screen = 1, tag = "srv3_1" } },
    { rule = { class = "srv4_1" },
      properties = { screen = 1, tag = "srv4_1" } },
    { rule = { class = "srv5_1" },
      properties = { screen = 1, tag = "srv5_1" } },
    { rule = { class = "srv6_1" },
      properties = { screen = 1, tag = "srv6_1" } },
    { rule = { class = "srv7_1" },
      properties = { screen = 1, tag = "srv7_1" } },
    { rule = { class = "srv8_1" },
      properties = { screen = 1, tag = "srv8_1" } },
    { rule = { class = "srv9_1" },
      properties = { screen = 1, tag = "srv9_1" } },

    -- srv monitor 2
    { rule = { class = "srv1_2" },
      properties = { screen = 2, tag = "srv1_2" } },
    { rule = { class = "srv2_2" },
      properties = { screen = 2, tag = "srv2_2" } },
    { rule = { class = "srv3_2" },
      properties = { screen = 2, tag = "srv3_2" } },
    { rule = { class = "srv4_2" },
      properties = { screen = 2, tag = "srv4_2" } },
    { rule = { class = "srv5_2" },
      properties = { screen = 2, tag = "srv5_2" } },
    { rule = { class = "srv6_2" },
      properties = { screen = 2, tag = "srv6_2" } },
    { rule = { class = "srv7_2" },
      properties = { screen = 2, tag = "srv7_2" } },
    { rule = { class = "srv8_2" },
      properties = { screen = 2, tag = "srv8_2" } },
    { rule = { class = "srv9_2" },
      properties = { screen = 2, tag = "srv9_2" } },

дома два монитора, на работе один. Как правильно сделать так, чтобы правила применялись только тогда, когда два монитора?

Я уже начал костылить типа:

local function hlp_nmon()
   local file = io.popen("xrandr -q | grep ' connected' | wc -l")
   local output = tonumber(file:read())
   file:close() 
   return output
end

monitors = zzz()

а потом 
```lua
if monitors > 1 then
...
end

Или есть лучше способ?

Исходная версия serg002, :

 -- srv monitor 1
    { rule = { class = "srv1_1" },
      properties = { screen = 1, tag = "srv1_1" } },
    { rule = { class = "srv2_1" },
      properties = { screen = 1, tag = "srv2_1" } },
    { rule = { class = "srv3_1" },
      properties = { screen = 1, tag = "srv3_1" } },
    { rule = { class = "srv4_1" },
      properties = { screen = 1, tag = "srv4_1" } },
    { rule = { class = "srv5_1" },
      properties = { screen = 1, tag = "srv5_1" } },
    { rule = { class = "srv6_1" },
      properties = { screen = 1, tag = "srv6_1" } },
    { rule = { class = "srv7_1" },
      properties = { screen = 1, tag = "srv7_1" } },
    { rule = { class = "srv8_1" },
      properties = { screen = 1, tag = "srv8_1" } },
    { rule = { class = "srv9_1" },
      properties = { screen = 1, tag = "srv9_1" } },

    -- srv monitor 2
    { rule = { class = "srv1_2" },
      properties = { screen = 2, tag = "srv1_2" } },
    { rule = { class = "srv2_2" },
      properties = { screen = 2, tag = "srv2_2" } },
    { rule = { class = "srv3_2" },
      properties = { screen = 2, tag = "srv3_2" } },
    { rule = { class = "srv4_2" },
      properties = { screen = 2, tag = "srv4_2" } },
    { rule = { class = "srv5_2" },
      properties = { screen = 2, tag = "srv5_2" } },
    { rule = { class = "srv6_2" },
      properties = { screen = 2, tag = "srv6_2" } },
    { rule = { class = "srv7_2" },
      properties = { screen = 2, tag = "srv7_2" } },
    { rule = { class = "srv8_2" },
      properties = { screen = 2, tag = "srv8_2" } },
    { rule = { class = "srv9_2" },
      properties = { screen = 2, tag = "srv9_2" } },

дома два монитора, на работе один. Как правильно сделать так, чтобы правила применялись только тогда, когда два монитора?

Я уже начал костылить типа:

local function hlp_nmon()
   local file = io.popen("xrandr -q | grep ' connected' | wc -l")
   local output = tonumber(file:read())
   file:close() 
   return output
end

monitors = zzz()

а потом 
```lua
if monitors > 1 then
...
end

Или есть лучше способ?