# assign custom classes to specific workspaces
# to more easily assign apps to specific workspaces temporarily
assign [class="app-ws1"] $ws1
assign [class="app-ws2"] $ws2
assign [class="app-ws3"] $ws3
assign [class="app-ws4"] $ws4
assign [class="app-ws5"] $ws5
assign [class="app-ws6"] $ws6
assign [class="app-ws7"] $ws7
assign [class="app-ws8"] $ws8
assign [class="app-ws9"] $ws9
assign [class="app-ws10"] $ws10
assign [class="app-ws11"] $ws11
assign [class="app-ws12"] $ws12

# assign applications to specific workspaces
# TODO: I'd prefer to switch to the designated workspace when it's launched in another workspace.
# assign [class="Spotify"] $ws8
assign [class="vesktop"] $ws9

# autostart applications on a specific workspace
exec --no-startup-id i3-msg 'workspace $ws3; exec thunderbird'
exec --no-startup-id i3-msg 'workspace $ws2; exec firefox --new-window'
exec --no-startup-id i3-msg 'workspace $ws1; exec kitty   --single-instance'

# autostart applications in general (usually always assigned to a workspace)
exec --no-startup-id flatpak run dev.vencord.Vesktop
# exec --no-startup-id spotify
exec --no-startup-id blueman-applet
