Files
sway/.config/sway/config
2021-01-19 17:05:45 +01:00

333 lines
9.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Welcome To Your Sway Config! #
# Modifier Key - Use Mod1 for Alt
set $mod Mod4
# Keyboard - Uncomment to Pick - Defualt is ENGLISH (UK)
# All langauges and varinats in keyboard.conf
input * xkb_layout "gb"
#input * xkb_layout "us"
#input * xkb_layout "de"
#input * xkb_layout "nl"
#Default Terminal Emulator
set $term alacritty
# Your preferred application launcher - (You can also use dmenu or rofi)
set $menu wofi -c ~/.config/wofi/config -I
# workspace layouts:
#default i3 tiling mode
workspace_layout default
# Set inner/outer gaps
gaps inner 2
gaps outer 0
#do not show titlebar on windows:
default_border pixel 1
#workspace_layout stacking
#workspace_layout tabbed
#Tiling mode is tabbed:
#so each new window will open fullscreen as a tab, you can change between window-tabs with mouse or shortcut:
#
# [mod]+Left focus left (left arrow key)
# [mod]+Right focus right (right arrow key)
# get auth work with polkit-gnome:
exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
# Default Font - Waybar's Is In's It's Config
font pango:Noto Sans Regular 10
# thin borders:
hide_edge_borders both
# Use Mouse+$mod to drag floating windows to their wanted position:
floating_modifier $mod
# start a terminal:
bindsym $mod+Return exec $term
# kill focused window:
bindsym $mod+c kill
# open keybindings overview:
#bindsym $mod+F1 exec "xed ~/.config/i3/keybindings"
# Launch Wofi
bindsym $mod+d exec $menu
# change focus:
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+u focus up
bindsym $mod+ntilde focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window:
bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+ntilde move right
# alternatively, you can use the cursor 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
# split in horizontal orientation:
bindsym $mod+h split h
# 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+Shift+s layout stacking
bindsym $mod+Shift+w layout tabbed
bindsym $mod+Shift+e layout toggle split
# toggle tiling / floating:
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows:
bindsym $mod+space focus mode_toggle
# focus the parent container:
bindsym $mod+a focus parent
# focus the child container:
#bindsym $mod+d focus child
# autostart start applications + bind program to workspace:
assign [app_id="Alacritty"] 1
for_window [app_id="Alacritty"] focus
assign [app_id="firefox"] 2
for_window [app_id="firefox"] focus
assign [class="Thunar"] 3
for_window [class=Thunar] focus
assign [app_id=thunar] 4
for_window [app_id=thunar] focus
assign [class="TelegramDesktop"] 5
for_window [class=TelegramDesktop] focus
# Autostart apps:
#exec sleep 2 && xfce4-terminal
#exec firefox
#exec sleep 3 && thunar
#exec blueberry-tray
#set wallpaper:
exec swaybg -i ~/.config/sway/wallpaper.png
# Idle Config
exec swayidle -w\
timeout 1070 'swaylock -f -C ~/.config/swaylock/config'\
timeout 770 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
before-sleep 'swaylock -C ~/.config/swaylock/config'
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
# Desktop notifications_
exec /usr/bin/mako
# set floating (nontiling)for apps needing it:
for_window [class="Yad" instance="yad"] floating enable
for_window [class="Galculator" instance="galculator"] floating enable
for_window [class="Blueberry.py" instance="blueberry.py"] floating enable
# set floating (nontiling) for special apps:
for_window [class="Xsane" instance="xsane"] floating enable
for_window [class="Pavucontrol" instance="pavucontrol"] floating enable
for_window [class="qt5ct" instance="qt5ct"] floating enable
for_window [class="Blueberry.py" instance="blueberry.py"] floating enable
for_window [class="Bluetooth-sendto" instance="bluetooth-sendto"] floating enable
for_window [class="Pamac-manager"] floating enable
# resize floating windows with mouse scroll:
bindsym --whole-window --border $mod+button4 resize shrink height 5 px or 5 ppt
bindsym --whole-window --border $mod+button5 resize grow height 5 px or 5 ppt
bindsym --whole-window --border $mod+shift+button4 resize shrink width 5 px or 5 ppt
bindsym --whole-window --border $mod+shift+button5 resize grow width 5 px or 5 ppt
# Title format for windows
for_window [shell="xdg_shell"] title_format "%title (%app_id)"
for_window [shell="x_wayland"] title_format "%class - %title"
#Remove Titlebars
for_window [class="^.*"] border pixel 1
# 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 alt+tab scratchpad show
bindsym $mod+minus scratchpad show
# switch to 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
# 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
# reload the configuration file:
bindsym $mod+Shift+c reload
# restart sway inplace (preserves your layout/session, can be used to upgrade sway):
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session):
bindsym $mod+Shift+q exec wlogout
# resize window (you can also use the mouse for that):
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym ntilde 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"
# Multimedia Keys:
# volume
bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume 0 +3%
bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume 0 -3%
# mute
bindsym --locked XF86AudioMute exec pactl set-sink-mute 0 toggle
bindsym XF86AudioPlay exec playerctl play
bindsym XF86AudioPause exec playerctl pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
# backlight
bindsym XF86MonBrightnessUp exec brightnessctl -c backlight set +5%
bindsym XF86MonBrightnessDown exec brightnessctl -c backlight set 5%-
# App shortcuts
bindsym $mod+w exec "/usr/bin/firefox"
bindsym $mod+n exec "/usr/bin/thunar"
# Screenshots
bindsym print exec ~/.config/sway/scripts/screenshotFull.sh
bindsym Shift+print exec ~/.config/sway/scripts/screenshotArea.sh
# Lock the system
bindsym $mod+l exec ~/.config/sway/scripts/lockman.sh
#Network Applet
exec nm-applet --indicator
# class border bground text indicator child_border
client.focused #6272A4 #6272A4 #F8F8F2 #6272A4 #6272A4
client.focused_inactive #44475A #44475A #F8F8F2 #44475A #44475A
client.unfocused #282A36 #282A36 #BFBFBF #282A36 #282A36
client.urgent #44475A #FF5555 #F8F8F2 #FF5555 #FF5555
client.placeholder #282A36 #282A36 #F8F8F2 #282A36 #282A36
client.background #F8F8F2
# Input configuration
input "1267:12363:ELAN0650:01_04F3:304B_Touchpad" {
dwt enabled
tap enabled
natural_scroll enabled
middle_emulation enabled
}
# You can get the names of your inputs by running: swaymsg -t get_input.
# Put your touchpad's ID to replace "1267:12363:ELAN0650:01_04F3:304B_Touchpad" (keep the quotation marks)
# Status Bar:
bar {
swaybar_command waybar
}
# Set GTK theme - Use qt5ct for QT configuration
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'X-Arc-Darker'
gsettings set $gnome-schema icon-theme 'Arc-X-D'
}
# Clamshell Mode
set $laptop <eDP-1>
bindswitch --reload --locked lid:on output $laptop disable
bindswitch --reload --locked lid:off output $laptop enable
exec_always ~/.config/sway/scripts/clamshell.sh