diff --git a/basic/keybinds.lua b/basic/keybinds.lua index e846265..763fb47 100644 --- a/basic/keybinds.lua +++ b/basic/keybinds.lua @@ -8,8 +8,6 @@ local ipc = "qs -c noctalia-shell ipc call " -- 1. Basic Binds hl.bind(mainMod .. " + Q ", hl.dsp.exec_cmd(terminal)) -hl.bind(" ALT + Q " , hl.dsp.exec_cmd(terminal, {window = "class:popup-term"})) -hl.bind(mainMod .. " + W ", hl.dsp.exec_cmd(terminal, {window = "class:popup-term"})) hl.bind(mainMod .. " + C ", hl.dsp.window.close()) hl.bind(mainMod .. " + SHIFT + CTRL + M ", hl.dsp.exit()) -- hl.bind(mainMod .. " + E ", hl.dsp.exec(fileManager)) @@ -86,16 +84,19 @@ hl.bind(mainMod .. " + X ", hl.dsp.workspace.toggle_special("phantom ")) hl.bind(mainMod .. " + SHIFT + S ", hl.dsp.window.move({ workspace = "special:magic" })) hl.bind(mainMod .. " + SHIFT + B ", hl.dsp.window.move({ workspace = "special:book" })) +hl.bind(mainMod .. " + SHIFT + G ", hl.dsp.window.move({ workspace = "special:gaming" })) --- TODO Rework this with lua -hl.bind(mainMod .. " + D " ,hl.dsp.workspace.toggle_special("discord ")) +hl.bind(mainMod .. " + D " ,function () + hl.dispatch(hl.dsp.workspace.toggle_special("vesktop")) + hl.exec_cmd("vesktop -m", {workspace ="special:vesktop silent"}) +end) hl.bind(mainMod .. " + E " ,function () hl.dispatch(hl.dsp.workspace.toggle_special("email")) - hl.exec_cmd(email) + hl.exec_cmd(email, {workspace ="special:email silent"}) end) hl.bind(mainMod .. " + G " ,function () hl.dispatch(hl.dsp.workspace.toggle_special("gaming")) - hl.exec_cmd("steam -forcedesktopscaling 0.5") + hl.exec_cmd("steam -forcedesktopscaling 0.5",{workspace ="special:gaming silent"}) end) hl.bind(mainMod .. " + N " ,function () hl.dispatch(hl.dsp.workspace.toggle_special("notes")) @@ -130,6 +131,9 @@ hl.bind(mainMod .. " + F " ,hl.dsp.exec_cmd(browser)) hl.bind("ALT + C" ,hl.dsp.exec_cmd(ipc .. "plugin:clipper openPanel")) hl.bind("code:148" ,hl.dsp.exec_cmd("kitty --class calc-term -o 'confirm_os_window_close 0' /home/venus/.cargo/bin/mathypad ")) +hl.bind(" ALT + Q " , hl.dsp.exec_cmd(terminal, {float = true, border_size = 2, size = {"(monitor_w * 0.8)", "(monitor_h * 0.7)"}})) +hl.bind(mainMod .. " + W ", hl.dsp.exec_cmd(terminal, {float = true, border_size = 2, size = {"(monitor_w * 0.8)", "(monitor_h * 0.7)"}})) + -- TODO rework with LUA -- hl.bind(mainMod .. " + escape" ,hl.dsp.exec_cmd("kitty --class btop -o "confirm_os_window_close 0" /usr/bin/btop")) -- hl.bind(mainMod .. " + SHIFT + escape" ,hl.dsp.exec_cmd("kitty --class btop -o "confirm_os_window_close 0" /usr/bin/nvtop")) @@ -145,9 +149,6 @@ hl.bind(mainMod .. " + SHIFT + I" ,hl.dsp.exec_cmd("scrcpy --no-audio --keyboar ---- 10.1 Shortcuts hl.bind(mainMod .. " + CTRL + L ", hl.dsp.exec_cmd(ipc .. "lockScreen lock")) --- TODO update in LUA ---hl.bind(mainMod .. " + T ", hl.dsp.exec_cmd( notify-send "$(/home/venus/.config/hypr/scripts/getIp.sh)") --- hl.bind(mainMod .. " + T ", hl.dsp.exec_cmd( kdeconnect-app) -- TODO Implement these ---- Change background opacity of terminal window @@ -172,6 +173,24 @@ hl.bind(mainMod .. " + O ", hl.dsp.submap("open-apps")) ---- 13. Mouse binds ---- 14. submaps! +-- TODO write a timer submap that starts a timer of custom length when a key is pressed +hl.bind(mainMod .. " + T" ,function() + hl.dispatch(hl.dsp.submap("timer")) + hl.exec_cmd(ipc .. "plugin:timer toggle") + end) +hl.define_submap("timer", function () + hl.bind("T" ,hl.dsp.exec_cmd(ipc .. "plugin:timer toggle")) + hl.bind("P" ,hl.dsp.exec_cmd(ipc .. "plugin:timer pause")) + hl.bind("R" ,hl.dsp.exec_cmd(ipc .. "plugin:timer reset")) + hl.bind("S" ,hl.dsp.exec_cmd(ipc .. "plugin:timer start 10")) + hl.bind("A" ,hl.dsp.exec_cmd(ipc .. "plugin:timer start 240")) + -- include the double escape or no? + hl.bind("catchall" ,function () + hl.dispatch(hl.dsp.submap("reset")) + hl.dispatch(hl.dsp.exec_cmd(ipc .. "plugin:timer toggle ")) + end) +end) + hl.define_submap("quick-settings", function () hl.bind("V" ,hl.dsp.exec_cmd("protonvpn-app & hyprctl dispatch submap vpn")) hl.bind("S" ,hl.dsp.exec_cmd(ipc .. "settings toggle")) diff --git a/basic/looks.lua b/basic/looks.lua index 3c96f4c..8439d2a 100644 --- a/basic/looks.lua +++ b/basic/looks.lua @@ -11,7 +11,7 @@ local colors = dofile(os.getenv("HOME") .. "/.config/hypr/noctalia/noctalia-colo hl.config ({ general = { gaps_in = 5, - gaps_out = 10, + gaps_out = 4, border_size = 1, -- https://wiki.hypr.land/Configuring/Variables/--variable-types for info about colors, col = { @@ -81,58 +81,3 @@ hl.animation({ leaf = "workspaces", enabled = true, speed = 1.94, bezier = " hl.animation({ leaf = "workspacesIn", enabled = true, speed = 1.21, bezier = "almostLinear", style = "fade" }) hl.animation({ leaf = "workspacesOut", enabled = true, speed = 1.94, bezier = "almostLinear", style = "fade" }) hl.animation({ leaf = "zoomFactor", enabled = true, speed = 7, bezier = "quick" }) - - --- Ref https://wiki.hypr.land/Configuring/Workspace-Rules/ --- "Smart gaps" / "No gaps when only" --- uncomment all if you wish to use that. --- workspace = w[tv1], gapsout:0, gapsin:0 --- workspace = f[1], gapsout:0, gapsin:0 --- windowrule { --- name = no-gaps-wtv1 --- match:float = false --- match:workspace = w[tv1] --- --- border_size = 0 --- rounding = 0 --- } --- --- windowrule { --- name = no-gaps-f1 --- match:float = false --- match:workspace = f[1] --- --- border_size = 0 --- rounding = 0 --- } - --- See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more -hl.config ({ - dwindle = { - preserve_split = true, - }, -}) - --- See https://wiki.hypr.land/Configuring/Master-Layout/ for more -hl.config ({ - master = { - new_status = "master", - }, -}) - --- See https://wiki.hypr.land/Configuring/Layouts/Scrolling-Layout/ for more -hl.config({ - scrolling = { - fullscreen_on_one_column = true, - }, -}) --- https://wiki.hypr.land/Configuring/Variables/--misc --- -hl.config ({ misc = { - force_default_wallpaper = 0, -- Set to 0 or 1 to disable the anime mascot wallpapers - disable_hyprland_logo = false, -- If true disables the random hyprland logo / anime girl background. :( - }, -}) - - - diff --git a/basic/vars.lua b/basic/vars.lua index bee29a0..ce38c21 100644 --- a/basic/vars.lua +++ b/basic/vars.lua @@ -1,3 +1,37 @@ +hl.config = { + input = { + kb_layout = "us", + -- kb_variant = + -- kb_model = + -- kb_options = + -- kb_rules = + follow_mouse = 1, + sensitivity = 0, + + touchpad = { + natural_scroll = true, + }, + cursor = { + inactive_timeout= 0.1, + }, + }, + xwayland = { + force_zero_scaling = true + }, + misc = { + force_default_wallpaper = 1, + disable_hyprland_logo = false, + }, + dwindle = { + preserve_split = true, + }, + master = { + new_status = "master", + }, + scrolling = { + fullscreen_on_one_column = true, + }, +} ------------------- --- PERMISSIONS --- @@ -14,34 +48,3 @@ -- permission = /usr/(bin|local/bin)/grim, screencopy, allow -- permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow -- permission = /usr/(bin|local/bin)/hyprpm, plugin, allow - - - ------------------ ------ INPUT ----- ----------------- - --- https://wiki.hypr.land/Configuring/Variables/#input -hl.config = { - input = { - kb_layout = "us", - -- kb_variant = - -- kb_model = - -- kb_options = - -- kb_rules = - follow_mouse = 1, - sensitivity = 0, -- -1.0 - 1.0, 0 means no modification. - - touchpad = { - natural_scroll = true - }, - cursor = { - inactive_timeout = 0.1, - }, - }, - xwayland = { - force_zero_scaling = true - } -} - - diff --git a/basic/windows.lua b/basic/windows.lua index 28f1834..bf6b9c0 100644 --- a/basic/windows.lua +++ b/basic/windows.lua @@ -72,4 +72,12 @@ hl.window_rule( { size = {"monitor_w*.4", "monitor_h*.4"}, }) +hl.workspace_rule( { + workspace = "w[tv1]", + gaps_out = 1, + gaps_in = 1, + border_size = 1, + no_rounding = false, +}) + diff --git a/custom-functions.lua b/custom-functions.lua new file mode 100644 index 0000000..326d28a --- /dev/null +++ b/custom-functions.lua @@ -0,0 +1,6 @@ +-- custom-functions.lua +local C = {} +function C.startTimer() +-- TODO implement custom timer logic here +end +return C diff --git a/hyprland.lua b/hyprland.lua index 66096d8..0aaa2ae 100644 --- a/hyprland.lua +++ b/hyprland.lua @@ -21,10 +21,10 @@ hl.on("hyprland.start", function() hl.exec_cmd("hyprpm reload -n") hl.exec_cmd("kdeconnectd") -- hl.exec_cmd("hyprshell run &") - hl.exec_cmd("[workspace special:discord silent] vesktop -m") - hl.exec_cmd("[workspace special:email silent]" .. email) - hl.exec_cmd("[workspace special:notes silent]" .. notes) - hl.exec_cmd("[workspace special:gaming silent] steam --forcedesktopscaling 0.5") + hl.exec_cmd("vesktop -m", {workspace ="special:vesktop silent"}) + hl.exec_cmd(email, {workspace ="special:vesktop silent"}) + hl.exec_cmd(notes, {workspace ="special:vesktop silent"}) + hl.exec_cmd("steam --forcedesktopscaling 0.5", {workspace ="special:vesktop silent"}) hl.exec_cmd("protonmail-bridge") --no-window) TODO set up sddm to unlock keychain end)