widget.fs: adjust spacing in notifications when there are > 10 long paths
This commit is contained in:
parent
396b54d612
commit
a34e72b42b
2 changed files with 15 additions and 5 deletions
|
@ -9,7 +9,7 @@ description = {
|
||||||
detailed = [[
|
detailed = [[
|
||||||
Successor of awesome-vain, this module provides alternative layouts, asynchronous widgets and utility functions for Awesome WM.
|
Successor of awesome-vain, this module provides alternative layouts, asynchronous widgets and utility functions for Awesome WM.
|
||||||
|
|
||||||
Dependencies: curl (for IMAP, MPD and weather widgets); Glib >= 2.5.4 (for filesystems widget).
|
Dependencies: curl (for IMAP, MPD and weather widgets); Glib >= 2.54 (for filesystems widget).
|
||||||
]],
|
]],
|
||||||
homepage = "https://github.com/lcpz/lain",
|
homepage = "https://github.com/lcpz/lain",
|
||||||
license = "GPL-2.0"
|
license = "GPL-2.0"
|
||||||
|
@ -17,7 +17,7 @@ description = {
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"lua >= 5.1",
|
"lua >= 5.1",
|
||||||
"awesome >= 4.0",
|
"awesome >= 4.0",
|
||||||
"Glib >= 2.5.4",
|
"Glib >= 2.54",
|
||||||
"curl"
|
"curl"
|
||||||
}
|
}
|
||||||
supported_platforms = { "linux" }
|
supported_platforms = { "linux" }
|
||||||
|
|
|
@ -13,7 +13,7 @@ local focused = require("awful.screen").focused
|
||||||
local wibox = require("wibox")
|
local wibox = require("wibox")
|
||||||
local naughty = require("naughty")
|
local naughty = require("naughty")
|
||||||
local math = math
|
local math = math
|
||||||
local sformat = string.format
|
local string = string
|
||||||
local tconcat = table.concat
|
local tconcat = table.concat
|
||||||
local tonumber = tonumber
|
local tonumber = tonumber
|
||||||
local query_size = Gio.FILE_ATTRIBUTE_FILESYSTEM_SIZE
|
local query_size = Gio.FILE_ATTRIBUTE_FILESYSTEM_SIZE
|
||||||
|
@ -67,7 +67,8 @@ local function factory(args)
|
||||||
end
|
end
|
||||||
|
|
||||||
function fs.update()
|
function fs.update()
|
||||||
local notifytable = { [1] = sformat("%-10s %-5s %s\t%s\t\n", "fs", "used", "free", "size") }
|
local notifytable = { [1] = string.format("%-10s %-5s %s\t%s\t\n", "path", "used", "free", "size") }
|
||||||
|
local pathlen = 10
|
||||||
fs_now = {}
|
fs_now = {}
|
||||||
|
|
||||||
for _, mount in ipairs(Gio.unix_mounts_get()) do
|
for _, mount in ipairs(Gio.unix_mounts_get()) do
|
||||||
|
@ -92,9 +93,11 @@ local function factory(args)
|
||||||
}
|
}
|
||||||
|
|
||||||
if fs_now[path].percentage > 0 then -- don't notify unused file systems
|
if fs_now[path].percentage > 0 then -- don't notify unused file systems
|
||||||
notifytable[#notifytable+1] = sformat("\n%-10s %-5s %3.2f\t%3.2f\t%s", path,
|
notifytable[#notifytable+1] = string.format("\n%-10s %-5s %.2f\t%.2f\t%s", path,
|
||||||
fs_now[path].percentage .. "%", fs_now[path].free, fs_now[path].size,
|
fs_now[path].percentage .. "%", fs_now[path].free, fs_now[path].size,
|
||||||
fs_now[path].units)
|
fs_now[path].units)
|
||||||
|
|
||||||
|
pathlen = math.max(pathlen, #path)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -116,6 +119,13 @@ local function factory(args)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if pathlen > 10 then -- formatting aesthetics
|
||||||
|
for i = 1, #notifytable do
|
||||||
|
local pathspaces = notifytable[i]:match("/%w*[/%w*]*%s*") or notifytable[i]:match("path%s*")
|
||||||
|
notifytable[i] = notifytable[i]:gsub(pathspaces, pathspaces .. string.rep(" ", pathlen - 10) .. "\t")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
fs.notification_preset.text = tconcat(notifytable)
|
fs.notification_preset.text = tconcat(notifytable)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue