wie erstelle ich in Awesome einen Prozess/Befehl in einem bestimmten Tag?

wie erstelle ich in Awesome einen Prozess/Befehl in einem bestimmten Tag?

Ich habe die Standard-rc.lua-Vorgaben befolgt und eine eigene Tag-Liste erstellt.

for s = 1, screen.count() do
    -- Each screen has its own tag table.
    tags[s] = awful.tag({ "main", "web", 3, 4, 5, 6, 7, 8, 9 }, s, layouts[2])
end

Jetzt möchte ich einige Anwendungen in den Tags standardmäßig starten. zB tags['main'] = Terminal tags['web'] = Webbrowser

Ich habe die API-Dokumentation geprüft, kann jedoch keine Möglichkeit finden, die Tags abzurufen und einen Prozess im Tag zu erzeugen.

Antwort1

Awesome ist von dwm abgeleitet, richtig? In dwm würden Sie „Regeln“ für bestimmte Programme hinzufügen (standardmäßig gibt es in der Quelle für dwm eine Regel für Gimp und Firefox).

Das Gleiche scheint auch für Awesome-WM zu gelten.

Sie können passende Regeln zu Ihrer Tabelle terrible.rules.rules hinzufügen. Das Standard-rc.lua enthält bereits mehrere Beispiele, aber hier sind noch ein paar mehr:

 -- Set Firefox to always map on tag number 2 of screen 1
 { rule = { class = "Firefox" },  properties = {tag = tags[1][2]}},

 -- Set Smplayer to tag 4 of screen 1
 { rule = { class = "Smplayer" }, properties = {tag = tags[1][4]}},

 -- Set Emacs to tag 5 of screen 2
 { rule = { class = "Emacs", instance = "emacs" }, properties = {tag = tags[2][5]}},

 -- Set Alpine to tag 6 of the last screen 
 { rule = { name = "Alpine" },    properties = {tag = tags[screen.count()][6]}},

 -- Set Akregator to tag 8 of the last screen and add a titlebar trough callback
 { rule = { class = "Akregator" },properties = {tag = tags[screen.count()][8]},    callback = awful.titlebar.add},

 -- Set Xterm to multiple tags on screen 1
 { rule = { class = "XTerm" }, callback = function(c) c:tags({tags[1][5], tags[1][6]}) end},

 -- Set ROX-Filer to tag 2 of the currently selected and active screen
 { rule = { class = "ROX-Filer" }, callback = function(c) awful.client.movetotag(tags[mouse.screen][2], c) end},

 -- Set ROX-Filer to tag 8 on screen 1 and switch to that tag imidiatelly
 { rule = { class = "ROX-Filer" }, properties = { tag = tags[1][8], switchtotag = true } } 

 -- Set Geeqie to the currently focused tag, as floating
 { rule = { instance = "geeqie" }, properties = {floating = true}},

 -- Set Xterm as floating with a fixed position
 { rule = { class = "XTerm" }, properties = {floating = true}, callback = function(c) c:geometry({x=0, y=0}) end},

verwandte Informationen