{ pkgs, inputs, ... }: { xdg.configFile."sway/config".text = '' output eDP1 pos 3537 0 res 1920 1200 output DP-3 scale 1.4 output DP-3 pos 2440 0 res 3840 2160 set $mod Mod4 set $term ghostty font pango:iosevka 20 exec dbus-update-activation-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway exec /usr/libexec/pipewire-launcher focus_follows_mouse no for_window [class="^.*"] border pixel 3 default_border pixel 5 default_floating_border pixel 5 hide_edge_borders both floating_modifier $mod # custom shortcut bindsym $mod+Shift+q kill bindsym $mod+t exec $term bindsym $mod+d exec wofi --show run bindsym $mod+c exec comment bindsym $mod+n exec neovide bindsym $mod+x exec open_web bindsym $mod+Shift+p exec maim --select | wl-copy bindsym $mod+p exec grim -g "$(slurp)" - | wl-copy bindsym $mod+Shift+d exec wofi --show drun bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show bindsym $mod+j focus down bindsym $mod+k focus up bindsym $mod+l focus right bindsym $mod+h focus left # move focused window 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 focused workspace between monitors bindsym $mod+Ctrl+greater move workspace to output right bindsym $mod+Ctrl+less move workspace to output left # split in vertical orientation bindsym $mod+v split v # enter fullscreen mode for the focused container bindsym $mod+f fullscreen toggle # change container layout (stacked, tabbed, toggle split) bindsym $mod+w layout tabbed bindsym $mod+s layout toggle split bindsym $mod+Shift+space floating toggle bindsym $mod+a sticky toggle # change focus between tiling / floating windows bindsym $mod+space focus mode_toggle # Define names for default workspaces for which we configure key bindings later on. # We use variables to avoid repeating the names in multiple places. set $ws1 "1.web" set $ws2 "2.nvim" set $ws3 "3.work" set $ws4 "4.buffer" set $ws5 "5.chat" set $ws6 "6" set $ws7 "7" set $ws8 "8" set $ws9 "9" set $ws10 "10" # switch to workspace bindsym $mod+1 workspace $ws1 bindsym $mod+2 workspace $ws2 bindsym $mod+3 workspace $ws3 bindsym $mod+4 workspace $ws4 bindsym $mod+5 workspace $ws5 bindsym $mod+6 workspace $ws6 bindsym $mod+7 workspace $ws7 bindsym $mod+8 workspace $ws8 bindsym $mod+9 workspace $ws9 bindsym $mod+0 workspace $ws10 # move focused container to workspace bindsym $mod+Shift+1 move container to workspace $ws1 bindsym $mod+Shift+2 move container to workspace $ws2 bindsym $mod+Shift+3 move container to workspace $ws3 bindsym $mod+Shift+4 move container to workspace $ws4 bindsym $mod+Shift+5 move container to workspace $ws5 bindsym $mod+Shift+6 move container to workspace $ws6 bindsym $mod+Shift+7 move container to workspace $ws7 bindsym $mod+Shift+8 move container to workspace $ws8 bindsym $mod+Shift+9 move container to workspace $ws9 bindsym $mod+Shift+0 move container to workspace $ws10 # reload the configuration file bindsym $mod+Shift+c reload # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) bindsym $mod+Shift+r restart # resize window (you can also use the mouse for that) 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 or $mod+r bindsym Return mode "default" bindsym Escape mode "default" bindsym $mod+r mode "default" } bindsym $mod+r mode "resize" # class border bground text indicator child_border client.focused #83CAFA #51A2DA #FFFFFF #83CAFA #51A2DA client.unfocused #4C4C4C #222222 #888888 #292D2E #222222 client.urgent #EC69A0 #DB3279 #FFFFFF #DB3279 #DB3279 client.placeholder #000000 #0C0C0C #FFFFFF #000000 #0C0C0C client.background #FFFFFF bar { swaybar_command waybar } input type:keyboard { xkb_layout us,us_intl,de xkb_options grp:rctrl_toggle } gaps outer 5 gaps inner 5 output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill output "LG Electronics LG HDR 4K 0x0001A8D9" scale 1.4 exec nextcloud exec mako exec blueman-applet ''; }