# Venomade's Sway Config # Logo key. Use Mod1 for Alt. set $mod Mod4 # Home row direction keys, like vim but colemak set $left h set $down n set $up e set $right i # Your preferred terminal emulator set $term foot # Your preferred application launcher set $rofi_run rofi -show run set $rofi_drun rofi -show drun -show-icons # This is a little hacky but I don't know if # any other way is possible on wayland. set $rofi_cliphist cliphist list \ | rofi -dmenu -p "" \ | cliphist decode \ | wl-copy \ && wtype -M ctrl -M shift -k v -m shift -m ctrl # Set the Music Player to Control set $player jellyfin-tui # Applications set $web_browser brave-browser set $file_manager foot -a=floating_foot yazi set $music_player foot jellyfin-tui # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) output * bg /home/venomade/Pictures/Papes/PurplePhoneLines.jpg fill # Set Monitor Resolution and Scale output eDP-1 resolution 2560x1600 position 0,0 scale 1.66 # Input Configuration input * { xkb_layout us xkb_variant colemak # xkb_options caps:ctrl_modifier xkb_options caps:escape # tap enabled natural_scroll enabled } ### Key bindings # # Basics: # # Start a terminal bindsym $mod+Return exec $term # Kill focused window bindsym $mod+q kill # Applications bindsym $mod+w exec $web_browser bindsym $mod+y exec $file_manager bindsym $mod+m exec $music_player # Start your launcher bindsym $mod+d exec $rofi_drun bindsym $mod+Shift+d exec $rofi_run bindsym $mod+v exec $rofi_cliphist bindsym $mod+Shift+t exec ~/.local/bin/rofi-translate bindsym $mod+Shift+w exec ~/.local/bin/rofi-wifimenu bindsym $mod+Shift+s exec ~/.local/bin/take-slurpshot bindsym $mod+s exec sh -c 'grim /tmp/grimshot.png && imv -f /tmp/grimshot.png && rm /tmp/grimshot.png' bindsym $mod+Shift+return exec ~/.local/bin/rofi-notes bindsym $mod+Ctrl+Shift+return exec ~/.local/bin/rofi-notes --delete # Drag floating windows by holding down $mod and left mouse button. # Resize them with right mouse button + $mod. # Despite the name, also works for non-floating windows. # Change normal to inverse to use left mouse button for resizing and right # mouse button for dragging. floating_modifier $mod normal # Reload the configuration file bindsym $mod+Shift+r reload # Exit sway (logs you out of your Wayland session) # bindsym $mod+Shift+x 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' bindsym $mod+Shift+x exec ~/.local/bin/rofi-powermenu # Lock Screen bindsym $mod+l exec ~/.local/bin/lock-screen bindsym $mod+Shift+l exec ~/.local/bin/lock-screen 0 # # Moving around: # # Move your focus around bindsym $mod+$left focus left bindsym $mod+$down focus down bindsym $mod+$up focus up bindsym $mod+$right focus right # Or use $mod+[up|down|left|right] bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # Move the focused window with the same, but add Shift bindsym $mod+Shift+$left move left bindsym $mod+Shift+$down move down bindsym $mod+Shift+$up move up bindsym $mod+Shift+$right move right # Ditto, 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 # # 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 # Note: workspaces can have any name you want, not just numbers. # We just use 1-10 as the default. # Gestures bindgesture swipe:right workspace prev bindgesture swipe:left workspace next # # Layout stuff: # # You can "split" the current object of your focus with # $mod+b or $mod+v, for horizontal and vertical splits # respectively. # bindsym $mod+Shift+b splith # bindsym $mod+Shift+v splitv # Switch the current container between different layout styles # bindsym $mod+s layout stacking # bindsym $mod+w layout tabbed # bindsym $mod+f layout toggle split # Make the current focus fullscreen bindsym $mod+Shift+f fullscreen # Toggle the current focus between tiling and floating mode bindsym $mod+Shift+space floating toggle # Swap focus between the tiling area and the floating area bindsym $mod+space focus mode_toggle # Move focus to the parent container bindsym $mod+a focus parent # # Scratchpad: # # Sway has a "scratchpad", which is a bag of holding for windows. # You can send windows there and get them back later. # Move the currently focused window to the scratchpad bindsym $mod+Shift+minus move scratchpad # Show the next scratchpad window or hide the focused scratchpad window. # If there are multiple scratchpad windows, this command cycles through them. 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+r mode "resize" # # Utilities: # # Special keys to adjust volume via PulseAudio bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5% bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5% bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle # Special keys to affect playing audio via PlayerCTL bindsym --locked XF86AudioPlay exec playerctl -p $player play-pause bindsym --locked XF86AudioNext exec playerctl -p $player next bindsym --locked XF86AudioPrev exec playerctl -p $player previous # Special keys to adjust brightness via brightnessctl bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+ bindsym --locked XF86KbdBrightnessDown exec brightnessctl --device='kbd_backlight' set 10%- bindsym --locked XF86KbdBrightnessUp exec brightnessctl --device='kbd_backlight' set 10%+ # Special key to take a screenshot with grim bindsym Print exec grim # Disable Titlebars gaps inner 4 default_border pixel 2 default_floating_border pixel 2 titlebar_padding 1 titlebar_border_thickness 0 # Floating Terminal for_window [app_id = "floating_foot"] floating enable # Set Font font pango:Google Sans Code 12 # # Status Bar: # # Read `man 5 sway-bar` for more information about this section. bar { status_command cd ~/.config/luastatus && exec luastatus-i3-wrapper -B no_separators\ playerctl.lua \ separator.lua \ wireless.lua \ separator.lua \ alsa.lua \ separator.lua \ battery.lua \ separator.lua \ time-date.lua position top colors { statusline #ffffff background #000000 inactive_workspace #00000000 #00000000 #000000ff focused_workspace #00000000 #000000ff #ffffffaa } } # class border bground text indicator child_border client.focused #000000 #000000 #F8F8F2 #000000 #000000 client.focused_inactive #000000 #000000 #F8F8F2 #000000 #000000 client.unfocused #000000 #000000 #F8F8F2 #000000 #000000 client.urgent #000000 #000000 #F8F8F2 #000000 #000000 client.placeholder #000000 #000000 #F8F8F2 #000000 #000000 client.background #000000 #000000 #FFFFFF #000000 #000000 include /etc/sway/config.d/*