feat: add browser script

This commit is contained in:
2025-09-25 18:59:03 +09:00
parent 289625930c
commit b0ef37c800
2 changed files with 59 additions and 26 deletions

View File

@@ -23,45 +23,45 @@ source=~/.config/hypr/mocha.conf
################
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = HDMI-A-1, 1920x1080@60, 0x0, 1
# monitor = HDMI-A-1, 1920x1080@60, 0x0, 1
monitor = HDMI-A-2, 1920x1080@60, 1920x1080, 1 # tablet
monitor = DP-1, 1920x1080@60, 1920x0, 1
monitor = DP-3, 3840x2160@60, 3840x-720, 1.5
monitor = DP-2, 1920x1080@60, 6400x0, 1
# ID 0 -> x
workspace=1,monitor:HDMI-A-1,default:true
workspace=2,monitor:HDMI-A-1
workspace=3,monitor:HDMI-A-1
workspace=4,monitor:HDMI-A-1
workspace=5,monitor:HDMI-A-1
# workspace=1,monitor:HDMI-A-1,default:true
# workspace=2,monitor:HDMI-A-1
# workspace=3,monitor:HDMI-A-1
# workspace=4,monitor:HDMI-A-1
# workspace=5,monitor:HDMI-A-1
workspace=41,monitor:HDMI-A-2,default:true
workspace=42,monitor:HDMI-A-2
workspace=43,monitor:HDMI-A-2
workspace=44,monitor:HDMI-A-2
workspace=45,monitor:HDMI-A-2
workspace=31,monitor:HDMI-A-2,default:true
workspace=32,monitor:HDMI-A-2
workspace=33,monitor:HDMI-A-2
workspace=34,monitor:HDMI-A-2
workspace=35,monitor:HDMI-A-2
# ID 1 -> 1x
workspace=11,monitor:DP-1,default:true
workspace=12,monitor:DP-1
workspace=13,monitor:DP-1
workspace=14,monitor:DP-1
workspace=15,monitor:DP-1
workspace=1,monitor:DP-1,default:true
workspace=2,monitor:DP-1
workspace=3,monitor:DP-1
workspace=4,monitor:DP-1
workspace=5,monitor:DP-1
# ID 2 -> 2x
workspace=21,monitor:DP-2,default:true
workspace=22,monitor:DP-2
workspace=23,monitor:DP-2
workspace=24,monitor:DP-2
workspace=25,monitor:DP-2
workspace=11,monitor:DP-2,default:true
workspace=12,monitor:DP-2
workspace=13,monitor:DP-2
workspace=14,monitor:DP-2
workspace=15,monitor:DP-2
# ID 3 -> 3x
workspace=31,monitor:DP-3,default:true
workspace=32,monitor:DP-3
workspace=33,monitor:DP-3
workspace=34,monitor:DP-3
workspace=35,monitor:DP-3
workspace=21,monitor:DP-3,default:true
workspace=22,monitor:DP-3
workspace=23,monitor:DP-3
workspace=24,monitor:DP-3
workspace=25,monitor:DP-3
###################
@@ -293,6 +293,7 @@ bind = CTRL ALT, V, exec, vesktop --enable-wayland-ime --ozone-platform=wayland
bind = CTRL ALT, P, exec, prismlauncher
bind = CTRL ALT, C, exec, hyprpicker
bind = SUPER, F, exec, ~/.config/hypr/scripts/toggle-firefox.sh
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
@@ -300,6 +301,12 @@ bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Neovim keys!
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, exec, hyprsome workspace 1
bind = $mainMod, 2, exec, hyprsome workspace 2

26
scripts/toggle-firefox.sh Executable file
View File

@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# Workspace name for scratchpad
SCRATCH="special:firefox"
# Find Firefox window
WIN=$(hyprctl clients -j | jq -r '.[] | select(.class == "firefox") | .address' | head -n1)
if [ -z "$WIN" ]; then
# If not running, launch Firefox
firefox &
exit
fi
# Get current workspace of Firefox
CUR=$(hyprctl clients -j | jq -r --arg WIN "$WIN" '.[] | select(.address == $WIN) | .workspace.name')
if [ "$CUR" = "$SCRATCH" ]; then
# If hidden, move back to current workspace
hyprctl dispatch movetoworkspacesilent "$(hyprctl activeworkspace -j | jq -r .name),address:$WIN"
hyprctl dispatch focuswindow "address:$WIN"
else
# Otherwise, move it to scratchpad
hyprctl dispatch movetoworkspacesilent "$SCRATCH,address:$WIN"
fi