From a0026af469d983e3ce47d6a470f50cc3159760d6 Mon Sep 17 00:00:00 2001
From: Prefetch
Date: Wed, 26 Jul 2023 19:51:42 +0200
Subject: Add Sway config

---
 sway/config | 187 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 187 insertions(+)
 create mode 100644 sway/config

(limited to 'sway/config')

diff --git a/sway/config b/sway/config
new file mode 100644
index 0000000..58a482f
--- /dev/null
+++ b/sway/config
@@ -0,0 +1,187 @@
+########################
+### Controlling Sway ###
+########################
+
+# Use Windows key to talk to Sway
+set $mod Mod4
+
+# Reload configuration
+bindsym $mod+Shift+c reload
+# Exit Sway back to TTY
+bindsym $mod+Shift+e exit
+
+
+##################
+### Aesthetics ###
+##################
+
+# Desktop background
+output "REDACTED" bg ~/.config/sway/Whirlpool_7740x3240.jpg fill
+output "REDACTED" adaptive_sync on
+
+# Window titlebars
+font pango:Noto Sans 11.5
+title_align center
+titlebar_padding 4
+titlebar_border_thickness 4
+
+# Window borders
+default_border pixel 4
+default_floating_border pixel 4
+hide_edge_borders smart
+
+# Window decorations (e6 = 90% opacity)
+# class                  border    backgr    text      indic     child_border
+client.focused           #960000e6 #960000e6 #ffffffff #c86400e6 #960000e6
+client.focused_tab_title #960000e6 #960000e6 #ffffffff #c86400e6 #960000e6
+client.focused_inactive  #320000e6 #320000e6 #ffffffff #000000e6 #000000ff
+client.unfocused         #320000e6 #000000e6 #ffffffff #000000e6 #000000ff
+client.urgent            #ffffffe6 #ffffffe6 #000000ff #ffffffe6 #ffffffe6
+
+# Status bar (swaybar)
+bar {
+	# Only show bar while $mod is pressed
+	mode hide
+	hidden_state hide
+	modifier $mod
+
+	# General dimensions
+	position bottom
+	height 30
+	status_padding 4
+	font pango:Noto Sans 12
+
+	# Workspace buttons on the left
+	workspace_min_width 30
+	colors {
+		# class            border  backgr  text
+		focused_workspace  #960000 #960000 #ffffff
+		active_workspace   #320000 #320000 #ffffff
+		inactive_workspace #000000 #000000 #ffffff
+		urgent_workspace   #ffffff #ffffff #000000
+	}
+
+	# Other information on the right
+	status_command i3status-rs
+}
+
+
+####################
+### Applications ###
+####################
+
+# Kill focused window
+bindsym $mod+Shift+q kill
+
+# Start a terminal
+bindsym $mod+Return exec alacritty
+
+# Start bemenu (program launcher)
+bindsym $mod+d exec bemenu-run \
+	--tf "#ffffff" --tb "#960000" \
+	--ff "#ffffff" --fb "#000000" \
+	--nf "#ffffff" --nb "#000000" \
+	--af "#ffffff" --ab "#000000" \
+	--hf "#ffffff" --hb "#960000" \
+	--fn "Noto Sans 12" \
+	--line-height "30"
+
+
+#######################
+### Layout controls ###
+#######################
+
+# Open new windows horizontally/vertically
+bindsym $mod+b split horizontal
+bindsym $mod+v split vertical
+
+# Set layout mode
+bindsym $mod+s layout stacking
+bindsym $mod+w layout tabbed
+bindsym $mod+e layout toggle split
+
+# Toggle fullscreen mode for current window
+bindsym $mod+f fullscreen toggle
+
+# Toggle floating mode for current window
+bindsym $mod+Shift+space floating toggle
+# Manipulate floating windows with Mouse+$mod
+floating_modifier $mod
+# Switch focus between tiling/floating layer
+bindsym $mod+space focus mode_toggle
+
+
+######################
+### Changing focus ###
+######################
+
+# Change focus
+bindsym $mod+h     focus left
+bindsym $mod+j     focus down
+bindsym $mod+k     focus up
+bindsym $mod+l     focus right
+bindsym $mod+Left  focus left
+bindsym $mod+Down  focus down
+bindsym $mod+Up    focus up
+bindsym $mod+Right focus right
+
+# Focus on parent/child
+bindsym $mod+a focus parent
+bindsym $mod+z focus child
+
+# 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
+bindsym $mod+Shift+Left  move left
+bindsym $mod+Shift+Down  move down
+bindsym $mod+Shift+Up    move up
+bindsym $mod+Shift+Right move right
+
+
+########################
+### Using workspaces ###
+########################
+
+# Workspace names
+set $ws1 "1"
+set $ws2 "2"
+set $ws3 "3"
+set $ws4 "4"
+set $ws5 "5"
+set $ws6 "6"
+set $ws7 "7"
+set $ws8 "8"
+set $ws9 "9"
+
+# Switch between workspaces
+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
+
+# Page Up/Down keys (bound to mouse fin)
+bindsym $mod+Next  workspace next_on_output
+bindsym $mod+Prior workspace prev_on_output
+
+# Move focused window to workspace
+bindsym $mod+Shift+1 move window to workspace $ws1
+bindsym $mod+Shift+2 move window to workspace $ws2
+bindsym $mod+Shift+3 move window to workspace $ws3
+bindsym $mod+Shift+4 move window to workspace $ws4
+bindsym $mod+Shift+5 move window to workspace $ws5
+bindsym $mod+Shift+6 move window to workspace $ws6
+bindsym $mod+Shift+7 move window to workspace $ws7
+bindsym $mod+Shift+8 move window to workspace $ws8
+bindsym $mod+Shift+9 move window to workspace $ws9
+
+# Store windows in the "scratchpad", a hidden workspace
+bindsym $mod+0 scratchpad show
+bindsym $mod+Shift+0 move window to scratchpad
+
-- 
cgit v1.2.3