refactor(dotfiles): separate desktop configuration
This commit is contained in:
+4
-2
@@ -5,6 +5,8 @@ alias wtr="wt remove @"
|
||||
alias ll="eza -l -g --icons"
|
||||
alias ls="eza -al --color=always --group-directories-first"
|
||||
alias g="git"
|
||||
alias neogit="nvim +Neogit"
|
||||
alias ngit="nvim +Neogit"
|
||||
alias zdiff="nvim +Zdiff"
|
||||
alias review="nvim '+Zdiff origin/HEAD'"
|
||||
alias review="nvim +'Zdiff origin/HEAD'"
|
||||
alias wm="workmux"
|
||||
alias wmd="workmux dashboard"
|
||||
|
||||
+20
-11
@@ -11,30 +11,39 @@ append_path "$HOME/.local/bin"
|
||||
append_path "$HOME/.cargo/bin"
|
||||
|
||||
export PATH
|
||||
if [ -x $(command -v bat) ]; then
|
||||
export PAGER="bat"
|
||||
fi
|
||||
|
||||
if [ test -x $(command -v mise) ]; then
|
||||
if [ -x $(command -v mise) ]; then
|
||||
eval "$(mise activate bash)"
|
||||
fi
|
||||
|
||||
if [ test -x $(command -v zoxide) ]; then
|
||||
if [ -x $(command -v zoxide) ]; then
|
||||
eval "$(zoxide init bash)"
|
||||
fi
|
||||
|
||||
if [ test -x $(command -v fzf) ]; then
|
||||
if [ -x $(command -v fzf) ]; then
|
||||
eval "$(fzf --bash)"
|
||||
fi
|
||||
|
||||
if [ -z "$SSH_CONNECTION" ]; then
|
||||
export SSH_AUTH_SOCK="/run/user/$UID/gnupg/S.gpg-agent.ssh"
|
||||
fi
|
||||
if [ -x $(command -v wt) ]; then
|
||||
eval "$(command wt config shell init bash)";
|
||||
fi
|
||||
|
||||
# Create a predictable symlink pointing to the current SSH auth socket
|
||||
auth_sock="$HOME/.ssh/ssh_auth_sock"
|
||||
if [ -n "$SSH_AUTH_SOCK" ] && [ "$SSH_AUTH_SOCK" != "$auth_sock" ]; then
|
||||
mkdir -p "$HOME/.ssh"
|
||||
ln -sf "$SSH_AUTH_SOCK" "$auth_sock"
|
||||
if [ -n "$SSH_CONNECTION" ]; then
|
||||
# Create a predictable symlink pointing to the current SSH auth socket
|
||||
auth_sock="$HOME/.ssh/ssh_auth_sock"
|
||||
if [ -n "$SSH_AUTH_SOCK" ] && [ "$SSH_AUTH_SOCK" != "$auth_sock" ]; then
|
||||
mkdir -p "$HOME/.ssh" && ln -snf "$SSH_AUTH_SOCK" "$auth_sock"
|
||||
fi
|
||||
else
|
||||
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
||||
fi
|
||||
|
||||
for _f in "$HOME"/.config/herdr/plugins/github/herdr-automatic-rename-*/shell/hook.bash; do
|
||||
[ -r "$_f" ] && { source "$_f"; break; }
|
||||
done
|
||||
|
||||
[[ -f ~/.bash_aliases ]] && . ~/.bash_aliases
|
||||
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
--ozone-platform=wayland
|
||||
--ozone-platform-hint=wayland
|
||||
--enable-features=TouchpadOverscrollHistoryNavigation
|
||||
--disable-features=WaylandWpColorManagerV1
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>Monaspace Neon</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>Monaspace Radon</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>Monaspace Xenon</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>MonaspiceNe Nerd Font</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>MonaspiceRn Nerd Font</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<!-- created by lxqt-config-appearance (DO NOT EDIT!) -->
|
||||
<fontconfig>
|
||||
<match target="font">
|
||||
<test name="family" compare="eq" ignore-blanks="false">
|
||||
<string>MonaspiceXe Nerd Font</string>
|
||||
</test>
|
||||
<edit name="fontfeatures" mode="assign_replace">
|
||||
<string>calt on</string>
|
||||
<string>dlig on</string>
|
||||
<string>ss01 on</string>
|
||||
<string>ss02 on</string>
|
||||
<string>ss03 on</string>
|
||||
<string>ss04 on</string>
|
||||
<string>ss05 on</string>
|
||||
<string>ss06 on</string>
|
||||
<string>ss07 on</string>
|
||||
<string>ss08 on</string>
|
||||
</edit>
|
||||
</match>
|
||||
</fontconfig>
|
||||
@@ -1,32 +0,0 @@
|
||||
[main]
|
||||
font=MonaspiceNeNerdFontMono:size=13
|
||||
term=xterm-256color
|
||||
pad=3x3
|
||||
initial-window-mode=windowed
|
||||
workers=0
|
||||
include=~/.local/state/omarchy/current/theme/foot.ini
|
||||
|
||||
[scrollback]
|
||||
lines=10000
|
||||
multiplier=7.0
|
||||
|
||||
[cursor]
|
||||
style=block
|
||||
blink=no
|
||||
|
||||
[key-bindings]
|
||||
clipboard-copy=Control+Insert Control+Shift+c XF86Copy
|
||||
primary-paste=none
|
||||
clipboard-paste=Shift+Insert Control+Shift+v XF86Paste
|
||||
|
||||
[tweak]
|
||||
overflowing-glyphs=yes
|
||||
|
||||
[text-bindings]
|
||||
# Send Shift+Return as CSI-u so TUIs can distinguish it from Return.
|
||||
\x1b[13;2u=Shift+Return
|
||||
# Send Alt+Shift+Return as CSI-u so tmux can match M-S-Enter.
|
||||
\x1b[13;4u=Mod1+Shift+Return
|
||||
|
||||
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
window-decoration = false
|
||||
copy-on-select = clipboard
|
||||
|
||||
gtk-titlebar = false
|
||||
gtk-tabs-location = hidden
|
||||
#gtk-titlebar-style = tabs
|
||||
#gtk-titlebar-hide-when-maximized = true
|
||||
gtk-wide-tabs = false
|
||||
window-show-tab-bar = auto
|
||||
config-file = "theme"
|
||||
font-family = "MonaspiceNeNerdFontMono"
|
||||
font-size = 13
|
||||
#adjust-cell-width = -7%
|
||||
adjust-cell-height = 5%
|
||||
#background-opacity = 0.90
|
||||
#background-blur-radius = 20
|
||||
confirm-close-surface = false
|
||||
font-feature = +calt
|
||||
quit-after-last-window-closed = true
|
||||
quit-after-last-window-closed-delay = 5m
|
||||
|
||||
keybind = ctrl+c=unbind
|
||||
keybind = ctrl+comma=unbind
|
||||
keybind = ctrl+space=unbind
|
||||
keybind = alt+f2=reload_config
|
||||
@@ -1,7 +0,0 @@
|
||||
{
|
||||
"workspace": {
|
||||
"library": [
|
||||
"/usr/share/hypr/stubs"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock
|
||||
# unlock_cmd = loginctl unlock-session
|
||||
before_sleep_cmd = loginctl lock-session
|
||||
after_sleep_cmd = hyprctl displatch dpms on
|
||||
}
|
||||
|
||||
# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
|
||||
listener {
|
||||
timeout = 150 # 2.5min.
|
||||
on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight.
|
||||
on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 300
|
||||
on-timeout = brightnessctl -s set 10
|
||||
on-resume = brightnessctl -r
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600
|
||||
on-timeout = loginctl lock-session
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 630
|
||||
on-timeout = hyprctl dispatch dpms off
|
||||
on-resume = hyprctl dispatch dpms on
|
||||
}
|
||||
@@ -1,44 +0,0 @@
|
||||
source = ~/.local/state/omarchy/current/theme/hyprlock.conf
|
||||
|
||||
# GENERAL
|
||||
general {
|
||||
disable_loading_bar = true
|
||||
hide_cursor = true
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = ~/.local/state/omarchy/current/background
|
||||
color = $color
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 600, 100
|
||||
position = 0, 0
|
||||
halign = center
|
||||
valign = center
|
||||
|
||||
inner_color = $inner_color
|
||||
outer_color = $outer_color
|
||||
outline_thickness = 4
|
||||
|
||||
font_family = CaskaydiaMono Nerd Font
|
||||
font_color = $font_color
|
||||
|
||||
placeholder_text = Enter Password
|
||||
check_color = $check_color
|
||||
fail_text = <i>$PAMFAIL ($ATTEMPTS)</i>
|
||||
|
||||
rounding = 0
|
||||
shadow_passes = 0
|
||||
fade_on_empty = false
|
||||
}
|
||||
|
||||
auth {
|
||||
fingerprint:enabled = true
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
bind = SUPER, Z, hyprexpo:expo, toggle # can be: toggle, off/disable or on/enable
|
||||
|
||||
plugin {
|
||||
hyprexpo {
|
||||
columns = 3
|
||||
gap_size = 10
|
||||
workspace_method = 1 # center current # [center/first] [workspace] e.g. first 1 or center m+1
|
||||
|
||||
enable_gesture = true # laptop touchpad
|
||||
gesture_fingers = 3 # 3 or 4
|
||||
gesture_distance = 300 # how far is the "max"
|
||||
gesture_positive = true # positive = swipe down. Negative = swipe up.
|
||||
}
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("hyprctl setcursor Pop 24")
|
||||
end)
|
||||
@@ -1,28 +0,0 @@
|
||||
|
||||
-- Cursor size
|
||||
hl.env("XCURSOR_SIZE", "24")
|
||||
hl.env("HYPRCURSOR_SIZE", "24")
|
||||
|
||||
-- Force all apps to use Wayland
|
||||
hl.env("GDK_BACKEND", "wayland,x11,*")
|
||||
hl.env("QT_QPA_PLATFORM", "wayland;xcb")
|
||||
hl.env("QT_STYLE_OVERRIDE", "kvantum")
|
||||
hl.env("SDL_VIDEODRIVER", "wayland")
|
||||
hl.env("MOZ_ENABLE_WAYLAND", "1")
|
||||
hl.env("ELECTRON_OZONE_PLATFORM_HINT", "wayland")
|
||||
hl.env("OZONE_PLATFORM", "wayland")
|
||||
hl.env("XDG_SESSION_TYPE", "wayland")
|
||||
|
||||
-- Allow better support for screen sharing (Google Meet"," Discord, etc)
|
||||
hl.env("XDG_CURRENT_DESKTOP", "Hyprland")
|
||||
hl.env("XDG_SESSION_DESKTOP", "Hyprland")
|
||||
|
||||
-- Use XCompose file
|
||||
hl.env("XCOMPOSEFILE", "~/.XCompose")
|
||||
|
||||
-- Make Chromium use XCompose and all Wayland
|
||||
hl.env("CHROMIUM_FLAGS", "--enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4")
|
||||
|
||||
-- Make .desktop files available for wofi
|
||||
hl.env("XDG_DATA_DIRS", "/usr/share:/usr/local/share:~/.local/share")
|
||||
|
||||
@@ -1,198 +0,0 @@
|
||||
function sysinfo()
|
||||
local mem = io.popen("free -h | awk '/^Mem/ {print $3 \"/\" $2}'"):read("*a")
|
||||
local cpu = io.popen("top -bn1 | grep 'Cpu(s)' | awk '{print $2 + $4 \"%\"}'"):read("*a")
|
||||
local battery = io.popen("acpi -b | awk -F', ' '{print $2}'"):read("*a")
|
||||
local time = os.date("%Y-%m-%d %H:%M:%S")
|
||||
local monitor = hl.get_active_monitor()
|
||||
local workspace_id = monitor.active_workspace.id
|
||||
local mesg = "System Info"
|
||||
.. "\nDate: " .. time
|
||||
.. "\nFocused monitor: " .. monitor.name
|
||||
.. "\nWorkspace: " .. workspace_id
|
||||
.. "\nBattery: " .. battery
|
||||
.. "CPU: " .. cpu .. " MEM: " .. mem
|
||||
|
||||
hl.notification.create({ text = mesg, icon = "hint", duration = 5000 })
|
||||
end
|
||||
|
||||
function toggle_pin()
|
||||
local win = hl.get_active_window()
|
||||
if win == nil then
|
||||
return
|
||||
end
|
||||
|
||||
local is_pinned = win.pinned
|
||||
hl.dispatch(hl.dsp.window.pin({ action = is_pinned and "unset" or "set" }))
|
||||
end
|
||||
|
||||
function dispatch_focus_or_launch(opts)
|
||||
return function()
|
||||
focus_or_launch(opts)
|
||||
end
|
||||
end
|
||||
|
||||
function focus_or_launch(opts)
|
||||
local match = opts.match
|
||||
local cmd = opts.cmd
|
||||
local field = opts.field or "class" -- class, title, initialClass, initialTitle
|
||||
local use_workspace = opts.use_workspace ~= false
|
||||
|
||||
local clients = hl.get_windows()
|
||||
|
||||
for _, client in ipairs(clients) do
|
||||
local value = client[field]
|
||||
if value and string.find(string.lower(value), string.lower(match), 1, true) then
|
||||
if use_workspace and client.workspace and client.workspace.id then
|
||||
hl.dispatch(hl.dsp.focus({
|
||||
workspace = client.workspace.id,
|
||||
on_current_monitor = true,
|
||||
}))
|
||||
end
|
||||
hl.dispatch(hl.dsp.focus({
|
||||
window = "address:" .. client.address
|
||||
}))
|
||||
|
||||
local layout = client.layout
|
||||
if not (layout and layout.name == "master" and layout.is_master) then
|
||||
hl.dispatch(hl.dsp.layout("swapwithmaster"))
|
||||
end
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
hl.exec_cmd(cmd)
|
||||
end
|
||||
|
||||
function fetch_or_launch(opts)
|
||||
local match = opts.match
|
||||
local cmd = opts.cmd
|
||||
local field = opts.field or "class" -- class, title, initialClass, initialTitle
|
||||
local use_workspace = opts.use_workspace ~= false
|
||||
|
||||
local clients = hl.get_windows()
|
||||
|
||||
local active_workspace = hl.get_active_workspace()
|
||||
|
||||
for _, client in ipairs(clients) do
|
||||
local value = client[field]
|
||||
if value and string.find(string.lower(value), string.lower(match), 1, true) then
|
||||
if use_workspace and client.workspace and client.workspace.id then
|
||||
hl.dispatch(hl.dsp.window.move({
|
||||
workspace = active_workspace,
|
||||
on_current_monitor = true,
|
||||
window = client,
|
||||
}))
|
||||
end
|
||||
|
||||
hl.dispatch(hl.dsp.focus({ window = client }))
|
||||
|
||||
local layout = client.layout
|
||||
if not (layout and layout.name == "master" and layout.is_master) then
|
||||
hl.dispatch(hl.dsp.layout("swapwithmaster"))
|
||||
end
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
hl.exec_cmd(cmd)
|
||||
end
|
||||
|
||||
function toggle_master()
|
||||
local ws = hl.get_active_workspace()
|
||||
if not ws then
|
||||
return
|
||||
end
|
||||
|
||||
local mfact = nil
|
||||
|
||||
for _, win in ipairs(ws:get_windows()) do
|
||||
local layout = win.layout
|
||||
if layout and layout.name == "master" and layout.is_master then
|
||||
mfact = math.floor(layout.perc_master * 100 + 0.5) / 100
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
if mfact == 0.7 then
|
||||
mfact = 0.5
|
||||
else
|
||||
mfact = 0.7
|
||||
end
|
||||
hl.dispatch(hl.dsp.layout("mfact exact " .. mfact))
|
||||
end
|
||||
|
||||
function toggle_float_with_limit()
|
||||
local win = hl.get_active_window()
|
||||
if win == nil then
|
||||
return
|
||||
end
|
||||
|
||||
local was_floating = win.floating
|
||||
hl.dispatch(hl.dsp.window.float({ action = "toggle" }))
|
||||
if was_floating then
|
||||
return
|
||||
end
|
||||
|
||||
local mon = win.monitor and hl.get_monitor(win.monitor) or hl.get_active_monitor()
|
||||
if mon == nil or mon.size == nil or win == nil or win.size == nil then
|
||||
return
|
||||
end
|
||||
|
||||
local max_width = math.floor(mon.width * 0.8)
|
||||
local max_height = math.floor(mon.height * 0.8)
|
||||
local scale = math.max(1, win.size.x / max_width, win.size.y / max_height)
|
||||
hl.notification.create({
|
||||
text = "Scale " ..
|
||||
scale .. " Max float size: " .. win.size.x / max_width .. "x" .. win.size.y / max_height,
|
||||
duration = 2000,
|
||||
icon =
|
||||
"hint"
|
||||
})
|
||||
if scale > 1 then
|
||||
hl.dispatch(hl.dsp.window.resize({
|
||||
x = math.floor(max_width),
|
||||
y = math.floor(max_height),
|
||||
relative = false,
|
||||
window = win
|
||||
}))
|
||||
end
|
||||
end
|
||||
|
||||
function cycle_next_window(opts)
|
||||
return function()
|
||||
hl.dispatch(hl.dsp.window.cycle_next(opts))
|
||||
|
||||
local win = hl.get_active_window()
|
||||
if win and win.floating then
|
||||
hl.dispatch(hl.dsp.window.alter_zorder({ window = win, mode = "top" }))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function window_resize_percentage(px, py)
|
||||
local win = hl.get_active_window()
|
||||
if win == nil or win.monitor == nil then
|
||||
return
|
||||
end
|
||||
local mon = hl.get_monitor(win.monitor)
|
||||
|
||||
if mon == nil or mon.size == nil or mon.size.height == nil or mon.size.width == nil then
|
||||
return
|
||||
end
|
||||
local sx = math.floor(mon.size.width * px)
|
||||
local sy = math.floor(mon.size.height * py)
|
||||
if not win.floating then
|
||||
hl.dispatch(hl.dsp.window.float({ action = "set" }))
|
||||
end
|
||||
if win.fullscreen then
|
||||
hl.dispatch(hl.dsp.window.fullscreen({ action = "unset" }))
|
||||
end
|
||||
hl.dispatch(hl.dsp.window.resize({ x = sx, y = sy, relative = false }))
|
||||
end
|
||||
|
||||
function toggle_master_scrolling()
|
||||
local current = hl.get_config("general.layout")
|
||||
local next_layout = current == "master" and "scrolling" or "master"
|
||||
|
||||
hl.config({ general = { layout = next_layout } })
|
||||
end
|
||||
@@ -1,542 +0,0 @@
|
||||
local terminal = "foot"
|
||||
local browser = "gtk-launch chromium.desktop"
|
||||
local webapp = "chromium --new-window --ozone-platform=wayland --app="
|
||||
local music = "gtk-launch spotify.desktop"
|
||||
|
||||
local HYPR = "SUPER + CONTROL + SHIFT + ALT + "
|
||||
|
||||
require("sjb/monitors")
|
||||
require("sjb/functions")
|
||||
require("sjb/rules")
|
||||
require("sjb/envs")
|
||||
require("sjb/autostart")
|
||||
require("theme")
|
||||
|
||||
hl.config({
|
||||
input = {
|
||||
kb_layout = "us",
|
||||
kb_variant = ",qwerty",
|
||||
-- kb_model =
|
||||
-- kb_options = ctrl:nocaps
|
||||
kb_options = "caps:ctrl_modifier,compose:ralt",
|
||||
-- kb_options = compose:ralt
|
||||
follow_mouse = 1,
|
||||
repeat_rate = 40,
|
||||
repeat_delay = 600,
|
||||
|
||||
touchpad = {
|
||||
natural_scroll = true,
|
||||
disable_while_typing = true,
|
||||
clickfinger_behavior = true,
|
||||
scroll_factor = 0.7,
|
||||
},
|
||||
scroll_method = "2fg",
|
||||
|
||||
sensitivity = 0, -- -1.0 - 1.0, 0 means no modification.
|
||||
},
|
||||
|
||||
ecosystem = {
|
||||
no_update_news = true,
|
||||
enforce_permissions = false,
|
||||
},
|
||||
|
||||
general = {
|
||||
gaps_in = 3,
|
||||
gaps_out = 3,
|
||||
border_size = 2,
|
||||
allow_tearing = true,
|
||||
snap = {
|
||||
enabled = true
|
||||
},
|
||||
col = {
|
||||
active_border = { colors = { "rgba(33ccffee)", "rgba(00ff99ee)" }, angle = 45 },
|
||||
inactive_border = "rgba(595959aa)",
|
||||
},
|
||||
|
||||
layout = "master"
|
||||
},
|
||||
|
||||
master = {
|
||||
allow_small_split = true,
|
||||
mfact = 0.50,
|
||||
new_status = "master",
|
||||
orientation = "center",
|
||||
},
|
||||
|
||||
dwindle = {
|
||||
preserve_split = true,
|
||||
force_split = 2,
|
||||
},
|
||||
|
||||
scrolling = {
|
||||
focus_fit_method = 0,
|
||||
column_width = 0.49,
|
||||
fullscreen_on_one_column = true
|
||||
},
|
||||
|
||||
cursor = {
|
||||
hide_on_key_press = true,
|
||||
warp_on_change_workspace = 1,
|
||||
},
|
||||
|
||||
binds = {
|
||||
hide_special_on_workspace_change = true,
|
||||
},
|
||||
decoration = {
|
||||
rounding = 1,
|
||||
active_opacity = 1.0,
|
||||
inactive_opacity = 0.95,
|
||||
dim_inactive = true,
|
||||
dim_special = 0.0,
|
||||
dim_strength = 0.3,
|
||||
|
||||
shadow = {
|
||||
enabled = false,
|
||||
range = 2,
|
||||
render_power = 3,
|
||||
color = "rgba(1a1a1aee)",
|
||||
},
|
||||
|
||||
blur = {
|
||||
enabled = false,
|
||||
size = 3,
|
||||
passes = 1,
|
||||
vibrancy = 0.1696,
|
||||
},
|
||||
},
|
||||
|
||||
group = {
|
||||
groupbar = {
|
||||
enabled = false
|
||||
}
|
||||
},
|
||||
|
||||
misc = {
|
||||
disable_hyprland_logo = true,
|
||||
disable_splash_rendering = true,
|
||||
disable_scale_notification = true,
|
||||
focus_on_activate = true,
|
||||
anr_missed_pings = 3,
|
||||
on_focus_under_fullscreen = 1,
|
||||
mouse_move_enables_dpms = true,
|
||||
animate_manual_resizes = true,
|
||||
mouse_move_focuses_monitor = true,
|
||||
enable_swallow = true,
|
||||
enable_anr_dialog = false,
|
||||
force_default_wallpaper = true,
|
||||
initial_workspace_tracking = 0,
|
||||
allow_session_lock_restore = true,
|
||||
},
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = true
|
||||
},
|
||||
|
||||
animations = {
|
||||
enabled = true,
|
||||
}
|
||||
})
|
||||
|
||||
hl.curve("almostLinear", { type = "bezier", points = { { 0.5, 0.5 }, { 0.75, 1.0 } } })
|
||||
hl.curve("linear", { type = "bezier", points = { { 0, 0 }, { 1, 1 } } })
|
||||
hl.curve("generic", { type = "bezier", points = { { 0.5, 0.9 }, { 0.1, 1.08 } } })
|
||||
hl.curve("quick", { type = "bezier", points = { { 0.15, 0 }, { 0.1, 1.0 } } })
|
||||
hl.curve("overshoot", { type = "bezier", points = { { 0.5, 0.9 }, { 0.1, 1.1 } } })
|
||||
hl.curve("rubber", { type = "spring", mass = 1, stiffness = 70, dampening = 10 })
|
||||
|
||||
hl.curve("easeOutQuint", { type = "bezier", points = { { 0.23, 1 }, { 0.32, 1 } } })
|
||||
hl.curve("easeInOutCubic", { type = "bezier", points = { { 0.65, 0.05 }, { 0.36, 1 } } })
|
||||
|
||||
hl.animation({ leaf = "global", enabled = true, speed = 10, bezier = "default" })
|
||||
hl.animation({ leaf = "border", enabled = true, speed = 5.39, bezier = "easeOutQuint" })
|
||||
hl.animation({ leaf = "windows", enabled = true, speed = 3.79, bezier = "easeOutQuint" })
|
||||
hl.animation({ leaf = "windowsIn", enabled = true, speed = 4.1, bezier = "easeOutQuint", style = "popin 87%" })
|
||||
hl.animation({ leaf = "windowsOut", enabled = true, speed = 1.49, bezier = "linear", style = "popin 87%" })
|
||||
hl.animation({ leaf = "fadeIn", enabled = true, speed = 1.73, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fadeOut", enabled = true, speed = 1.46, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fade", enabled = true, speed = 3.03, bezier = "quick" })
|
||||
hl.animation({ leaf = "fadeSwitch", enabled = false })
|
||||
hl.animation({ leaf = "layers", enabled = true, speed = 3.81, bezier = "easeOutQuint" })
|
||||
hl.animation({ leaf = "layersIn", enabled = true, speed = 4, bezier = "easeOutQuint", style = "fade" })
|
||||
hl.animation({ leaf = "layersOut", enabled = true, speed = 1.5, bezier = "linear", style = "fade" })
|
||||
hl.animation({ leaf = "fadeLayersIn", enabled = true, speed = 1.79, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fadeLayersOut", enabled = true, speed = 1.39, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "workspaces", enabled = true, speed = 0.5, bezier = "quick" })
|
||||
|
||||
hl.animation({ leaf = "specialWorkspaceIn", enabled = true, speed = 3, bezier = "easeOutQuint", style = "slide top" })
|
||||
hl.animation({ leaf = "specialWorkspaceOut", enabled = true, speed = 2, bezier = "easeInOutCubic", style = "slide bottom" })
|
||||
|
||||
-- Keybindings
|
||||
|
||||
hl.bind("SUPER + SHIFT + return", hl.dsp.exec_cmd("footclient -a terminal-herdr -T terminal-herdr herdr --session=main"), { description = "Open herdr terminal" })
|
||||
hl.bind("SUPER + return", hl.dsp.exec_cmd("footclient -a terminal-tmux -T terminal-tmux tmux new -A -s main"), { description = "Open tmux terminal" })
|
||||
|
||||
hl.bind("SUPER + N", hl.dsp.exec_cmd(terminal .. " -a quicknotes -e nvim +'Obsidian today'"),
|
||||
{ description = "Open Obsidian today in a centered floating window" })
|
||||
hl.bind("SUPER + A", hl.dsp.exec_cmd(terminal .. " -a agenda -e nvim +'Org agenda t'"),
|
||||
{ description = "Open Org agenda in a centered floating window" })
|
||||
hl.bind("SUPER + CONTROL + A", hl.dsp.exec_cmd(terminal .. " -a capture -e nvim +'Org capture t'"),
|
||||
{ description = "Open Org capture in a centered floating window" })
|
||||
|
||||
hl.bind("SUPER + B", hl.dsp.exec_raw(browser), { description = "Open browser" })
|
||||
hl.bind("SUPER + I", sysinfo, { description = "Show system info" })
|
||||
|
||||
hl.bind("SUPER + CONTROL + X", hl.dsp.exec_raw("ostt launch --paste"), { description = "Open ostt" })
|
||||
hl.bind("F9", hl.dsp.exec_raw("ostt launch --paste"), { description = "Open ostt" })
|
||||
|
||||
hl.bind(
|
||||
"SUPER + Y",
|
||||
toggle_master_scrolling,
|
||||
{ description = "Layout: Toggle master/scrolling" }
|
||||
)
|
||||
|
||||
-- Open rofi on first press, closes it on second
|
||||
hl.bind("SUPER + Space", hl.dsp.exec_raw("rofi -show combi --modes combi"),
|
||||
{ release = true, description = "Open Application Menu" })
|
||||
hl.bind("SUPER + SHIFT + SPACE", hl.dsp.exec_cmd("~/.local/bin/hyprland-fetch-client"),
|
||||
{ release = true, description = "Fetch client" })
|
||||
hl.bind("SUPER + CONTROL + SPACE",
|
||||
hl.dsp.exec_cmd("~/.local/bin/hyprland-focus-client"),
|
||||
{ release = true, description = "Focus client" }
|
||||
)
|
||||
hl.bind("SUPER + slash",
|
||||
hl.dsp.exec_cmd("ROFI_PASS_BACKEND=wtype ROFI_PASS_CLIPBOARD_BACKEND=wl-clipboard ~/.local/bin/rofi-pass"),
|
||||
{ release = true, description = "Open rofi-pass" })
|
||||
|
||||
hl.bind("Print",
|
||||
hl.dsp.exec_cmd("hyprshot -m window -o ~/Pictures/ -- tensaku-edit"),
|
||||
{ description = "Take screenshot" })
|
||||
|
||||
hl.bind("SHIFT + PRINT",
|
||||
hl.dsp.exec_cmd("hyprshot -m region -o ~/Pictures/ -- tensaku-edit"),
|
||||
{ description = "Take screenshot" })
|
||||
|
||||
hl.bind("SUPER + PRINT", hl.dsp.exec_cmd("pkill hyprpicker || hyprpicker -a"), { description = "Pick color" })
|
||||
hl.bind("SUPER + CONTROL + PRINT",
|
||||
hl.dsp.exec_cmd("hyprshot -m region --raw -z | /usr/bin/tesseract stdin stdout --oem 1 --psm 6 -l eng | wl-copy"),
|
||||
{ description = "Extract text (OCR) from screenshot" })
|
||||
|
||||
hl.bind("SUPER + ALT + Print",
|
||||
hl.dsp.exec_cmd("~/.local/bin/screen-recorder -o ~/Videos/$(date +'%Y-%m-%d_%H%M%S')_recording.mp4"),
|
||||
{ description = "Start/Stop screen recording" })
|
||||
|
||||
hl.bind("SUPER + ALT + SHIFT + Print",
|
||||
hl.dsp.exec_cmd("~/.local/bin/screen-recorder stop"),
|
||||
{ description = "Stop screen recording" })
|
||||
|
||||
|
||||
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"),
|
||||
{ repeating = true, description = "Volume down" })
|
||||
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"),
|
||||
{ repeating = true, description = "Volume up" })
|
||||
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), { description = "Toggle mute" })
|
||||
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"),
|
||||
{ description = "Toggle mic mute" })
|
||||
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl s 10%+"),
|
||||
{ repeating = true, description = "Brightness up" })
|
||||
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl s 10%-"),
|
||||
{ repeating = true, description = "Brightness down" })
|
||||
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), { description = "Play/pause media" })
|
||||
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), { description = "Previous media" })
|
||||
hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), { description = "Next media" })
|
||||
|
||||
hl.bind("SUPER + Y", hl.dsp.exec_cmd("makoctl dismiss"), { description = "Dismiss notifications" })
|
||||
|
||||
|
||||
hl.bind("SUPER + W", hl.dsp.window.close(), { description = "Window: Close" })
|
||||
hl.bind("SUPER + F", hl.dsp.window.fullscreen({ mode = "fullscreen", action = "toggle" }),
|
||||
{ description = "Window: Toggle fullscreen" })
|
||||
hl.bind("SUPER + CONTROL + F", hl.dsp.window.fullscreen_state({ internal = 2, client = 0, action = "toggle" }),
|
||||
{ description = "Window: Toggle fullscreen state 2" })
|
||||
hl.bind("SUPER + ALT + F", hl.dsp.window.fullscreen_state({ internal = 0, client = 2, action = "toggle" }),
|
||||
{ description = "Window: Toggle fullscreen state 2" })
|
||||
|
||||
hl.bind("SUPER + T", toggle_float_with_limit,
|
||||
{ description = "Window: Toggle floating/tiling (max 80%)" })
|
||||
|
||||
-- hl.bind("SUPER + P", hl.dsp.window.pseudo(), { description = "Window: Toggle pseudo tiling" })
|
||||
hl.bind("SUPER + P", toggle_pin, { description = "Window: Toggle Pin" })
|
||||
|
||||
-- hl.bind("SUPER + A", hl.dsp.window.alter_zorder({ mode = "top" }), { description = "Window: Move to top" })
|
||||
|
||||
hl.bind("SUPER + left", hl.dsp.focus({ direction = "l" }), { description = "Window: Focus left" })
|
||||
hl.bind("SUPER + right", hl.dsp.focus({ direction = "r" }), { description = "Window: Focus right" })
|
||||
hl.bind("SUPER + up", hl.dsp.focus({ direction = "u" }), { description = "Window: Focus up" })
|
||||
hl.bind("SUPER + down", hl.dsp.focus({ direction = "d" }), { description = "Window: Focus down" })
|
||||
|
||||
hl.bind("SUPER + H", hl.dsp.focus({ direction = "l" }), { description = "Window: Focus left" })
|
||||
hl.bind("SUPER + L", hl.dsp.focus({ direction = "r" }), { description = "Window: Focus right" })
|
||||
hl.bind("SUPER + K", hl.dsp.focus({ direction = "u" }), { description = "Window: Focus up" })
|
||||
hl.bind("SUPER + J", hl.dsp.focus({ direction = "d" }), { description = "Window: Focus down" }) -- hl.bind("SUPER + H", hl.dsp.window.resize("left"), { repeating = true, description = "Window: Resize left" })
|
||||
|
||||
-- hl.bind("SUPER + z", hl.dsp.focus({ last = true }), { description = "Window: Focus last" })
|
||||
hl.bind("SUPER + Z", hl.dsp.focus({ urgent_or_last = true }), { description = "Window: Focus last" })
|
||||
|
||||
hl.bind("SUPER + ALT + period", function()
|
||||
hl.dispatch(hl.dsp.layout("cycleprev"))
|
||||
end, { description = "Window: Swap with next" })
|
||||
hl.bind("SUPER + ALT + comma", function()
|
||||
hl.dispatch(hl.dsp.layout("cyclenext"))
|
||||
end, { description = "Window: Swap with prev" })
|
||||
|
||||
hl.bind("ALT + Tab", cycle_next_window({ next = true }), { description = "Window: Cycle next" })
|
||||
hl.bind("ALT + SHIFT + Tab", cycle_next_window({ next = false }), { description = "Window: Cycle prev" })
|
||||
|
||||
-- hl.bind("ALT + TAB", hl.dsp.window.cycle_next(), { description = "Focus on next window" })
|
||||
-- hl.bind("ALT + SHIFT + TAB", hl.dsp.window.cycle_next({ next = false }), { description = "Focus on previous window" })
|
||||
-- hl.bind("ALT + TAB", hl.dsp.window.bring_to_top(), { description = "Reveal active window on top" })
|
||||
-- hl.bind("ALT + SHIFT + TAB", hl.dsp.window.bring_to_top(), { description = "Reveal active window on top" })
|
||||
|
||||
hl.bind("CONTROL + ALT + TAB", hl.dsp.focus({ monitor = "+1" }), { description = "Focus on next monitor" })
|
||||
hl.bind("CONTROL + ALT + SHIFT + TAB", hl.dsp.focus({ monitor = "-1" }), { description = "Focus on previous monitor" })
|
||||
|
||||
hl.bind("SUPER + S", hl.dsp.workspace.toggle_special("scratchpad"), { description = "Toggle scratchpad" })
|
||||
hl.bind("SUPER + ALT + S", hl.dsp.window.move({ workspace = "special:scratchpad", follow = false }),
|
||||
{ description = "Move window to scratchpad" })
|
||||
hl.bind("SUPER + grave", hl.dsp.workspace.toggle_special("scratchpad"), { description = "Toggle scratchpad" })
|
||||
hl.bind("SUPER + SHIFT + grave", hl.dsp.window.move({ workspace = "special:scratchpad", follow = false }),
|
||||
{ description = "Move window to scratchpad" })
|
||||
|
||||
-- hl.bind("SUPER + TAB", hl.dsp.focus({ monitor = "+1" }), { description = "Monitor: move focus to next monitor" })
|
||||
hl.bind("SUPER + TAB", hl.dsp.focus({ workspace = "e+1" }), { description = "Next workspace" })
|
||||
hl.bind("SUPER + SHIFT + TAB", hl.dsp.focus({ workspace = "e-1" }), { description = "Previous workspace" })
|
||||
hl.bind("SUPER + CONTROL + TAB", hl.dsp.focus({ workspace = "previous" }), { description = "Former workspace" })
|
||||
|
||||
hl.bind("SUPER + ALT + SHIFT + LEFT", hl.dsp.workspace.move({ monitor = "l" }),
|
||||
{ description = "Move workspace to left monitor" })
|
||||
hl.bind("SUPER + ALT + SHIFT + RIGHT", hl.dsp.workspace.move({ monitor = "r" }),
|
||||
{ description = "Move workspace to right monitor" })
|
||||
hl.bind("SUPER + ALT + SHIFT + UP", hl.dsp.workspace.move({ monitor = "u" }),
|
||||
{ description = "Move workspace to up monitor" })
|
||||
hl.bind("SUPER + ALT + SHIFT + DOWN", hl.dsp.workspace.move({ monitor = "d" }),
|
||||
{ description = "Move workspace to down monitor" })
|
||||
|
||||
hl.bind("SUPER + SHIFT + LEFT", hl.dsp.window.swap({ direction = "l" }), { description = "Swap window to the left" })
|
||||
hl.bind("SUPER + SHIFT + RIGHT", hl.dsp.window.swap({ direction = "r" }), { description = "Swap window to the right" })
|
||||
hl.bind("SUPER + SHIFT + UP", hl.dsp.window.swap({ direction = "u" }), { description = "Swap window up" })
|
||||
hl.bind("SUPER + SHIFT + DOWN", hl.dsp.window.swap({ direction = "d" }), { description = "Swap window down" })
|
||||
|
||||
hl.bind("SUPER + ALT + Tab", hl.dsp.focus({ workspace = "next", on_current_monitor = true }),
|
||||
{ description = "Window: Focus previous in workspace" })
|
||||
hl.bind("SUPER + ALT + SHIFT + Tab", hl.dsp.focus({ workspace = "previous", on_current_monitor = true }),
|
||||
{ description = "Window: Focus previous in workspace" })
|
||||
|
||||
-- arrange split ratio
|
||||
hl.bind("SUPER + X", toggle_master, { description = "Layout: Toggle master size" })
|
||||
-- hl.bind("SUPER + equal", hl.dsp.layout("mfact exact 0.5"))
|
||||
hl.bind("SUPER + M", function()
|
||||
local current_layout = hl.get_config("general.layout")
|
||||
if current_layout == "master" then
|
||||
hl.dispatch(hl.dsp.layout("swapwithmaster"))
|
||||
end
|
||||
if current_layout == "scrolling" then
|
||||
hl.dispatch(hl.dsp.layout("consume_or_expel next"))
|
||||
end
|
||||
end, { description = "Layout: Swap with master" })
|
||||
|
||||
-- hl.bind("SUPER + M", hl.dsp.layout("rollnext"))
|
||||
hl.bind("SUPER + period", function()
|
||||
local current_layout = hl.get_config("general.layout")
|
||||
if current_layout == "master" then
|
||||
hl.dispatch(hl.dsp.layout("cycleprev"))
|
||||
hl.dispatch(hl.dsp.layout("swapwithmaster"))
|
||||
end
|
||||
|
||||
if current_layout == "scrolling" then
|
||||
hl.dispatch(hl.dsp.layout("swapcol r"))
|
||||
hl.dispatch(hl.dsp.layout("focus l"))
|
||||
end
|
||||
-- hl.dispatch(hl.dsp.layout("focus r"))
|
||||
end, { description = "Layout: Cycle next" })
|
||||
|
||||
hl.bind("SUPER + comma", function()
|
||||
local current_layout = hl.get_config("general.layout")
|
||||
if current_layout == "master" then
|
||||
hl.dispatch(hl.dsp.layout("cyclenext"))
|
||||
hl.dispatch(hl.dsp.layout("swapwithmaster"))
|
||||
end
|
||||
|
||||
if current_layout == "scrolling" then
|
||||
hl.dispatch(hl.dsp.layout("swapcol l"))
|
||||
hl.dispatch(hl.dsp.layout("focus r"))
|
||||
end
|
||||
-- hl.dispatch(hl.dsp.layout("focus l"))
|
||||
end, { description = "Layout: Cycle previous" })
|
||||
|
||||
hl.bind("SUPER + SHIFT + comma", hl.dsp.window.move({ workspace = "-1" }),
|
||||
{ description = "Window: Move to previous workspace" })
|
||||
|
||||
hl.bind("SUPER + SHIFT + period", hl.dsp.window.move({ workspace = "+1" }),
|
||||
{ description = "Window: Move to next workspace" })
|
||||
|
||||
hl.bind("SUPER + ALT + comma", hl.dsp.workspace.move({ monitor = "-1" }),
|
||||
{ description = "Window: Move to previous workspace and follow" })
|
||||
|
||||
hl.bind("SUPER + ALT + period", hl.dsp.workspace.move({ monitor = "+1" }),
|
||||
{ description = "Window: Move to next workspace and follow" })
|
||||
|
||||
hl.bind("SUPER + C", hl.dsp.window.center(), { description = "Window: Center" })
|
||||
|
||||
hl.bind("SUPER + CONTROL + SHIFT + slash",
|
||||
hl.dsp.exec_cmd("makoctl mode -t do-not-disturb"),
|
||||
{ description = "Toggle do-not-disturb" })
|
||||
|
||||
hl.bind("SUPER + CONTROL + Delete", hl.dsp.exec_cmd("hyprland-toggle-monitor eDP-1"),
|
||||
{ description = "Toggle laptop display" })
|
||||
|
||||
hl.bind("SUPER + Escape", hl.dsp.exec_raw("loginctl lock-session"), { description = "Lock screen" })
|
||||
hl.bind("SUPER + SHIFT + escape", hl.dsp.exec_raw("systemctl suspend"), { description = "Suspend" })
|
||||
--hl.bind("SUPER + ALT + escape", hl.dsp.exec_raw("uwsm stop"), { description = "Stop UWSM" })
|
||||
hl.bind("SUPER + ALT + escape", hl.dsp.exit(), { description = "Exit Hyprland" })
|
||||
hl.bind("SUPER + CONTROL + escape", hl.dsp.exec_raw("reboot"), { description = "Reboot" })
|
||||
hl.bind("SUPER + SHIFT + CONTROL + escape", hl.dsp.exec_raw("systemctl poweroff"), { description = "Power off" })
|
||||
|
||||
-- hl.bind("SUPER + L", hl.dsp.window.resize("right"), { repeating = true, description = "Window: Resize right" })
|
||||
-- hl.bind("SUPER + J", hl.dsp.window.resize("down"), { repeating = true, description = "Window: Resize down" })
|
||||
-- hl.bind("SUPER + K", hl.dsp.window.resize("up"), { repeating = true, description = "Window: Resize up" })
|
||||
|
||||
-- # Change Workspace Mode
|
||||
--
|
||||
-- bind = SUPER SHIFT, X, workspaceopt, allfloat
|
||||
-- bind = SUPER SHIFT, X, exec, $notifycmd "Toggled All Float Mode"
|
||||
|
||||
-- bind = SUPER SHIFT, Z, workspaceopt, allpseudo
|
||||
-- bind = SUPER SHIFT, Z, exec, $notifycmd "Toggled All Pseudo Mode"
|
||||
|
||||
hl.on("keybinds.submap", function(name)
|
||||
if name == "" then
|
||||
hl.notification.create({ text = "Exited submap", duration = 2000, icon = "hint" })
|
||||
return
|
||||
end
|
||||
hl.notification.create({ text = "Entered submap: " .. name, duration = 2000, icon = "hint" })
|
||||
end)
|
||||
|
||||
hl.bind(HYPR .. "Z", hl.dsp.submap("passthru"), { description = "Passthru Menu" })
|
||||
hl.define_submap("passthru", function()
|
||||
hl.bind("escape", hl.dsp.submap("reset"), { description = "Passthru: Exit" })
|
||||
end)
|
||||
|
||||
hl.bind("SUPER + F9", hl.dsp.submap("resize"), { description = "Resize Menu" })
|
||||
hl.define_submap("resize", function()
|
||||
hl.bind("period", hl.dsp.window.resize({ x = 10, y = 10, relative = true }),
|
||||
{ repeating = true, description = "Resize: Increase" })
|
||||
hl.bind("comma", hl.dsp.window.resize({ x = -10, y = -10, relative = true }),
|
||||
{ repeating = true, description = "Resize: Decrease" })
|
||||
hl.bind("R", function()
|
||||
window_resize_percentage(0.5, 0.5)
|
||||
end, { description = "Resize: Reset" })
|
||||
hl.bind("S", function()
|
||||
window_resize_percentage(0.25, 0.25)
|
||||
end, { description = "Resize: Small" })
|
||||
hl.bind("D", function()
|
||||
window_resize_percentage(0.7, 0.96)
|
||||
hl.dispatch(hl.dsp.window.center())
|
||||
end, { description = "Resize: Large" })
|
||||
hl.bind("C", hl.dsp.window.center(), { description = "Resize: Center" })
|
||||
hl.bind("P", hl.dsp.window.pin(), { description = "Resize: Pin" })
|
||||
hl.bind("up", hl.dsp.window.move({ direction = "up" }), { description = "Resize: Move up" })
|
||||
hl.bind("down", hl.dsp.window.move({ direction = "down" }), { description = "Resize: Move down" })
|
||||
hl.bind("left", hl.dsp.window.move({ direction = "left" }), { description = "Resize: Move left" })
|
||||
hl.bind("right", hl.dsp.window.move({ direction = "right" }), { description = "Resize: Move right" })
|
||||
hl.bind("escape", hl.dsp.submap("reset"), { description = "Resize: Exit" })
|
||||
hl.bind("catchall", hl.dsp.submap("reset"), { description = "Resize: Exit" })
|
||||
end)
|
||||
|
||||
local workspaceGroupSize = 10
|
||||
local numberkey = { 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }
|
||||
|
||||
function workspace_in_group(i)
|
||||
local curr = hl.get_active_workspace().id
|
||||
local newVal = math.floor((curr - 1) / workspaceGroupSize) * workspaceGroupSize + i
|
||||
return newVal
|
||||
end
|
||||
|
||||
for i = 1, 10 do
|
||||
hl.bind("SUPER + CONTROL + code:" .. numberkey[i], function()
|
||||
hl.dispatch(hl.dsp.workspace.move({ monitor = "+1", workspace = workspace_in_group(i), follow = true }))
|
||||
end, { description = "Workspace: Move monitor " .. i })
|
||||
end
|
||||
|
||||
for i = 1, 10 do
|
||||
hl.bind("SUPER + SHIFT + code:" .. numberkey[i], function()
|
||||
hl.dispatch(hl.dsp.window.move({ workspace = workspace_in_group(i), follow = true }))
|
||||
end, { description = "Workspace: Move " .. i })
|
||||
end
|
||||
|
||||
for i = 1, 10 do
|
||||
hl.bind("SUPER + code:" .. numberkey[i], function()
|
||||
hl.dispatch(hl.dsp.focus({ workspace = workspace_in_group(i), on_current_monitor = true }))
|
||||
end, { description = "Workspace: Focus " .. i })
|
||||
end
|
||||
|
||||
-- Scroll through existing workspaces with mainMod + scroll
|
||||
hl.bind("SUPER + mouse_down", hl.dsp.focus({ workspace = "e+1" }), { description = "Workspace: Next" })
|
||||
hl.bind("SUPER + mouse_up", hl.dsp.focus({ workspace = "e-1" }), { description = "Workspace: Previous" })
|
||||
|
||||
-- Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
hl.bind("SUPER + mouse:272", hl.dsp.window.drag(), { mouse = true, description = "Window: Drag" })
|
||||
hl.bind("SUPER + mouse:273", hl.dsp.window.resize(), { mouse = true, description = "Window: Resize" })
|
||||
hl.bind("mouse:275", hl.dsp.window.cycle_next({ next = true }), { click = true, description = "Window: Cycle next" })
|
||||
hl.bind("mouse:276", hl.dsp.window.cycle_next({ next = false }), { click = true, description = "Window: Cycle previous" })
|
||||
|
||||
hl.bind(HYPR .. "V", hl.dsp.exec_cmd("pavucontrol"), { description = "Volume control" })
|
||||
hl.bind(HYPR .. "B", hl.dsp.exec_cmd("blueberry"), { description = "Bluetooth manager" })
|
||||
|
||||
hl.bind(HYPR .. "semicolon", hl.dsp.exec_cmd("~/.local/bin/set-wallpaper.sh categories/technics"),
|
||||
{ description = "get new wallpaper" })
|
||||
|
||||
hl.bind(HYPR .. "A", hl.dsp.exec_cmd("gtk-launch pi.desktop"), { description = "Open pi tui" })
|
||||
hl.bind(HYPR .. "O", dispatch_focus_or_launch({
|
||||
match = "chrome-outlook.office.com",
|
||||
cmd = "gtk-launch Outlook.desktop",
|
||||
}), { description = "Email" })
|
||||
|
||||
hl.bind(HYPR .. "T", dispatch_focus_or_launch({
|
||||
match = "chrome-teams.microsoft.com",
|
||||
cmd = "gtk-launch Team.desktop",
|
||||
}), { description = "UWO Team" })
|
||||
|
||||
hl.bind(HYPR .. "Y", dispatch_focus_or_launch({
|
||||
match = "chrome-youtube.com",
|
||||
cmd = "gtk-launch YouTube.desktop",
|
||||
}), { description = "YouTube" })
|
||||
|
||||
hl.bind(HYPR .. "W", dispatch_focus_or_launch({
|
||||
match = "chrome-web.whatsapp.com",
|
||||
cmd = "gtk-launch WhatsApp.desktop",
|
||||
}), { description = "WhatsApp" })
|
||||
|
||||
hl.bind(HYPR .. "G", dispatch_focus_or_launch({
|
||||
match = "chrome-chatgpt.com",
|
||||
cmd = "gtk-launch ChatGPT.desktop",
|
||||
}), { description = "ChatGPT" })
|
||||
|
||||
hl.bind(HYPR .. "D", dispatch_focus_or_launch({
|
||||
match = "chrome-discord.com",
|
||||
cmd = "gtk-launch Discord.desktop"
|
||||
}), { description = "Discord" })
|
||||
|
||||
hl.bind(HYPR .. "M", dispatch_focus_or_launch({
|
||||
match = "chrome-messages.google.com",
|
||||
cmd = "gtk-launch \"Google Messages.desktop\"",
|
||||
}), { description = "Google Messages" })
|
||||
|
||||
hl.bind(HYPR .. "S", dispatch_focus_or_launch({
|
||||
match = "Spotify",
|
||||
cmd = music,
|
||||
}), { description = "Music" })
|
||||
|
||||
hl.bind(HYPR .. "F", dispatch_focus_or_launch({
|
||||
match = "strata",
|
||||
cmd = "gtk-launch io.github.lgse.Strata.desktop",
|
||||
}), { description = "File Manager" })
|
||||
|
||||
-- Gestures
|
||||
-- hl.gesture({ fingers = 3, direction = "horizontal", action = "workspace" })
|
||||
-- hl.gesture({ fingers = 3, direction = "down", mods = "ALT", action = "close" })
|
||||
-- hl.gesture({ fingers = 3, direction = "up", mods = "SUPER", scale = 1.5, action = "fullscreen" })
|
||||
-- hl.gesture({ fingers = 3, direction = "left", scale = 1.5, action = "float" })
|
||||
--
|
||||
-- hl.gesture({ fingers = 2, direction = "pinch", action = "cursorZoom", zoom_level = 2 })
|
||||
-- hl.gesture({ fingers = 2, direction = "pinch", action = "cursorZoom", zoom_level = 1.2, mode = "mult" })
|
||||
-- hl.gesture({ fingers = 2, direction = "pinch", action = "cursorZoom", zoom_level = 1, mode = "live" })
|
||||
@@ -1,61 +0,0 @@
|
||||
hl.monitor({ output = "desc:Lenovo Group Limited 0x41A0", mode = "highrr", position = "0x0", scale = "1.0" })
|
||||
hl.monitor({ output = "desc:Samsung Display Corp. 0x4143", mode = "highrr", position = "0x0", scale = "2" })
|
||||
hl.monitor({
|
||||
output = "desc:LG Electronics LG HDR 4K 406NTZN74597",
|
||||
mode = "preferred",
|
||||
position = "auto-right",
|
||||
scale =
|
||||
"1.333333"
|
||||
})
|
||||
|
||||
hl.monitor({
|
||||
output = "desc:Microstep MSI MAG342CQR DB6H252300057",
|
||||
mode = "3440x1440@144",
|
||||
-- mode = "preferred",
|
||||
position = "auto-left",
|
||||
scale =
|
||||
"1.0"
|
||||
})
|
||||
hl.monitor({
|
||||
output = "desc:Ancor Communications Inc ASUS MG28U 0x00009B77",
|
||||
mode = "preferred",
|
||||
position = "auto-right",
|
||||
scale =
|
||||
"1.333333"
|
||||
})
|
||||
|
||||
-- hl.monitor({ output = "eDP-1", mode = "preferred", position = "0x0", scale = "1.0" })
|
||||
|
||||
hl.monitor({
|
||||
output = "desc:LG Electronics LG HDR WQHD 0x0006530C",
|
||||
mode = "preferred",
|
||||
position = "auto-up",
|
||||
scale =
|
||||
"1.333333"
|
||||
})
|
||||
hl.monitor({ output = "CAP Capture 0x00000001", mode = "1920x1080@60", position = "auto-down", scale = 1 })
|
||||
-- hl.monitor({ output = "HDMI-A-1", mode = "1920x1080@60", position = "auto-down", scale = 1 })
|
||||
-- hl.monitor({ output = "HDMI-A-2", mode = "1920x1080@60", position = "auto-down", scale = 1 })
|
||||
|
||||
hl.monitor({
|
||||
output = "desc:Ancor Communications Inc ASUS PB238 DCLMTF074371",
|
||||
mode = "preferred",
|
||||
position = "auto",
|
||||
scale =
|
||||
"1.0"
|
||||
})
|
||||
hl.monitor({ output = "desc:Lenovo Group Limited L15 U133R0A2", mode = "preferred", position = "auto-down", scale = 1 })
|
||||
hl.monitor({ output = "desc:Lenovo Group Limited M15 V30F2A15", mode = "preferred", position = "auto-down", scale = 1 })
|
||||
hl.monitor({ output = "desc:Lenovo Group Limited L15 U133X4PG", mode = "preferred", position = "auto-down", scale = 1 })
|
||||
hl.monitor({ output = "desc:Stargate Technology TYPE-C", mode = "preferred", position = "auto-down", scale = 1 })
|
||||
hl.monitor({ output = "desc:Proteon TYPE-C 8R33926O00QS", mode = "preferred", position = "auto-right", scale = "1.0" })
|
||||
hl.monitor({ output = "desc:GWD ARZOPA 000000000000", mode = "preferred", position = "auto-down", scale = "1.0" })
|
||||
hl.monitor({ output = "desc:BNQ BenQ EX3203R 7CL00509019", mode = "preferred", position = "auto", scale = 1 })
|
||||
hl.monitor({ output = "desc:BNQ BenQ EX3501R N4M05650019", mode = "preferred", position = "auto-right", scale = "1.0" })
|
||||
hl.monitor({
|
||||
output = "desc:Dell Inc. DELL U3818DW 97F8P8AD0HEL",
|
||||
mode = "preferred",
|
||||
position = "auto-left",
|
||||
scale =
|
||||
"1.0"
|
||||
})
|
||||
@@ -1,77 +0,0 @@
|
||||
hl.workspace_rule({ workspace = "special:scratchpad", border_size = 3 })
|
||||
hl.window_rule({
|
||||
match = { class = "(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty|Omarchy|About|TUI.float|org.pulseaudio.pavucontrol)" },
|
||||
tag =
|
||||
"+floating-window"
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
match = { class = "terminal-pi" },
|
||||
float = true,
|
||||
center = true,
|
||||
workspace = "special:scratchpad",
|
||||
size = { "monitor_w/2", "monitor_h/2" }
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
match = {
|
||||
class = "(quicknotes|capture|agenda)"
|
||||
},
|
||||
tag = "+floating-window"
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "ostt floating windows",
|
||||
match = { class = "ostt-popup" },
|
||||
float = true,
|
||||
no_anim = true,
|
||||
move = { 10, 10 },
|
||||
size = { 320, 240 },
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
match = {
|
||||
class = "(xdg-desktop-portal-gtk|sublime_text|DesktopEditors)",
|
||||
title = "^(Open.*Files?|Save.*Files?|Save.*As|All Files|Save)"
|
||||
},
|
||||
tag = "+floating-window"
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
match = { class = "code" },
|
||||
fullscreen_state = 1,
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
-- Fix some dragging issues with XWayland
|
||||
name = "fix-xwayland-drags",
|
||||
match = {
|
||||
class = "^$",
|
||||
title = "^$",
|
||||
xwayland = true,
|
||||
float = true,
|
||||
fullscreen = false,
|
||||
pin = false,
|
||||
},
|
||||
|
||||
no_focus = true,
|
||||
})
|
||||
|
||||
|
||||
hl.window_rule({ match = { tag = "floating-window" }, float = true, center = true, size = { "monitor_w/2", "monitor_h/2" } })
|
||||
|
||||
hl.window_rule({ match = { class = "(rofi|wofi)" }, tag = "+user-menu" })
|
||||
hl.window_rule({ match = { class = "^(pinentry-)" }, tag = "+user-menu" })
|
||||
hl.window_rule({ match = { class = "^(gcr-prompter)$" }, tag = "+user-menu" })
|
||||
hl.window_rule({ match = { tag = "user-menu" }, stay_focused = true, no_anim = true, float = true, center = true, size = { "monitor_w/3", "monitor_h/3" } })
|
||||
|
||||
hl.window_rule({
|
||||
name = "Picture in Picture windows",
|
||||
match = { title = "^.*[Pp]icture[ -][Ii]n[ -][Pp]icture.*$" },
|
||||
float = true,
|
||||
pin = true,
|
||||
rounding = 7,
|
||||
opacity = "1 1",
|
||||
move = { "monitor_w-window_w-10", "monitor_h-window_h-10" },
|
||||
size = { "monitor_w/4", "monitor_h/4" },
|
||||
})
|
||||
@@ -1,49 +0,0 @@
|
||||
nt_family TX-02
|
||||
bold_font auto
|
||||
italic_font auto
|
||||
bold_italic_font auto
|
||||
font_size 13
|
||||
enable_audio_bell no
|
||||
window_alert_on_bell no
|
||||
window_padding_width 3
|
||||
|
||||
# gruvbox-dark colorscheme for kitty
|
||||
# snazzy theme used as base
|
||||
|
||||
foreground #ebdbb2
|
||||
background #272727
|
||||
selection_foreground #655b53
|
||||
selection_background #ebdbb2
|
||||
url_color #d65c0d
|
||||
|
||||
# black
|
||||
color0 #272727
|
||||
color8 #928373
|
||||
|
||||
# red
|
||||
color1 #cc231c
|
||||
color9 #fb4833
|
||||
|
||||
# green
|
||||
color2 #989719
|
||||
color10 #b8ba25
|
||||
|
||||
# yellow
|
||||
color3 #d79920
|
||||
color11 #fabc2e
|
||||
|
||||
# blue
|
||||
color4 #448488
|
||||
color12 #83a597
|
||||
|
||||
# magenta
|
||||
color5 #b16185
|
||||
color13 #d3859a
|
||||
|
||||
# cyan
|
||||
color6 #689d69
|
||||
color14 #8ec07b
|
||||
|
||||
# white
|
||||
color7 #a89983
|
||||
color15 #ebdbb2
|
||||
@@ -1,40 +0,0 @@
|
||||
anchor=top-right
|
||||
group-by=app-name,summary,body
|
||||
default-timeout=5000
|
||||
width=420
|
||||
outer-margin=20
|
||||
padding=10,15
|
||||
border-size=2
|
||||
max-icon-size=32
|
||||
font=sans-serif 14px
|
||||
|
||||
[app-name=Spotify]
|
||||
invisible=1
|
||||
|
||||
[mode=do-not-disturb]
|
||||
invisible=true
|
||||
|
||||
[mode=do-not-disturb app-name=notify-send]
|
||||
invisible=false
|
||||
|
||||
[urgency=critical]
|
||||
default-timeout=0
|
||||
layer=overlay
|
||||
|
||||
[summary~="Setup Wi-Fi"]
|
||||
on-button-left=exec sh -c 'omarchy-notification-dismiss "Setup Wi-Fi"; omarchy-launch-wifi'
|
||||
|
||||
[summary~="Update System"]
|
||||
on-button-left=exec sh -c 'omarchy-notification-dismiss "Update System"; omarchy-launch-floating-terminal-with-presentation omarchy-update'
|
||||
|
||||
[summary~="Learn Keybindings"]
|
||||
on-button-left=exec sh -c 'omarchy-notification-dismiss "Learn Keybindings"; omarchy-menu-keybindings'
|
||||
|
||||
[summary~="Install Dictation with Voxtype"]
|
||||
on-button-left=exec sh -c 'omarchy-notification-dismiss "Install Dictation with Voxtype"; omarchy-launch-floating-terminal-with-presentation omarchy-voxtype-install'
|
||||
|
||||
[summary~="Screenshot copied & saved"]
|
||||
max-icon-size=80
|
||||
format=<b>%s</b>\n%b
|
||||
|
||||
include=~/.local/state/omarchy/current/theme/mako.ini
|
||||
@@ -50,6 +50,14 @@ run = [
|
||||
'test -x /usr/bin/pass && /usr/bin/pass show config/pi/auth.json > ~/.pi/agent/auth.json'
|
||||
]
|
||||
|
||||
[tasks.setup_fish]
|
||||
run = '''
|
||||
if [ -x /usr/bin/fish ]; then
|
||||
chsh -s /usr/bin/fish
|
||||
fish -c "fisher install franciscolourenco/done"
|
||||
fi
|
||||
'''
|
||||
|
||||
[tasks.setup_nvim]
|
||||
run = [
|
||||
'uv tool install vectorcode'
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
config_version = "0.0.25"
|
||||
|
||||
[transcription]
|
||||
provider = "whisper"
|
||||
model = "small"
|
||||
|
||||
[audio]
|
||||
device = "default"
|
||||
output_format = "mp3 -ab 16k -ar 12000"
|
||||
peak_volume_threshold = 90
|
||||
reference_level_db = -20
|
||||
visualization = "spectrum"
|
||||
|
||||
[popup]
|
||||
terminal = "foot"
|
||||
borderless = true
|
||||
font_size = 25
|
||||
height = 15
|
||||
width = 90
|
||||
x = 630
|
||||
y = 790
|
||||
|
||||
[output.paste]
|
||||
paste_key = "ctrl+shift+v"
|
||||
restore_clipboard = true
|
||||
restore_delay_ms = 750
|
||||
post_popup_delay_ms = 1000
|
||||
@@ -1,23 +0,0 @@
|
||||
# See the full configuration reference: https://rioterm.com/docs/config
|
||||
|
||||
copy-on-select = true
|
||||
theme = "omarchy"
|
||||
hide-mouse-cursor-when-typing = true
|
||||
draw-bold-text-with-light-colors = false
|
||||
line-height = 1.1
|
||||
|
||||
[fonts]
|
||||
size = 16
|
||||
family = "MonaspiceNeNerdFontMono"
|
||||
disable-warnings-not-found = false
|
||||
|
||||
[editor]
|
||||
program = "nvim"
|
||||
args = []
|
||||
|
||||
[bindings]
|
||||
keys = [
|
||||
{ key = "up", with = "super | shift", action = "ScrollToPrevPrompt" },
|
||||
{ key = "down", with = "super | shift", action = "ScrollToNextPrompt" },
|
||||
]
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
@theme "theme"
|
||||
|
||||
* {
|
||||
border: 1;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
spacing: 0;
|
||||
}
|
||||
|
||||
configuration {
|
||||
combi-modes: [window,drun,run];
|
||||
icon-theme: "Oranchelo";
|
||||
show-icons: true;
|
||||
drun-display-format: "{icon} {name}";
|
||||
location: 0;
|
||||
disable-history: false;
|
||||
hide-scrollbar: true;
|
||||
display-drun: " Apps ";
|
||||
display-run: " Run ";
|
||||
display-window: " Window";
|
||||
display-Network: " Network";
|
||||
sidebar-mode: true;
|
||||
font: "MonaspiceRn Nerd Font 15";
|
||||
|
||||
combi {
|
||||
display-name: "";
|
||||
}
|
||||
|
||||
drun {
|
||||
display-name: "";
|
||||
}
|
||||
|
||||
run {
|
||||
display-name: "";
|
||||
}
|
||||
|
||||
window {
|
||||
display-name: "";
|
||||
}
|
||||
|
||||
timeout {
|
||||
delay: 10;
|
||||
action: "kb-cancel";
|
||||
}
|
||||
}
|
||||
|
||||
listview {
|
||||
columns: 1;
|
||||
lines: 10;
|
||||
}
|
||||
|
||||
window {
|
||||
transparency: "real";
|
||||
border-color: @border-color;
|
||||
border-radius: @window-border-radius;
|
||||
border: @window-border-size;
|
||||
}
|
||||
|
||||
message {
|
||||
border-color: @seperator-color;
|
||||
border: 1px dash 0px 0px;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
mainbox {
|
||||
children: [inputbar, listview];
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
str: ":";
|
||||
expand: false;
|
||||
text-color: @prompt-color;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
border: 0px;
|
||||
children: [prompt, entry];
|
||||
}
|
||||
|
||||
entry {
|
||||
border: 0px;
|
||||
background-color: @prompt-background-color;
|
||||
padding: 12px 3px;
|
||||
}
|
||||
|
||||
prompt {
|
||||
padding: 12px 16px 12px 12px;
|
||||
text-color: @prompt-color;
|
||||
background-color: @prompt-background-color;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
listview {
|
||||
lines: 8;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
element {
|
||||
border: 0px;
|
||||
// children: [element-text];
|
||||
}
|
||||
|
||||
element-text, element-icon, mode-switcher {
|
||||
border: 0px;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
element selected {
|
||||
background-color: @selected-background;
|
||||
text-color: @selected-foreground;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 10px;
|
||||
background-color: @normal-background;
|
||||
text-color: @normal-foreground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
mode = "theme"
|
||||
theme = "omarchy"
|
||||
single_click_previews = true
|
||||
search_open_files_directly = false
|
||||
browser_mode = "columns"
|
||||
browser_density = "compact"
|
||||
sort_key = "name"
|
||||
sort_direction = "ascending"
|
||||
check_for_updates = true
|
||||
@@ -1 +0,0 @@
|
||||
XDG_TERMINAL = foot
|
||||
Reference in New Issue
Block a user