aboutsummaryrefslogtreecommitdiff
path: root/Common/sway/config
diff options
context:
space:
mode:
authorjakob.stendahl <jakob.stendahl@infomedia.dk>2023-04-25 07:45:50 +0200
committerjakob.stendahl <jakob.stendahl@infomedia.dk>2023-04-25 07:45:50 +0200
commitbb5818068337cc3e5f985123e61030298469368b (patch)
treef11b10a34790ede05770c207e2b7f74fbd96dab9 /Common/sway/config
parentae56946206235b8b6f30a184d29a41cc5dcc39ca (diff)
downloaddotfiles-bb5818068337cc3e5f985123e61030298469368b.tar.gz
dotfiles-bb5818068337cc3e5f985123e61030298469368b.zip
Add wayland things
Diffstat (limited to 'Common/sway/config')
-rw-r--r--Common/sway/config272
1 files changed, 272 insertions, 0 deletions
diff --git a/Common/sway/config b/Common/sway/config
new file mode 100644
index 0000000..31aed6a
--- /dev/null
+++ b/Common/sway/config
@@ -0,0 +1,272 @@
+# The files we include below will be created / overwritten by nwg-shell tools
+#
+include variables
+include outputs
+include autostart
+include workspaces
+include keyboard
+include pointer
+include touchpad
+
+# nwg-shell sway config
+# Read `man 5 sway` for reference.
+
+# border & title
+for_window [title="^.*"] border none, title_format "<b> %class >> %title </b>"
+default_border none
+
+# gaps
+gaps inner 5
+gaps outer 0
+smart_gaps off
+
+# font
+font pango:monospace 11
+
+# mod key used for most binds
+# Mod1 = Alt
+# Mod4 = Super
+set $Mod Mod4
+
+# direction keys
+set $up l
+set $down k
+set $left j
+set $right semicolon
+
+############### wob ##################
+set $WOBSOCK $XDG_RUNTIME_DIR/wob.sock
+exec rm -f $WOBSOCK && mkfifo $WOBSOCK && tail -f $WOBSOCK | wob
+
+############### Autostart ##################
+
+exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
+exec hash dbus-update-activation-environment 2>/dev/null && \
+ dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
+exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
+exec ~/.azotebg
+exec blueman-applet
+exec udiskie
+
+### Turn off screen on lid closed
+set $laptop eDP-1
+bindswitch lid:on output $laptop disable
+bindswitch lid:off output $laptop enable
+
+############# Bindings ##################
+
+# kill focused window
+bindsym $Mod+Shift+q kill
+bindsym Mod1+q kill
+bindsym Mod1+F4 kill
+
+# core applications
+bindsym $Mod+Return exec $term
+bindsym $Mod+s exec nwg-shell-config
+bindsym $Mod+w exec $browser
+bindsym $Mod+f exec $filemanager
+bindsym $Mod+c exec swaync-client -t
+bindsym Mod1+l exec nwg-lock
+bindsym $Mod+F1 exec nwg-shell-help
+bindsym $Mod+d exec wofi --show=drun
+#bindsym $Mod+d exec rofi -lines 12 -padding 18 -width 60 -location 0 -show drun -sidebar-mode -columns 3 -font 'Noto Sans 8'
+
+# Exit menu
+bindsym $Mod+p exec $exit
+
+# Exit sway (default way to log 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'
+
+# screenshot
+bindsym Print exec screenshot fullscreen
+bindsym Control+Print exec screenshot display
+bindsym Shift+Control+Print exec grim -g "$(slurp)" - | swappy -f -
+bindsym $Mod+Shift+Control+Print exec screenshot focused
+
+# audio
+bindsym XF86AudioRaiseVolume exec amixer sset Master 5%+ | sed -En 's/.*\[([0-9]+)%\].*/\1/p' | head -1 > $WOBSOCK
+bindsym XF86AudioLowerVolume exec amixer sset Master 5%- | sed -En 's/.*\[([0-9]+)%\].*/\1/p' | head -1 > $WOBSOCK
+bindsym XF86AudioMute exec amixer sset Master toggle | sed -En '/\[on\]/ s/.*\[([0-9]+)%\].*/\1/ p; /\[off\]/ s/.*/0/p' | head -1 > $WOBSOCK
+bindsym XF86AudioMicMute exec amixer set Capture toggle
+
+# backlight
+bindsym XF86MonBrightnessDown exec brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > $WOBSOCK
+bindsym XF86MonBrightnessUp exec brightnessctl set +5% | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > $WOBSOCK
+
+# Open wdisplays
+bindsym XF86Display exec --no-startup-id "wdisplays"
+
+# Reload the configuration file
+bindsym $Mod+Shift+c reload
+
+# Shortcut to tt gui
+bindsym $Mod+Shift+Return exec /home/jakob/.local/bin/tt-g
+
+# Keyboard layout
+bindsym $Mod+Shift+F1 exec "swaymsg input 1:1:AT_Translated_Set_2_keyboard xkb_layout no"
+bindsym $Mod+Shift+F2 exec "swaymsg input 1:1:AT_Translated_Set_2_keyboard xkb_layout us"
+
+########### Workspace Bindings ###############
+
+# 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
+
+# switch to workspace - numpad alternatives
+bindsym $Mod+Mod2+KP_1 workspace number 1
+bindsym $Mod+Mod2+KP_2 workspace number 2
+bindsym $Mod+Mod2+KP_3 workspace number 3
+bindsym $Mod+Mod2+KP_4 workspace number 4
+bindsym $Mod+Mod2+KP_5 workspace number 5
+bindsym $Mod+Mod2+KP_6 workspace number 6
+bindsym $Mod+Mod2+KP_7 workspace number 7
+bindsym $Mod+Mod2+KP_8 workspace number 8
+bindsym $Mod+Mod2+KP_9 workspace number 9
+
+# switch to next or previous workspace
+bindsym $Mod+Mod1+Left workspace prev
+bindsym $Mod+Mod1+Right workspace next
+
+# move focused container to workspace
+bindsym $Mod+Shift+1 move container to workspace number 1; workspace number 1
+bindsym $Mod+Shift+2 move container to workspace number 2; workspace number 2
+bindsym $Mod+Shift+3 move container to workspace number 3; workspace number 3
+bindsym $Mod+Shift+4 move container to workspace number 4; workspace number 4
+bindsym $Mod+Shift+5 move container to workspace number 5; workspace number 5
+bindsym $Mod+Shift+6 move container to workspace number 6; workspace number 6
+bindsym $Mod+Shift+7 move container to workspace number 7; workspace number 7
+bindsym $Mod+Shift+8 move container to workspace number 8; workspace number 8
+bindsym $Mod+Shift+9 move container to workspace number 9; workspace number 9
+
+# move focused container to workspace - numpad alternatives
+bindsym $Mod+Shift+Mod2+KP_End move container to workspace number 1; workspace number 1
+bindsym $Mod+Shift+Mod2+KP_Down move container to workspace number 2; workspace number 2
+bindsym $Mod+Shift+Mod2+KP_Next move container to workspace number 3; workspace number 3
+bindsym $Mod+Shift+Mod2+KP_Left move container to workspace number 4; workspace number 4
+bindsym $Mod+Shift+Mod2+KP_Begin move container to workspace number 5; workspace number 5
+bindsym $Mod+Shift+Mod2+KP_Right move container to workspace number 6; workspace number 7
+bindsym $Mod+Shift+Mod2+KP_Home move container to workspace number 7; workspace number 7
+bindsym $Mod+Shift+Mod2+KP_Up move container to workspace number 8; workspace number 8
+
+############ Container/Window control ############
+
+# Scratchpad, Floating
+bindsym $Mod+space floating toggle
+floating_modifier $Mod normal
+
+# 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+z 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+z scratchpad show
+
+# change focus
+bindsym $Mod+$left focus left
+bindsym $Mod+$down focus down
+bindsym $Mod+$up focus up
+bindsym $Mod+$right 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+$left move left
+bindsym $Mod+Shift+$down move down
+bindsym $Mod+Shift+$up move up
+bindsym $Mod+Shift+$right move right
+
+# alternatively, you can use the cursor keys:
+bindsym $Mod+Shift+Up move up
+bindsym $Mod+Shift+Down move down
+bindsym $Mod+Shift+Left move left
+bindsym $Mod+Shift+Right move right
+
+# Resizing containers
+mode "resize" {
+ 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"
+
+# Size
+# bindsym Mod1+Up resize shrink height 10 px or 1 ppt
+# bindsym Mod1+Down resize grow height 10 px or 1 ppt
+# bindsym Mod1+Left resize shrink width 10 px or 1 ppt
+# bindsym Mod1+Right resize grow width 10 px or 1 ppt
+
+# layout toggle
+bindsym Mod1+Tab layout toggle tabbed stacking split
+bindsym $Mod+Tab layout toggle splitv splith
+
+# switch to workspace with urgent window
+for_window [urgent="latest"] focus
+focus_on_window_activation focus
+
+# container layout
+bindsym $Mod+h split h
+bindsym $Mod+v split v
+bindsym $Mod+Shift+t layout tabbed
+bindsym $Mod+Shift+s layout stacking
+bindsym $Mod+Shift+h layout toggle split
+
+default_orientation horizontal
+
+# make the current focus fullscreen
+bindsym $Mod+Shift+f fullscreen
+
+############### Border & Gaps ###############
+
+# changing border style
+bindsym $Mod+b border toggle
+
+# change gaps
+bindsym $Mod+plus gaps inner current plus 5
+bindsym $Mod+minus gaps inner current minus 5
+bindsym Mod1+plus gaps outer current plus 5
+bindsym Mod1+minus gaps outer current minus 5
+
+bindsym $Mod+KP_Add gaps inner current plus 5
+bindsym $Mod+KP_Subtract gaps inner current minus 5
+bindsym Mod1+KP_Add gaps outer current plus 5
+bindsym Mod1+KP_Subtract gaps outer current minus 5
+
+############ bar settings ############
+bar {
+ swaybar_command "waybar"
+}
+
+############ application settings ############
+
+# focus, floating, & sticky
+for_window [app_id="(?i)(?:blueman-manager|azote|gnome-disks|Thunar|wdisplays)"] floating enable
+for_window [app_id="(?i)(?:pavucontrol|nm-connection-editor|gsimplecal|galculator)"] floating enable
+for_window [app_id="(?i)(?:firefox|chromium)"] border none
+for_window [title="(?i)(?:copying|deleting|moving)"] floating enable
+
+popup_during_fullscreen smart