38 lines
804 B
Lua
38 lines
804 B
Lua
local bind = require("lua.lib.bind")
|
|
|
|
local M = {}
|
|
|
|
local function screenshot_fullscreen()
|
|
local home = os.getenv("HOME")
|
|
local dir = home .. "/Pictures/screenshots/"
|
|
local name = "screenshot_" .. os.date("%Y%d%m_%H%M%S") .. ".png"
|
|
local file = dir .. name
|
|
|
|
local monitor = hl.get_active_monitor()
|
|
if monitor == nil then
|
|
return
|
|
end
|
|
|
|
hl.exec_cmd(
|
|
string.format(
|
|
"grim -o %q %q && " .. "wl-copy --type image/png < %q && " .. "notify-send %q %q && " .. "swappy -f %q",
|
|
monitor.name,
|
|
file,
|
|
file,
|
|
"Screenshot created and copied to clipboard",
|
|
"Mode: Fullscreen",
|
|
file
|
|
)
|
|
)
|
|
end
|
|
|
|
M.binds = {
|
|
{
|
|
keys = bind.with_leader("SHIFT + Print"),
|
|
dispatcher = screenshot_fullscreen,
|
|
desc = "Make fullscreen screenshot",
|
|
},
|
|
}
|
|
|
|
return M
|