include ayu_mirage # Remap caps lock to escape input * { xkb_options "caps:escape" xkb_layout us,se } input "type:touchpad" { # Palm detection (disable when typing) dwt enabled scroll_factor 0.2125 scroll_method two_finger natural_scroll enabled tap enabled tap_button_map lrm # Cannot change base sensitivity, in sway accel and sensitivity are are intertwined :( pointer_accel 0.225 } # Logo key. Use Mod1 for Alt. set $mod Mod4 # Your preferred terminal emulator set $term ghostty # Your preferred application launcher # Note: pass the final command to swaymsg so that the resulting window can be opened # on the original workspace that the command was run on. set $menu dmenu_path | wmenu | xargs swaymsg exec -- ### Output configuration # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) output * bg /home/larssonmartin1998-asahi/.config/wallpapers/catppuccin/cloudsnight.jpg fill exec_always --no-startup-id ~/.config/sway/idle.sh exec_always --no-startup-id ~/.config/sway/dim_inactive.windows.py # https://github.com/ErikReider/SwayAudioIdleInhibit # Prevents the system from locking when audio is playing or recording. # This prevents the pc from shutting down when watching youtube for instance. exec_always --no-startup-id sway-audio-idle-inhibit exec swayidle -w \ timeout 300 'swaylock -f -c 000000' \ timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \ before-sleep 'swaylock -f -c 000000' ### Key bindings # Start a terminal bindsym $mod+Return exec $term # Kill focused window bindsym $mod+q kill # Start your launcher bindsym $mod+d exec $menu # Reload the configuration file bindsym $mod+Shift+c reload # Exit sway (logs you out of your Wayland session) bindsym $mod+Shift+e 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' # Switch the keyboard layout bindsym $mod+Shift+l exec ~/.config/sway/toggle_keyboard_layout.sh # # Moving around: # bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right bindsym $mod+Shift+Left mark swap, focus left, swap container with mark swap, focus left bindsym $mod+Shift+Down mark swap, focus down, swap container with mark swap, focus down bindsym $mod+Shift+Up mark swap, focus up, swap container with mark swap, focus up bindsym $mod+Shift+Right mark swap, focus right, swap container with mark swap, focus right # Workspaces: # # Switch to workspace 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 # Move focused container to workspace 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 # # Layout stuff: # # Inverse the split to match neovim directions bindsym $mod+Shift+v splith bindsym $mod+Shift+h splitv # Switch the current container between different layout styles bindsym $mod+Shift+t layout tabbed bindsym $mod+Shift+s layout toggle split # Make the current focus fullscreen bindsym $mod+Shift+f fullscreen # Move focus to the parent container bindsym $mod+Shift+a focus parent # 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 shrink height 10px bindsym Up resize grow height 10px bindsym Right resize grow width 10px # Return to default mode bindsym Return mode "default" bindsym Escape mode "default" } bindsym $mod+space mode "resize" # # Status Bar: # # Rea# target title bg text indicator border client.focused $ayu_regexp $ayu_regexp $ayu_regexp $ayu_entity $ayu_regexp client.focused_inactive $ayu_ui $ayu_ui $ayu_ui $ayu_entity $ayu_ui client.unfocused $ayu_bg $ayu_bg $ayu_bg $ayu_entity $ayu_bg client.urgent $ayu_keyword $ayu_bg $ayu_fg $ayu_ui $ayu_keyword client.placeholder $ayu_ui $ayu_ui $ayu_fg $ayu_ui $ayu_ui client.background $ayu_bg `man 5 sway-bar` for more information about this section. # Hack to remove the titlebar or minimizing it. font pango:CaskaydiaCove NFM SemiLight 1 default_border none default_floating_border none titlebar_padding 1 titlebar_border_thickness 0 bar { position bottom font pango:CaskaydiaCove NFM SemiLight 14 # When the status_command prints a new line to stdout, swaybar updates. # status_command while date +'%Y-%m-%d %X'; do sleep 1; done status_command ~/.config/sway/status.sh colors { background $ayu_bg statusline $ayu_fg focused_statusline $ayu_fg focused_separator $ayu_bg focused_workspace $ayu_bg $ayu_bg $ayu_accent active_workspace $ayu_bg $ayu_bg $ayu_tag inactive_workspace $ayu_bg $ayu_bg $ayu_ui urgent_workspace $ayu_bg $ayu_bg $ayu_ui binding_mode $ayu_bg $ayu_bg $ayu_ui } } include /etc/sway/config.d/*