dotfiles/old/_config/sway/config

175 lines
4.6 KiB
Text

# use windows key for mod
set $mod Mod4
# quick-launch
bindsym $mod+Return exec kitty
bindsym $mod+Home exec thunar
bindsym $mod+b exec firefox
bindsym $mod+d exec --no-startup-id ~/bin/launcher
bindsym --release $mod+g exec --no-startup-id ~/bin/screengrab
# i3 actions
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
# window bindings and behavior
floating_modifier $mod
focus_follows_mouse no
# kill focused window
bindsym $mod+Shift+q kill
# move window focus (Vim style)
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# move window focus (with arrow keys)
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move window (Vim style)
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# move window (with arrow keys)
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# splits
bindsym $mod+u split h
bindsym $mod+i split v
# fullscreen
bindsym $mod+f fullscreen
# toggle tiling/floating
bindsym $mod+Shift+space floating toggle
# toggle focus between tiling/floating
bindsym $mod+space focus mode_toggle
# focus parent container
bindsym $mod+a focus parent
# switch to specific workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
# move focus to adjacent output
bindsym $mod+bracketleft focus output left
bindsym $mod+bracketright focus output right
# jump to workspace on same output
bindsym $mod+Shift+bracketleft workspace prev_on_output
bindsym $mod+Shift+bracketright workspace next_on_output
mode "resize" {
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
# nice system menu
set $mode_system System (e) logout, (r) reboot, (shift+s) shutdown
mode "$mode_system" {
bindsym e exec --no-startup-id ~/bin/i3exit logout, mode "default"
bindsym r exec --no-startup-id ~/bin/i3exit reboot, mode "default"
bindsym Shift+s exec --no-startup-id ~/bin/i3exit shutdown, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Shift+e mode "$mode_system"
# appearance
font xft:artwiz lime 7
default_border pixel 5
font xft:Roboto 13
gaps inner 5
# app specific launch flags
for_window [class="Peek"] floating enable
include "$HOME/.cache/wal/colors-sway"
set $fg $color3
set $bg $color1
set $bgalt $color7
workspace_layout default
# class brdr bg txt indic childbdr
client.focused $bg $bg $fg $bg $bg
client.focused_inactive $bg $bg $fg $bg $bg
client.unfocused $bgalt $bgalt $fg $bg $bgalt
# client.urgent $bg $bg $fg $bg $bg
# client.placeholder $bg $bg $fg $bg $bg
# client.background $bg
# autostart
exec_always mako
exec_always import-gsettings
exec systemctl --user import-environment
input "type:keyboard" {
xkb_options caps:swapescape
}
include "$HOME/.config/sway/hosts/`hostname`"
output * bg $wallpaper fill
bar {
swaybar_command waybar
}
set $opacity 0.9
for_window [app_id="kitty"] opacity $opacity;
exec "systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"