-
Notifications
You must be signed in to change notification settings - Fork 0
/
binds.conf
139 lines (116 loc) · 4.87 KB
/
binds.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
###################
### MY PROGRAMS ###
###################
$terminal = kitty
$fileManager = thunar
$menu = wofi --show drun
$browser = firefox
####################
### KEYBINDINGSS ###
####################
$mainMod = SUPER # Sets "Windows" key as main modifier
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, RETURN, exec, $terminal
bind = $mainMod, C, killactive
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, B, exec, $browser
bind = $mainMod, V, togglefloating
bind = $mainMod, O, exec, $menu
bind = $mainMod, F, fullscreen # Fullscreen
bind = $mainMod, M, fullscreen, 1 # Maximize
# bind = $mainMod, P, pseudo, # dwindle
# bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, T, exec, [workspace 4;] kitty --title "btop" -e "btop"
bind = $mainMod, Q, exec, wlogout --protocol layer-shell
bind = $mainMod SHIFT, Q, exit
# Move focus with mainMod + arrow keys
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
bind = $mainMod, K, movefocus, u
bind = $mainMod, J, movefocus, d
# Resize window
bind = $mainMod, right, resizeactive, 15 0
bind = $mainMod, left, resizeactive, -15 0
bind = $mainMod, up, resizeactive, 0 -15
bind = $mainMod, down, resizeactive, 0 15
# Move window
bind = SUPER SHIFT, H, movewindow, l
bind = SUPER SHIFT, L, movewindow, r
bind = SUPER SHIFT, K, movewindow, u
bind = SUPER SHIFT, J, movewindow, d
# 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
# Traverse workspace with ctrl-alt movement keys
bind = ctrl alt, right, workspace, r+1
bind = ctrl alt, left, workspace, r-1
bind = ctrl alt, L, workspace, r+1
bind = ctrl alt, H, workspace, r-1
# 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 focused window to the next/previous workspace
bind = $mainMod SHIFT, right, movetoworkspace, r+1
bind = $mainMod SHIFT, left, movetoworkspace, r-1
bind = $mainMod SHIFT, H, movetoworkspace, r-1
bind = $mainMod SHIFT, L, movetoworkspace, r-1
# Cycle tabs
bind = ALT, Tab, cyclenext,
bind = ALT, Tab, bringactivetotop,
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, r+1
bind = $mainMod, mouse_up, workspace, r-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Screenshot a window
bind = $mainMod, PRINT, exec, hyprshot -m window
# Screenshot a monitor
bind = , PRINT, exec, hyprshot -m output
# Screenshot a region
bind = $mainMod SHIFT, PRINT, exec, hyprshot -m region
# Send image to device via kdeconnect
bind = $mainMod ALT, PRINT, exec, hyprshot -m output & sleep 2 && kdeconnect-cli --list-devices --name-only | grep -v "This device" | awk -F',' '{print $1}' | wofi -dmenu -p "Select device to send to:" | xargs -I{} sh -c 'file="$(ls -t ~/Pictures/Screenshots | head -n 1 | sed "s|^|$HOME/Pictures/Screenshots/|")"; kdeconnect-cli -n "{}" --share "$file" &&sleep 1 && rm "$file"'
# hyprexpo
bind = SUPER SHIFT, TAB, hyprexpo:expo, toggle
bind = SUPER, Tab, overview:toggle
# clipboard
bind = SUPER, P, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
# wallpaper
bind = SUPER, W, exec, waypaper --random
# disable blur and other stuffs for performance
bind = SUPER, G, exec, ~/.config/hypr/scripts/gameMode.sh
# Minimize windows using special workspaces
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod, S, movetoworkspace, +0
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod, S, movetoworkspace, special:magic
bind = $mainMod, S, togglespecialworkspace, magic
# Media control
bind = $mainMod, N, exec, playerctl next
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
# Requires playerctl
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
bindl = , XF86AudioNext, exec, playerctl next
# Backlight control
bindel = , XF86MonBrightnessUp, exec, brightnessctl set +10%
bindel = , XF86MonBrightnessDown, exec, brightnessctl set 10%-