summaryrefslogtreecommitdiff
path: root/sway/config
blob: 92e1edb6d176c5fc9b0cabfc896b8b1631c00bac (plain)
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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec hash dbus-update-activation-environment 2>/dev/null && \
     dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK

include colors

exec --no-startup-id dex -ae sway

font pango:Fira Sans 10

### Variables
set $mod Mod4

set $left n
set $down e
set $up i
set $right o

set $term kitty

set $menu rofi -show drun | xargs swaymsg exec --

### Output configuration
output "AOC Q27G1WG4 0x00020A32" mode 2560x1440@143.912Hz

output "*" background $wallpaper fill

### Idle configuration

exec swayidle \
    timeout 300 'swaylock' \
    timeout 600 'swaymsg "output * dpms off"' \
        resume 'swaymsg "output * dpms on"' \
    before-sleep 'swaylock --grace 0'


### Input configuration

input type:touchpad {
    dwt enabled
    natural_scroll enabled
    middle_emulation enabled
}

input type:touch {
    map_to_output eDP-1
}

input type:tablet_tool {
    map_to_output eDP-1
}

mouse_warping container

### Key bindings
#
# Basics:
#
bindsym $mod+Return exec $term

bindsym $mod+Shift+q kill

bindsym $mod+s exec $menu

floating_modifier $mod normal

bindsym $mod+Shift+d reload

bindsym $mod+Shift+f exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'

#
# Moving around:
#
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right

bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right

bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right

bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right

#
# Workspaces:
#
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10

bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10

bindsym $mod+Tab workspace next
bindsym $mod+Shift+Tab workspace prev

#
# Layout stuff:
#

bindsym $mod+h splith
bindsym $mod+v splitv

bindsym $mod+r layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+f layout toggle split

bindsym $mod+t fullscreen

bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+Shift+a focus child

#
# Scratchpad:
#
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show

#
# Resizing containers:
#
mode "resize" {
    # left will shrink the containers width
    # right will grow the containers width
    # up will shrink the containers height
    # down will grow the containers height
    bindsym $left resize shrink width 10px
    bindsym $down resize grow height 10px
    bindsym $up resize shrink height 10px
    bindsym $right resize grow width 10px

    # Ditto, with arrow keys
    bindsym Left resize shrink width 10px
    bindsym Down resize grow height 10px
    bindsym Up resize shrink height 10px
    bindsym Right resize grow width 10px

    # Return to default mode
    bindsym Return mode "default"
    bindsym Escape mode "default"
}
bindsym $mod+p mode "resize"

bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle

bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous

bindsym XF86MonBrightnessUp exec brightnessctl set +5%
bindsym XF86MonBrightnessDown exec brightnessctl set 5%-

bindsym $mod+b exec zen-browser
bindsym $mod+x exec xournalpp
bindsym $mod+c exec lectern open
bindsym $mod+d exec kitty --directory ~/nextcloud/escritoire xch nvim
bindsym $mod+Shift+t exec kitty --app-id 'float'
bindsym $mod+Shift+c exec kitty --app-id 'numbat' numbat
bindsym $mod+Shift+g exec feh -Z -F -B black /home/josh/Pictures/game.png
bindsym $mod+Shift+w exec wallpicker

# target                 title     bg           text        indicator  border
client.focused           $color12  $color12     $background $color15   $color12
client.focused_inactive  $color0   $color0      $foreground $color13   00000000
client.unfocused         $color0   $color0      $foreground $color13   00000000
client.urgent            $color13  $background  $color13    $color8    $color13
client.placeholder       $color8   $background  $foreground $color8    $color8
client.background        $background

gaps inner 10px
gaps outer 0px

title_align center
default_border pixel

force_display_urgency_hint 1500

for_window [app_id="float"] floating enable
for_window [app_id="numbat"] floating enable; resize set 800 600
for_window [app_id="xoppdoggin"] floating enable; resize set 1800 1000
for_window [app_id="wallpicker"] floating enable; resize set 1800 1000
for_window [class="Inkscape"] floating enable; resize set 1800 1000
for_window [class="vimscape"] floating enable; resize set 600 300; move down 300; move left 550

assign [class="^feishin"] workspace number 8
assign [class="^discord"] workspace number 9
assign [class="^Slack"] workspace number 9
assign [app_id="^thunderbird"] workspace number 9
assign [app_id="keepassxc"] workspace number 10

bar swaybar_command waybar

exec dunst
exec thunderbird
exec keepassxc
exec feishin
exec gammastep

bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png

include /etc/sway/config.d/*