I'm thought there was a question about this a short while ago and I had the same desire - Here's what I did to fulfil my needs... Find the following section... -- <Signals> -- Signal function to execute when a new client appears. client.add_signal("manage", function (c, startup)" Skip down a bit further to... -- Put windows in a smart way, only if they does not set an initial position. if not c.size_hints.user_position and not c.size_hints.program_position then awful.placement.no_overlap(c) awful.placement.no_offscreen(c) end
Add the following lines after that... if not (c.name == "david" or c.name == "Guake!") then -- applications you do NOT want to affect --naughty.notify({ text=c.name }) local geometry = c:geometry() if geometry.y < mywibox[c.screen]:geometry().y + mywibox[c.screen]:geometry().height then geometry.y = mywibox[c.screen]:geometry().y + mywibox[c.screen]:geometry().height + c.border_width c:geometry(geometry) end end Note 1: Assumes "top" - change the .y & .height to .x & .width for "left" or change the logic for "bottom" or "right" Note 2: Name of the wibox array is "mywibox" - change to suit yours ;-) Regards Dave