You are not logged in.

#1 2012-02-20 14:10:09

K0tuk
Member
Registered: 2009-04-06
Posts: 125

Add window margins to Awesome WM

Hello!

I was wondering if there is a way to add margings between windows when in a tiling mode? Been searching for this option, but couldnt find it on their wiki...

Last edited by K0tuk (2012-02-20 14:11:35)

Offline

#2 2012-02-20 19:00:09

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Re: Add window margins to Awesome WM

The developer responsible for the vain-git package in the AUR made layouts with useless gaps, although I never got them working.  You can check out the instructions here.

Offline

#3 2012-03-27 15:34:46

khs
Member
Registered: 2011-04-18
Posts: 13

Re: Add window margins to Awesome WM

Hi,

I'll answer this in case someone else finds this thread. vain-git added margins to some new layouts, not the original ones.

I changed the original layouts to use margins, you can find the files at: https://github.com/khskrede/configs/tree/master/awesome

Offline

#4 2013-01-29 23:18:22

ignorant
Member
Registered: 2012-06-09
Posts: 50

Re: Add window margins to Awesome WM

I happened to stumble upon this thread, and I've applied khs's changes to the 3.5 tile.lua layout if anyone needs it. Here's the diff:

--- tile.lua	2013-01-29 17:01:13.461898665 -0600
+++ uselessgap.lua	2013-01-30 12:59:41.794402805 -0600
@@ -63,11 +63,47 @@
         geom[height] = math.floor(unused * fact[i] / total_fact) - cls[c].border_width * 2
         geom[x] = group.coord
         geom[y] = coord
-        geom = cls[c]:geometry(geom)
         coord = coord + geom[height] + cls[c].border_width * 2
         unused = unused - geom[height] - cls[c].border_width * 2
         total_fact = total_fact - fact[i]
         used_size = math.max(used_size, geom[width]) + cls[c].border_width * 2
+
+        -- Useless gap.
+        local useless_gap = 25
+        if useless_gap > 0
+        then
+            -- Top and left clients are shrinked by two steps and
+            -- get moved away from the border. Other clients just
+            -- get shrinked in one direction.
+
+            top = false
+            left = false
+
+            if geom[y] == wa[y] then
+                top = true
+            end
+
+            if geom[x] == 0 or geom[x] == wa[x] then
+                left = true
+            end
+
+            if top then
+                geom[height] = geom[height] - 2 * useless_gap
+                geom[y] = geom[y] + useless_gap
+            else
+                geom[height] = geom[height] - useless_gap
+            end
+
+            if left then
+                geom[width] = geom[width] - 2 * useless_gap
+                geom[x] = geom[x] + useless_gap
+            else
+                geom[width] = geom[width] - useless_gap
+            end
+        end
+        -- End of useless gap.
+
+        geom = cls[c]:geometry(geom)
     end
 
     return used_size

Last edited by ignorant (2013-01-30 19:01:34)

Offline

Board footer

Powered by FluxBB