单独定义nix-ld; 增加smartmontools; 增添docker配置; 修改hyprland样式
This commit is contained in:
@@ -30,6 +30,7 @@ exec-once = waybar # launch the system panel
|
||||
exec-once = blueman-applet # systray app for BT
|
||||
exec-once = mako # start notification demon
|
||||
exec-once = fcitx5 -d -r
|
||||
exec-once = swww-daemon
|
||||
# exec-once = nm-applet --indicator # systray app for Network/Wifi
|
||||
# exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH
|
||||
# exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
################################################
|
||||
# Main modifier
|
||||
################################################
|
||||
$mainMod = SUPER # windows key
|
||||
$mod = SUPER # windows key
|
||||
$terminal = kitty
|
||||
$filemanager = dolphin
|
||||
|
||||
@@ -17,27 +17,27 @@ $filemanager = dolphin
|
||||
################################################
|
||||
# Main actions
|
||||
################################################
|
||||
bind = $mainMod, C, killactive # killactive, kill the window on focus
|
||||
bind = $mainMod CTRL, delete, exit, # kill hyperland session
|
||||
bind = $mainMod, F, togglefloating, # toggle the window on focus to float
|
||||
bind = $mainMod CTRL, L, exec, swaylock # lock screen
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, S, togglesplit, # split screen
|
||||
bind = $mainMod, return, fullscreen, # toggle the window on focus to fullscreen
|
||||
bind = $mod, C, killactive # killactive, kill the window on focus
|
||||
bind = $mod CTRL, delete, exit, # kill hyperland session
|
||||
bind = $mod, F, togglefloating, # toggle the window on focus to float
|
||||
bind = $mod CTRL, L, exec, swaylock # lock screen
|
||||
bind = $mod, P, pseudo, # dwindle
|
||||
bind = $mod, S, togglesplit, # split screen
|
||||
bind = $mod, return, fullscreen, # toggle the window on focus to fullscreen
|
||||
bind = $mod, F1, exec, ~/.config/hypr/scripts/keybinds.sh
|
||||
|
||||
# Application shortcuts
|
||||
bind = $mainMod, grave, exec, $terminal # ~ open terminal
|
||||
bind = $mainMod, E, exec, $filemanager # open file manager
|
||||
bind = $mainMod, V, exec, code # open vscode
|
||||
bind = $mod, grave, exec, $terminal # ~ open terminal
|
||||
bind = $mod, E, exec, $filemanager # open file manager
|
||||
bind = $mod, V, exec, code # open vscode
|
||||
|
||||
################################################
|
||||
# Control actions
|
||||
################################################
|
||||
# Rofi is toggled on/off if you repeat the key presses
|
||||
bind = $mainMod, SPACE, exec, pkill rofi || rofi -show drun # launch desktop applications
|
||||
bind = $mainMod, tab, exec, pkill rofi || rofi -show window # switch between desktop applications
|
||||
bind = $mainMod, E, exec, pkill rofi || rofi -show filebrowser # browse system files
|
||||
bind = $mainMod, R, exec, pkill rofi || rofi -show run # run a command
|
||||
bind = $mod, SPACE, exec, pkill rofi || rofi -show drun # launch desktop applications
|
||||
bind = $mod, E, exec, pkill rofi || rofi -show filebrowser # browse system files
|
||||
bind = $mod, R, exec, pkill rofi || rofi -show run # run a command
|
||||
|
||||
# Audio control
|
||||
# bind = , F10, exec, ~/.config/hypr/scripts/volumecontrol.sh -o m # toggle audio mute
|
||||
@@ -53,94 +53,93 @@ bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
|
||||
# Screenshot/screencapture
|
||||
bind = , PRINT, exec, hyprshot -m window
|
||||
bind = ALT, PRINT, exec, hyprshot -m region
|
||||
bind = , PRINT, exec, hyprshot -z -m window
|
||||
bind = ALT, PRINT, exec, hyprshot -z -m region
|
||||
|
||||
|
||||
################################################
|
||||
# Exec custom scripts
|
||||
################################################
|
||||
bind = $mainMod, G, exec, ~/.config/hypr/scripts/gamemode.sh # disable hypr effects for gamemode
|
||||
bind = $mod, G, exec, ~/.config/hypr/scripts/gamemode.sh # disable hypr effects for gamemode
|
||||
|
||||
|
||||
|
||||
################################################
|
||||
# Window actions
|
||||
################################################
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, H, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, L, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, K, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
bind = $mainMod, J, movefocus, d
|
||||
# Move focus with mod + arrow keys
|
||||
bind = $mod, left, movefocus, l
|
||||
bind = $mod, H, movefocus, l
|
||||
bind = $mod, right, movefocus, r
|
||||
bind = $mod, L, movefocus, r
|
||||
bind = $mod, up, movefocus, u
|
||||
bind = $mod, K, movefocus, u
|
||||
bind = $mod, down, movefocus, d
|
||||
bind = $mod, J, movefocus, d
|
||||
|
||||
# Resize windows
|
||||
binde = $mainMod CONTROL, right, resizeactive, 10 0
|
||||
binde = $mainMod CONTROL, left, resizeactive, -10 0
|
||||
binde = $mainMod CONTROL, up, resizeactive, 0 -10
|
||||
binde = $mainMod CONTROL, down, resizeactive, 0 10
|
||||
binde = $mod CONTROL, right, resizeactive, 10 0
|
||||
binde = $mod CONTROL, left, resizeactive, -10 0
|
||||
binde = $mod CONTROL, up, resizeactive, 0 -10
|
||||
binde = $mod CONTROL, down, resizeactive, 0 10
|
||||
|
||||
# Move Window with mainMod + SHIFT + arrow keys
|
||||
bind = $mainMod SHIFT, left, movewindow, l
|
||||
bind = $mainMod SHIFT, right, movewindow, r
|
||||
bind = $mainMod SHIFT, up, movewindow, u
|
||||
bind = $mainMod SHIFT, down, movewindow, d
|
||||
# Move Window with mod + SHIFT + arrow keys
|
||||
bind = $mod SHIFT, left, movewindow, l
|
||||
bind = $mod SHIFT, right, movewindow, r
|
||||
bind = $mod SHIFT, up, movewindow, u
|
||||
bind = $mod SHIFT, down, movewindow, d
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
# Move/resize windows with mod + LMB/RMB and dragging
|
||||
bindm = $mod, mouse:272, movewindow
|
||||
bindm = $mod, mouse:273, resizewindow
|
||||
|
||||
|
||||
################################################
|
||||
# Workspace actions
|
||||
################################################
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
# Switch workspaces with mod + [0-9]
|
||||
bind = $mod, 1, workspace, 1
|
||||
bind = $mod, 2, workspace, 2
|
||||
bind = $mod, 3, workspace, 3
|
||||
bind = $mod, 4, workspace, 4
|
||||
bind = $mod, 5, workspace, 5
|
||||
bind = $mod, 6, workspace, 6
|
||||
bind = $mod, 7, workspace, 7
|
||||
bind = $mod, 8, workspace, 8
|
||||
bind = $mod, 9, workspace, 9
|
||||
bind = $mod, 0, workspace, 10
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
# Move active window to a workspace with mod + SHIFT + [0-9]
|
||||
bind = $mod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Move window to workspace Super + Alt + [0-9]
|
||||
bind = $mainMod ALT, 1, movetoworkspacesilent, 1
|
||||
bind = $mainMod ALT, 2, movetoworkspacesilent, 2
|
||||
bind = $mainMod ALT, 3, movetoworkspacesilent, 3
|
||||
bind = $mainMod ALT, 4, movetoworkspacesilent, 4
|
||||
bind = $mainMod ALT, 5, movetoworkspacesilent, 5
|
||||
bind = $mainMod ALT, 6, movetoworkspacesilent, 6
|
||||
bind = $mainMod ALT, 7, movetoworkspacesilent, 7
|
||||
bind = $mainMod ALT, 8, movetoworkspacesilent, 8
|
||||
bind = $mainMod ALT, 9, movetoworkspacesilent, 9
|
||||
bind = $mainMod ALT, 0, movetoworkspacesilent, 10
|
||||
bind = $mod ALT, 1, movetoworkspacesilent, 1
|
||||
bind = $mod ALT, 2, movetoworkspacesilent, 2
|
||||
bind = $mod ALT, 3, movetoworkspacesilent, 3
|
||||
bind = $mod ALT, 4, movetoworkspacesilent, 4
|
||||
bind = $mod ALT, 5, movetoworkspacesilent, 5
|
||||
bind = $mod ALT, 6, movetoworkspacesilent, 6
|
||||
bind = $mod ALT, 7, movetoworkspacesilent, 7
|
||||
bind = $mod ALT, 8, movetoworkspacesilent, 8
|
||||
bind = $mod ALT, 9, movetoworkspacesilent, 9
|
||||
bind = $mod ALT, 0, movetoworkspacesilent, 10
|
||||
|
||||
# Special workspaces (scratchpad)
|
||||
bind = $mainMod ALT, S, movetoworkspacesilent, special
|
||||
bind = $mainMod CONTROL, S, togglespecialworkspace,
|
||||
bind = $mod ALT, S, movetoworkspacesilent, special
|
||||
bind = $mod CONTROL, S, togglespecialworkspace,
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod CTRL, right, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e+1
|
||||
bind = ALT, Tab, workspace, e+1
|
||||
# Scroll through existing workspaces with mod + scroll
|
||||
bind = $mod CTRL, right, workspace, e+1
|
||||
bind = $mod, mouse_up, workspace, e+1
|
||||
|
||||
bind = $mainMod CTRL, left, workspace, e-1
|
||||
bind = $mainMod, mouse_down, workspace, e-1
|
||||
bind = $mod CTRL, left, workspace, e-1
|
||||
bind = $mod, mouse_down, workspace, e-1`
|
||||
12
modules/home/hyprland/conf/hypr/scripts/keybinds.sh
Executable file
12
modules/home/hyprland/conf/hypr/scripts/keybinds.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
# 简单示例:从 hyprland.conf 提取非注释的 bind= 行
|
||||
# 注意:这可能需要根据你的配置复杂性进行调整(例如处理逗号后的空格、多行绑定等)
|
||||
grep '^bind =' ~/.config/hypr/keybindings.conf | \
|
||||
sed 's/^bind = //; s/, /\t/' | \
|
||||
# 可以进一步处理,比如移除 exec 后面的命令细节,只留动作描述
|
||||
# sed -E 's/,(.+)/ : \1/' | # 简单替换
|
||||
column -t -s $'\t' | \
|
||||
rofi -dmenu -i -p "Hyprland Keybinds" -markup-rows -config ~/.config/rofi/config-keybinds.rasi
|
||||
# 或者使用 wofi:
|
||||
# wofi --dmenu --prompt "Hyprland Keybinds" --insensitive
|
||||
@@ -10,8 +10,8 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
# Float rules for system dialogs and popups
|
||||
windowrulev2 = float,class:^(.*)$,title:^(Open [Ff]ile)
|
||||
windowrulev2 = center,class:^(.*)$,title:^(Open [Ff]ile)
|
||||
windowrulev2 = float,class:^(.*)$,title:^(Open [Ff]iles?)
|
||||
windowrulev2 = center,class:^(.*)$,title:^(Open [Ff]iles?)
|
||||
|
||||
windowrulev2 = float,class:^(.*)$,title:^(Open [Ff]older)
|
||||
windowrulev2 = center,class:^(.*)$,title:^(Open [Ff]older)
|
||||
@@ -35,6 +35,6 @@ windowrulev2 = float,class:^(blueman-manager)$
|
||||
windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$
|
||||
|
||||
|
||||
windowrulev2 = opacity 0.50 0.50,class:^(Code)$
|
||||
windowrulev2 = opacity 1.00 1.00,class:^(code)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$
|
||||
windowrulev2 = opacity 0.80 0.80,class:^(kitty)$
|
||||
windowrulev2 = opacity 0.50 0.50,class:^(kitty)$
|
||||
|
||||
Reference in New Issue
Block a user