Name change

This commit is contained in:
Adam Cooper 2025-02-27 09:28:02 -05:00
parent 3f23185a5c
commit d96b3a1258
30 changed files with 938 additions and 835 deletions

View file

@ -28,7 +28,7 @@ If you want to create a pull request, make sure that:
- Your code fits with the general style of the module. In particular, you should use the same indentation pattern that the code uses, and also avoid adding space at the ends of lines. - Your code fits with the general style of the module. In particular, you should use the same indentation pattern that the code uses, and also avoid adding space at the ends of lines.
- Your code its easy to understand, maintainable, and modularized. You should also avoid code duplication wherever possible by adding functions to or using lain.helpers_. If something is unclear, or you can not write it in such a way that it will be clear, explain it with a comment. - Your code its easy to understand, maintainable, and modularized. You should also avoid code duplication wherever possible by adding functions to or using lina.helpers_. If something is unclear, or you can not write it in such a way that it will be clear, explina it with a comment.
- You test your changes before submitting to make sure that your code works and does not break other parts of the module. - You test your changes before submitting to make sure that your code works and does not break other parts of the module.

View file

@ -15,13 +15,13 @@ local rawget = rawget
local tsort = table.sort local tsort = table.sort
local unpack = unpack or table.unpack -- lua 5.1 retro-compatibility local unpack = unpack or table.unpack -- lua 5.1 retro-compatibility
-- Lain helper functions for internal use -- Lina helper functions for internal use
-- lain.helpers -- lina.helpers
local helpers = {} local helpers = {}
helpers.lain_dir = debug.getinfo(1, 'S').source:match[[^@(.*/).*$]] helpers.lina_dir = debug.getinfo(1, 'S').source:match[[^@(.*/).*$]]
helpers.icons_dir = helpers.lain_dir .. 'icons/' helpers.icons_dir = helpers.lina_dir .. 'icons/'
helpers.scripts_dir = helpers.lain_dir .. 'scripts/' helpers.scripts_dir = helpers.lina_dir .. 'scripts/'
-- {{{ Modules loader -- {{{ Modules loader

View file

@ -1,6 +1,6 @@
--[[ --[[
Lain Lina
Layouts, widgets and utilities for Awesome WM Layouts, widgets and utilities for Awesome WM
Licensed under GNU General Public License v2 Licensed under GNU General Public License v2

View file

@ -1,6 +1,6 @@
--[[ --[[
Lain Lina
Layouts, widgets and utilities for Awesome WM Layouts, widgets and utilities for Awesome WM
Layouts section Layouts section
@ -11,9 +11,9 @@
--]] --]]
local wrequire = require("lain.helpers").wrequire local wrequire = require("lina.helpers").wrequire
local setmetatable = setmetatable local setmetatable = setmetatable
local layout = { _NAME = "lain.layout" } local layout = { _NAME = "lina.layout" }
return setmetatable(layout, { __index = wrequire }) return setmetatable(layout, { __index = wrequire })

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
--[[ --[[
Lain Lina
Layouts, widgets and utilities for Awesome WM Layouts, widgets and utilities for Awesome WM
Utilities section Utilities section
@ -11,180 +11,200 @@
--]] --]]
local awful = require("awful") local awful = require("awful")
local sqrt = math.sqrt local sqrt = math.sqrt
local pairs = pairs local pairs = pairs
local client = client local client = client
local tonumber = tonumber local tonumber = tonumber
local wrequire = require("lina.helpers").wrequire local wrequire = require("lina.helpers").wrequire
local setmetatable = setmetatable local setmetatable = setmetatable
-- Lain utilities submodule -- Lina utilities submodule
-- lain.util -- lina.util
local util = { _NAME = "lain.util" } local util = { _NAME = "lina.util" }
-- Like awful.menu.clients, but only show clients of currently selected tags -- Like awful.menu.clients, but only show clients of currently selected tags
function util.menu_clients_current_tags(menu, args) function util.menu_clients_current_tags(menu, args)
-- List of currently selected tags. -- List of currently selected tags.
local cls_tags = awful.screen.focused().selected_tags local cls_tags = awful.screen.focused().selected_tags
if cls_tags == nil then return nil end if cls_tags == nil then
return nil
end
-- Final list of menu items. -- Final list of menu items.
local cls_t = {} local cls_t = {}
-- For each selected tag get all clients of that tag and add them to -- For each selected tag get all clients of that tag and add them to
-- the menu. A click on a menu item will raise that client. -- the menu. A click on a menu item will raise that client.
for i = 1,#cls_tags do for i = 1, #cls_tags do
local t = cls_tags[i] local t = cls_tags[i]
local cls = t:clients() local cls = t:clients()
for _, c in pairs(cls) do for _, c in pairs(cls) do
cls_t[#cls_t + 1] = { awful.util.escape(c.name) or "", cls_t[#cls_t + 1] = {
function () awful.util.escape(c.name) or "",
c.minimized = false function()
client.focus = c c.minimized = false
c:raise() client.focus = c
end, c:raise()
c.icon } end,
end c.icon,
end }
end
end
-- No clients? Then quit. -- No clients? Then quit.
if #cls_t <= 0 then return nil end if #cls_t <= 0 then
return nil
end
-- menu may contain some predefined values, otherwise start with a -- menu may contain some predefined values, otherwise start with a
-- fresh menu. -- fresh menu.
if not menu then menu = {} end if not menu then
menu = {}
end
-- Set the list of items and show the menu. -- Set the list of items and show the menu.
menu.items = cls_t menu.items = cls_t
local m = awful.menu(menu) local m = awful.menu(menu)
m:show(args) m:show(args)
return m return m
end end
-- Magnify a client: set it to "float" and resize it. -- Magnify a client: set it to "float" and resize it.
function util.magnify_client(c, width_f, height_f) function util.magnify_client(c, width_f, height_f)
if c and not c.floating then if c and not c.floating then
util.magnified_client = c util.magnified_client = c
util.mc(c, width_f, height_f) util.mc(c, width_f, height_f)
else else
util.magnified_client = nil util.magnified_client = nil
c.floating = false c.floating = false
end end
end end
-- https://github.com/lcpz/lain/issues/195 -- https://github.com/lcpz/lain/issues/195
function util.mc(c, width_f, height_f) function util.mc(c, width_f, height_f)
c = c or util.magnified_client c = c or util.magnified_client
if not c then return end if not c then
return
end
c.floating = true c.floating = true
local s = awful.screen.focused() local s = awful.screen.focused()
local mg = s.workarea local mg = s.workarea
local g = {} local g = {}
local mwfact = width_f or s.selected_tag.master_width_factor or 0.5 local mwfact = width_f or s.selected_tag.master_width_factor or 0.5
g.width = sqrt(mwfact) * mg.width g.width = sqrt(mwfact) * mg.width
g.height = sqrt(height_f or mwfact) * mg.height g.height = sqrt(height_f or mwfact) * mg.height
g.x = mg.x + (mg.width - g.width) / 2 g.x = mg.x + (mg.width - g.width) / 2
g.y = mg.y + (mg.height - g.height) / 2 g.y = mg.y + (mg.height - g.height) / 2
if c then c:geometry(g) end -- if c is still a valid object if c then
c:geometry(g)
end -- if c is still a valid object
end end
-- Non-empty tag browsing -- Non-empty tag browsing
-- direction in {-1, 1} <-> {previous, next} non-empty tag -- direction in {-1, 1} <-> {previous, next} non-empty tag
function util.tag_view_nonempty(direction,sc) function util.tag_view_nonempty(direction, sc)
direction = direction or 1 direction = direction or 1
local s = sc or awful.screen.focused() local s = sc or awful.screen.focused()
local tags = s.tags local tags = s.tags
local sel = s.selected_tag local sel = s.selected_tag
local i = sel.index local i = sel.index
repeat repeat
i = i + direction i = i + direction
-- Wrap around when we reach one of the bounds -- Wrap around when we reach one of the bounds
if i > #tags then if i > #tags then
i = i - #tags i = i - #tags
end end
if i < 1 then if i < 1 then
i = i + #tags i = i + #tags
end end
local t = tags[i] local t = tags[i]
-- Stop when we get back to where we started -- Stop when we get back to where we started
if t == sel then if t == sel then
break break
end end
-- If it's The One, view it. -- If it's The One, view it.
if #t:clients() > 0 then if #t:clients() > 0 then
t:view_only() t:view_only()
return return
end end
until false until false
end end
-- {{{ Dynamic tagging -- {{{ Dynamic tagging
-- Add a new tag -- Add a new tag
function util.add_tag(layout) function util.add_tag(layout)
awful.prompt.run { awful.prompt.run({
prompt = "New tag name: ", prompt = "New tag name: ",
textbox = awful.screen.focused().mypromptbox.widget, textbox = awful.screen.focused().mypromptbox.widget,
exe_callback = function(name) exe_callback = function(name)
if not name or #name == 0 then return end if not name or #name == 0 then
awful.tag.add(name, { screen = awful.screen.focused(), layout = layout or awful.layout.suit.tile }):view_only() return
end end
} awful.tag
.add(name, { screen = awful.screen.focused(), layout = layout or awful.layout.suit.tile })
:view_only()
end,
})
end end
-- Rename current tag -- Rename current tag
function util.rename_tag() function util.rename_tag()
awful.prompt.run { awful.prompt.run({
prompt = "Rename tag: ", prompt = "Rename tag: ",
textbox = awful.screen.focused().mypromptbox.widget, textbox = awful.screen.focused().mypromptbox.widget,
exe_callback = function(new_name) exe_callback = function(new_name)
if not new_name or #new_name == 0 then return end if not new_name or #new_name == 0 then
local t = awful.screen.focused().selected_tag return
if t then end
t.name = new_name local t = awful.screen.focused().selected_tag
end if t then
end t.name = new_name
} end
end,
})
end end
-- Move current tag -- Move current tag
-- pos in {-1, 1} <-> {previous, next} tag position -- pos in {-1, 1} <-> {previous, next} tag position
function util.move_tag(pos) function util.move_tag(pos)
local tag = awful.screen.focused().selected_tag local tag = awful.screen.focused().selected_tag
if tonumber(pos) <= -1 then if tonumber(pos) <= -1 then
awful.tag.move(tag.index - 1, tag) awful.tag.move(tag.index - 1, tag)
else else
awful.tag.move(tag.index + 1, tag) awful.tag.move(tag.index + 1, tag)
end end
end end
-- Delete current tag -- Delete current tag
-- Any rule set on the tag shall be broken -- Any rule set on the tag shall be broken
function util.delete_tag() function util.delete_tag()
local t = awful.screen.focused().selected_tag local t = awful.screen.focused().selected_tag
if not t then return end if not t then
t:delete() return
end
t:delete()
end end
-- }}} -- }}}
-- On the fly useless gaps change -- On the fly useless gaps change
function util.useless_gaps_resize(thatmuch, s, t) function util.useless_gaps_resize(thatmuch, s, t)
local scr = s or awful.screen.focused() local scr = s or awful.screen.focused()
local tag = t or scr.selected_tag local tag = t or scr.selected_tag
tag.gap = tag.gap + tonumber(thatmuch) tag.gap = tag.gap + tonumber(thatmuch)
awful.layout.arrange(scr) awful.layout.arrange(scr)
end end
return setmetatable(util, { __index = wrequire }) return setmetatable(util, { __index = wrequire })

View file

@ -10,8 +10,8 @@
local format = string.format local format = string.format
local setmetatable = setmetatable local setmetatable = setmetatable
-- Lain markup util submodule -- Lina markup util submodule
-- lain.util.markup -- lina.util.markup
local markup = { fg = {}, bg = {} } local markup = { fg = {}, bg = {} }
-- Convenience tags -- Convenience tags

View file

@ -8,10 +8,10 @@
--]] --]]
-- Menu iterator with Naughty notifications -- Menu iterator with Naughty notifications
-- lain.util.menu_iterator -- lina.util.menu_iterator
local naughty = require("naughty") local naughty = require("naughty")
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local atable = require("awful.util").table local atable = require("awful.util").table
local assert = assert local assert = assert
local pairs = pairs local pairs = pairs

View file

@ -10,8 +10,8 @@ local wibox = require("wibox")
local gears = require("gears") local gears = require("gears")
local beautiful = require("beautiful") local beautiful = require("beautiful")
-- Lain Cairo separators util submodule -- Lina Cairo separators util submodule
-- lain.util.separators -- lina.util.separators
local separators = { height = beautiful.separators_height or 0, width = beautiful.separators_width or 9 } local separators = { height = beautiful.separators_height or 0, width = beautiful.separators_width or 9 }
-- [[ Arrow -- [[ Arrow

View file

@ -6,13 +6,13 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local shell = require("awful.util").shell local shell = require("awful.util").shell
local wibox = require("wibox") local wibox = require("wibox")
local string = string local string = string
-- ALSA volume -- ALSA volume
-- lain.widget.alsa -- lina.widget.alsa
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -6,7 +6,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local awful = require("awful") local awful = require("awful")
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
@ -16,7 +16,7 @@ local type = type
local tonumber = tonumber local tonumber = tonumber
-- ALSA volume bar -- ALSA volume bar
-- lain.widget.alsabar -- lina.widget.alsabar
local function factory(args) local function factory(args)
local alsabar = { local alsabar = {

View file

@ -6,7 +6,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local fs = require("gears.filesystem") local fs = require("gears.filesystem")
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
@ -16,13 +16,13 @@ local ipairs = ipairs
local tonumber = tonumber local tonumber = tonumber
-- Battery infos -- Battery infos
-- lain.widget.bat -- lina.widget.bat
local function factory(args) local function factory(args)
local pspath = args.pspath or "/sys/class/power_supply/" local pspath = args.pspath or "/sys/class/power_supply/"
if not fs.is_dir(pspath) then if not fs.is_dir(pspath) then
naughty.notify { text = "lain.widget.bat: invalid power supply path", timeout = 0 } naughty.notify { text = "lina.widget.bat: invalid power supply path", timeout = 0 }
return return
end end

View file

@ -5,8 +5,8 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local markup = require("lain.util.markup") local markup = require("lina.util.markup")
local awful = require("awful") local awful = require("awful")
local naughty = require("naughty") local naughty = require("naughty")
local floor = math.floor local floor = math.floor
@ -19,7 +19,7 @@ local tonumber = tonumber
local tostring = tostring local tostring = tostring
-- Calendar notification -- Calendar notification
-- lain.widget.cal -- lina.widget.cal
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -1,6 +1,6 @@
--[[ --[[
Lain Lina
Layouts, widgets and utilities for Awesome WM Layouts, widgets and utilities for Awesome WM
Users contributed widgets section Users contributed widgets section
@ -10,9 +10,9 @@
--]] --]]
local wrequire = require("lain.helpers").wrequire local wrequire = require("lina.helpers").wrequire
local setmetatable = setmetatable local setmetatable = setmetatable
local widget = { _NAME = "lain.widget.contrib" } local widget = { _NAME = "lina.widget.contrib" }
return setmetatable(widget, { __index = wrequire }) return setmetatable(widget, { __index = wrequire })

View file

@ -5,7 +5,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local shell = require("awful.util").shell local shell = require("awful.util").shell
local focused = require("awful.screen").focused local focused = require("awful.screen").focused
local escape_f = require("awful.util").escape local escape_f = require("awful.util").escape
@ -15,7 +15,7 @@ local os = os
local string = string local string = string
-- MOC audio player -- MOC audio player
-- lain.widget.contrib.moc -- lina.widget.contrib.moc
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -6,13 +6,13 @@
--]] --]]
local async = require("lain.helpers").async local async = require("lina.helpers").async
local awful = require("awful") local awful = require("awful")
local execute = os.execute local execute = os.execute
local type = type local type = type
-- Redshift -- Redshift
-- lain.widget.contrib.redshift -- lina.widget.contrib.redshift
local redshift = { active = false, pid = nil } local redshift = { active = false, pid = nil }
function redshift.start() function redshift.start()

View file

@ -5,14 +5,14 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local markup = require("lain.util").markup local markup = require("lina.util").markup
local awful = require("awful") local awful = require("awful")
local naughty = require("naughty") local naughty = require("naughty")
local mouse = mouse local mouse = mouse
-- Taskwarrior notification -- Taskwarrior notification
-- lain.widget.contrib.task -- lina.widget.contrib.task
local task = {} local task = {}
function task.hide() function task.hide()

View file

@ -6,7 +6,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local focused = require("awful.screen").focused local focused = require("awful.screen").focused
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
@ -15,7 +15,7 @@ local type = type
-- ThinkPad battery infos and widget creator -- ThinkPad battery infos and widget creator
-- http://www.thinkwiki.org/wiki/Tp_smapi -- http://www.thinkwiki.org/wiki/Tp_smapi
-- lain.widget.contrib.tp_smapi -- lina.widget.contrib.tp_smapi
local function factory(apipath) local function factory(apipath)
local tp_smapi = { local tp_smapi = {

View file

@ -6,13 +6,13 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local wibox = require("wibox") local wibox = require("wibox")
local math = math local math = math
local string = string local string = string
-- CPU usage -- CPU usage
-- lain.widget.cpu -- lina.widget.cpu
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -7,7 +7,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local Gio = require("lgi").Gio local Gio = require("lgi").Gio
local focused = require("awful.screen").focused local focused = require("awful.screen").focused
local wibox = require("wibox") local wibox = require("wibox")
@ -23,7 +23,7 @@ local query_used = Gio.FILE_ATTRIBUTE_FILESYSTEM_USED
local query = query_size .. "," .. query_free .. "," .. query_used local query = query_size .. "," .. query_free .. "," .. query_used
-- File systems info -- File systems info
-- lain.widget.fs -- lina.widget.fs
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -5,90 +5,111 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
local awful = require("awful") local awful = require("awful")
local string = string local string = string
local type = type local type = type
local tonumber = tonumber local tonumber = tonumber
-- Mail IMAP check -- Mail IMAP check
-- lain.widget.imap -- lina.widget.imap
local function factory(args) local function factory(args)
args = args or {} args = args or {}
local imap = { widget = args.widget or wibox.widget.textbox() } local imap = { widget = args.widget or wibox.widget.textbox() }
local server = args.server local server = args.server
local mail = args.mail local mail = args.mail
local password = args.password local password = args.password
local port = args.port or 993 local port = args.port or 993
local timeout = args.timeout or 60 local timeout = args.timeout or 60
local pwdtimeout = args.pwdtimeout or 10 local pwdtimeout = args.pwdtimeout or 10
local is_plain = args.is_plain or false local is_plain = args.is_plain or false
local followtag = args.followtag or false local followtag = args.followtag or false
local notify = args.notify or "on" local notify = args.notify or "on"
local settings = args.settings or function() end local settings = args.settings or function() end
local head_command = "curl --connect-timeout 3 -fsm 3" local head_command = "curl --connect-timeout 3 -fsm 3"
local request = "-X 'STATUS INBOX (MESSAGES RECENT UNSEEN)'" local request = "-X 'STATUS INBOX (MESSAGES RECENT UNSEEN)'"
if not server or not mail or not password then return end if not server or not mail or not password then
return
end
mail_notification_preset = { mail_notification_preset = {
icon = helpers.icons_dir .. "mail.png", icon = helpers.icons_dir .. "mail.png",
position = "top_left" position = "top_left",
} }
helpers.set_map(mail, 0) helpers.set_map(mail, 0)
if not is_plain then if not is_plain then
if type(password) == "string" or type(password) == "table" then if type(password) == "string" or type(password) == "table" then
helpers.async(password, function(f) password = f:gsub("\n", "") end) helpers.async(password, function(f)
elseif type(password) == "function" then password = f:gsub("\n", "")
imap.pwdtimer = helpers.newtimer(mail .. "-password", pwdtimeout, function() end)
local retrieved_password, try_again = password() elseif type(password) == "function" then
if not try_again then imap.pwdtimer = helpers.newtimer(mail .. "-password", pwdtimeout, function()
imap.pwdtimer:stop() -- stop trying to retrieve local retrieved_password, try_again = password()
password = retrieved_password or "" -- failsafe if not try_again then
end imap.pwdtimer:stop() -- stop trying to retrieve
end, true, true) password = retrieved_password or "" -- failsafe
end end
end end, true, true)
end
end
function imap.update() function imap.update()
-- do not update if the password has not been retrieved yet -- do not update if the password has not been retrieved yet
if type(password) ~= "string" then return end if type(password) ~= "string" then
return
end
local curl = string.format("%s --url imaps://%s:%s/INBOX -u %s:'%s' %s -k", local curl = string.format(
head_command, server, port, mail, password, request) "%s --url imaps://%s:%s/INBOX -u %s:'%s' %s -k",
head_command,
server,
port,
mail,
password,
request
)
helpers.async(curl, function(f) helpers.async(curl, function(f)
imap_now = { ["MESSAGES"] = 0, ["RECENT"] = 0, ["UNSEEN"] = 0 } imap_now = { ["MESSAGES"] = 0, ["RECENT"] = 0, ["UNSEEN"] = 0 }
for s,d in f:gmatch("(%w+)%s+(%d+)") do imap_now[s] = tonumber(d) end for s, d in f:gmatch("(%w+)%s+(%d+)") do
mailcount = imap_now["UNSEEN"] -- backwards compatibility imap_now[s] = tonumber(d)
widget = imap.widget end
mailcount = imap_now["UNSEEN"] -- backwards compatibility
widget = imap.widget
settings() settings()
if notify == "on" and mailcount and mailcount >= 1 and mailcount > helpers.get_map(mail) then if notify == "on" and mailcount and mailcount >= 1 and mailcount > helpers.get_map(mail) then
if followtag then mail_notification_preset.screen = awful.screen.focused() end if followtag then
naughty.notify { mail_notification_preset.screen = awful.screen.focused()
preset = mail_notification_preset, end
text = string.format("%s has <b>%d</b> new message%s", mail, mailcount, mailcount == 1 and "" or "s") naughty.notify({
} preset = mail_notification_preset,
end text = string.format(
"%s has <b>%d</b> new message%s",
mail,
mailcount,
mailcount == 1 and "" or "s"
),
})
end
helpers.set_map(mail, imap_now["UNSEEN"]) helpers.set_map(mail, imap_now["UNSEEN"])
end) end)
end
end imap.timer = helpers.newtimer(mail, timeout, imap.update, true, true)
imap.timer = helpers.newtimer(mail, timeout, imap.update, true, true) return imap
return imap
end end
return factory return factory

View file

@ -1,6 +1,6 @@
--[[ --[[
Lain Lina
Layouts, widgets and utilities for Awesome WM Layouts, widgets and utilities for Awesome WM
Widgets section Widgets section
@ -11,9 +11,9 @@
--]] --]]
local wrequire = require("lain.helpers").wrequire local wrequire = require("lina.helpers").wrequire
local setmetatable = setmetatable local setmetatable = setmetatable
local widget = { _NAME = "lain.widget" } local widget = { _NAME = "lina.widget" }
return setmetatable(widget, { __index = wrequire }) return setmetatable(widget, { __index = wrequire })

View file

@ -6,12 +6,12 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local wibox = require("wibox") local wibox = require("wibox")
local gmatch, lines, floor = string.gmatch, io.lines, math.floor local gmatch, lines, floor = string.gmatch, io.lines, math.floor
-- Memory usage (ignoring caches) -- Memory usage (ignoring caches)
-- lain.widget.mem -- lina.widget.mem
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -6,7 +6,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local shell = require("awful.util").shell local shell = require("awful.util").shell
local escape_f = require("awful.util").escape local escape_f = require("awful.util").escape
local focused = require("awful.screen").focused local focused = require("awful.screen").focused
@ -16,7 +16,7 @@ local os = os
local string = string local string = string
-- MPD infos -- MPD infos
-- lain.widget.mpd -- lina.widget.mpd
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -6,13 +6,13 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
local string = string local string = string
-- Network infos -- Network infos
-- lain.widget.net -- lina.widget.net
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -5,14 +5,14 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local shell = require("awful.util").shell local shell = require("awful.util").shell
local wibox = require("wibox") local wibox = require("wibox")
local string = string local string = string
local type = type local type = type
-- PulseAudio volume -- PulseAudio volume
-- lain.widget.pulse -- lina.widget.pulse
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -6,7 +6,7 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local awful = require("awful") local awful = require("awful")
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
@ -16,7 +16,7 @@ local type = type
local tonumber = tonumber local tonumber = tonumber
-- PulseAudio volume bar -- PulseAudio volume bar
-- lain.widget.pulsebar -- lina.widget.pulsebar
local function factory(args) local function factory(args)
local pulsebar = { local pulsebar = {

View file

@ -6,12 +6,12 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local wibox = require("wibox") local wibox = require("wibox")
local open, match = io.open, string.match local open, match = io.open, string.match
-- System load -- System load
-- lain.widget.sysload -- lina.widget.sysload
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -5,12 +5,12 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local wibox = require("wibox") local wibox = require("wibox")
local tonumber = tonumber local tonumber = tonumber
-- {thermal,core} temperature info -- {thermal,core} temperature info
-- lain.widget.temp -- lina.widget.temp
local function factory(args) local function factory(args)
args = args or {} args = args or {}

View file

@ -5,8 +5,8 @@
--]] --]]
local helpers = require("lain.helpers") local helpers = require("lina.helpers")
local json = require("lain.util").dkjson local json = require("lina.util").dkjson
local focused = require("awful.screen").focused local focused = require("awful.screen").focused
local naughty = require("naughty") local naughty = require("naughty")
local wibox = require("wibox") local wibox = require("wibox")
@ -18,7 +18,7 @@ local tonumber = tonumber
-- OpenWeatherMap -- OpenWeatherMap
-- current weather and X-days forecast -- current weather and X-days forecast
-- lain.widget.weather -- lina.widget.weather
local function factory(args) local function factory(args)
args = args or {} args = args or {}