Refactoring
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
DEFAULT_LAYOUT = 'master'
|
||||
|
||||
exec = hl.dsp.exec_cmd
|
||||
shortcut = hl.dsp.send_shortcut
|
||||
|
||||
function bind(key, cmd, desc, opts)
|
||||
opts = opts or {}
|
||||
opts.desc = desc
|
||||
hl.bind(key, cmd, opts)
|
||||
end
|
||||
|
||||
function bindl(key, cmd, desc, opts)
|
||||
opts = opts or {}
|
||||
opts.locked = true
|
||||
bind(key, cmd, desc, opts)
|
||||
end
|
||||
|
||||
function bindlr(key, cmd, desc, opts)
|
||||
opts = opts or {}
|
||||
opts.repeating = true
|
||||
bindl(key, cmd, desc, opts)
|
||||
end
|
||||
|
||||
function notify(text, duration)
|
||||
hl.notification.create { text = text, duration = duration or 2000 }
|
||||
end
|
||||
|
||||
function is_lid_closed()
|
||||
local file = io.open('/proc/acpi/button/lid/LID0/state', 'r')
|
||||
|
||||
if not file then
|
||||
file = io.open('/proc/acpi/button/lid/LID/state', 'r')
|
||||
end
|
||||
|
||||
if file then
|
||||
local state = file:read '*a'
|
||||
file:close()
|
||||
return string.find(state, 'closed') ~= nil
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
||||
|
||||
function toggle_laptop_monitor()
|
||||
hl.monitor {
|
||||
output = 'desc:BOE NE160QDM-NZ6',
|
||||
disabled = is_lid_closed(),
|
||||
}
|
||||
end
|
||||
|
||||
function get_current_layout()
|
||||
local workspace = hl.get_active_workspace()
|
||||
if hl.get_active_special_workspace() then
|
||||
workspace = hl.get_active_special_workspace()
|
||||
end
|
||||
if not workspace then
|
||||
return 'master'
|
||||
end
|
||||
|
||||
return workspace.tiled_layout
|
||||
end
|
||||
|
||||
function get_active_workspace()
|
||||
local workspace = hl.get_active_workspace()
|
||||
if hl.get_active_special_workspace() then
|
||||
workspace = hl.get_active_special_workspace()
|
||||
end
|
||||
|
||||
return workspace
|
||||
end
|
||||
|
||||
function is_laptop_screen_focused()
|
||||
local monitor = hl.get_active_monitor()
|
||||
|
||||
return monitor and monitor.description == 'BOE NE160QDM-NZ6'
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user