From 72efe134f645a5212f875c153dd8db4a64cbe968 Mon Sep 17 00:00:00 2001 From: "jakob.stendahl" Date: Tue, 23 Jan 2024 11:13:18 +0100 Subject: changes --- linux/sway/config | 249 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 249 insertions(+) create mode 100644 linux/sway/config (limited to 'linux/sway/config') diff --git a/linux/sway/config b/linux/sway/config new file mode 100644 index 0000000..97ee732 --- /dev/null +++ b/linux/sway/config @@ -0,0 +1,249 @@ +include autostart +include hid + +# border & title +for_window [title="^.*"] title_format " %class >> %title " +for_window [floating] border 1, border normal +default_border pixel 2 +default_floating_border normal +smart_borders on + +client.focused #4c7899 #539ce0 #ffffff #5fe327 #539ce0 +client.focused_inactive #333333 #5f676a #ffffff #484e50 #5f676a +client.unfocused #333333 #222222 #888888 #292d2e #222222 + +# gaps +gaps outer 0 +gaps inner 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 k +set $down j +set $left h +set $right l + +### 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+F4 kill + +# core applications +bindsym $Mod+Return exec alacritty +bindsym $Mod+w exec firefox +bindsym $Mod+f exec thunar +bindsym $Mod+c exec swaync-client -t +bindsym Mod1+l exec nwg-lock +bindsym $Mod+d exec wofi --show=drun + +# Exit menu +bindsym $Mod+p exec wlogout + +# 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+Space input "1:1:AT_Translated_Set_2_keyboard" xkb_switch_layout next + + +########### 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 + +bindsym $Mod+Shift+t sticky toggle + +# 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 splith splitv +bindsym $Mod+Tab layout toggle all + +# 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 + +############ 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|gnome-calculator|calculator)"] floating enable +for_window [app_id="(?i)(?:firefox|chromium)"] border none +for_window [title="(?i)(?:copying|deleting|moving)"] floating enable +for_window [title="(?i)(?:Cssh|cssh)"] border none floating enable +for_window [app_id="(?i)(?:Cssh|cssh)"] floating enable +for_window [title="CSSH"] floating enable + +# Make it easier to spot X11 windows +for_window [shell="xwayland"] title_format "[XWayland] %title" + +popup_during_fullscreen smart -- cgit v1.2.3