lots of fixes, improvements, t12 stuff
[distro-setup] / i3-sway / common.conf
index fc3236be81cf7af0215fb5d3c5267759389889ec..40b1bb5d3aafdf4b90df48110b4b058f699290b8 100644 (file)
@@ -9,6 +9,7 @@
 
 # todo: think whether this is useful: https://github.com/tmfink/i3-wk-switch
 # todo: see comment by Jakstern551 here for tip about jumping to windows
+# https://old.reddit.com/r/i3wm/comments/k8m4k4/share_your_i3_tips_and_tricks_that_you_have/
 
 # https://i3wm.org/docs/userguide.html#keybindings
 #To get the current mapping of your keys, use xmodmap -pke. To
@@ -29,8 +30,6 @@ bindsym $mod+3 $ex "i3-split-maybe"; exec "abrowser"
 #bindsym $mod+3 exec "abrowser 2>&1 >/tmp/l"
 #bindsym $mod+3 exec "abrowser -no-remote -P sfw"
 bindsym $mod+4 $ex "i3-split-maybe"; exec "abrowser -no-remote -P firefox-main-profile"
-# todo: figure out a stream delay & way to cut the stream.
-# settings, advanced, stream delay
 bindsym $mod+5 $ex "/a/bin/ds/stream-interlude"
 bindsym $mod+6 $ex "i3-split-maybe"; exec "/usr/local/bin/start-tor-browser"
 bindsym $mod+7 $ex "/a/bin/ds/laptop-xrandr"
@@ -43,8 +42,12 @@ bindsym $mod+7 $ex "/a/bin/ds/laptop-xrandr"
 
 bindsym $mod+1 focus parent
 bindsym $mod+shift+1 focus child
-# undo split: https://github.com/i3/i3/issues/3808
-bindsym $mod+grave floating toggle; floating toggle
+
+# note, i used to have a key: "floating toggle; floating toggle" to
+# as undo split, as suggested here https://github.com/i3/i3/issues/3808
+# but something
+#
+bindsym $mod+grave floating toggle
 bindsym $mod+equal $ex "i3-set-layout splith"
 # move firefox to current workspace.
 # https://i3wm.org/docs/userguide.html#keybindings
@@ -62,14 +65,6 @@ bindsym $mod+t $ex "i3-set-layout splitv"
 #bindsym $mod+Shift+t move workspace to output up
 bindsym $mod+Shift+t move workspace to output right
 
-# todo: consider a command that moves a window, and erases any single
-# container window left behind.
-
-# todo: consider a command which alters things as if the current window
-# had been created into a single window split. For horizontal split,
-# this would be like: focus left, split vertical, focus right, move
-# left. With that, we could totally eliminate single window containers.
-
 bindsym $mod+g $ex "i3-set-layout tabbed"
 
 
@@ -113,15 +108,22 @@ bindsym $mod+z workspace 5
 bindsym $mod+Shift+x move container to workspace 6
 bindsym $mod+x workspace 6
 
-
-# todo, in newer i3, make this split toggle
 bindsym $mod+v split vertical
 bindsym $mod+Shift+v split horizontal
-#
-## temp for testing, add antying here
-#bindsym $mod+shift+5
 
+# 122 = XF86AudioLowerVolume, keyboardio function + t
+bindcode 122 $ex "toggle-mute unmute"; mode "ptt"
+mode "ptt" {
+# normally, if we hold down a button, it will start automatically
+# repeating itself, up and down events.  But this stops that from
+# happening. Based on testing, making mode be 1st or 2nd doesn't matter.
+bindcode --release 122 $ex "toggle-mute mute"; mode "default"
+}
+# 171 = XF86AudioNext, keyboardio function + g
+bindcode 171 $ex "toggle-mute unmute"
 
+## temp for testing, add antying here
+#bindsym $mod+shift+5 $ex "/a/a.sh"
 
 
 bindsym $mod+b $ex i3-pull term
@@ -166,8 +168,6 @@ bindcode $mod+65 $ex obs-auto-scene-switch-toggle; floating toggle; sticky enabl
 
 # change focus between tiling / floating windows
 bindcode $mod+shift+65 focus mode_toggle
-# Use Mouse+$mod to drag floating windows to their wanted position
-floating_modifier $mod
 
 bindsym $mod+shift+h $ex /b/ds/stream-clip hc
 bindsym $mod+j $ex "i3-split-maybe"; exec emacsclient -c
@@ -181,6 +181,8 @@ bindsym $mod+shift+semicolon $ex /b/ds/stream-clip sad
 # keybinds will screw up other laptop brightness keys.
 bindsym XF86MonBrightnessUp $ex brightnessctl s +5%
 bindsym XF86MonBrightnessDown $ex brightnessctl s 5%-
+for_window [class="copyq" instance="copyq" window_type="normal"] floating enable
+bindsym $mod+y $ex copyq-restart
 
 # Font for window titles. Will also be used by the bar unless a different font
 # is used in the bar {} block below.
@@ -199,9 +201,11 @@ bindsym $mod+End $ex "/b/ds/toggle-mute"
 
 # title bars but no borders. i tried this out a bit
 #default_border normal 0
-default_border pixel 4
+
+# default border is like 2 pixels
+default_border pixel
 # for debugging
-default_border normal 10
+#default_border normal 10
 
 # I dont see a way to make processing windows act like normal windows,
 # this does it.
@@ -214,6 +218,6 @@ default_border normal 10
 # this is the processing window for my app named focus.
 for_window [class="focus" instance="focus"] floating disable
 
-client.focused          #4c7899 #285577 #ffffff #2e9ef4   #ff4400
-client.focused_inactive #333333 #5f676a #ffffff #484e50   #DBEEF4
-client.unfocused        #333333 #222222 #888888 #292d2e   #B8C8CD
+client.focused          #4c7899 #285577 #ffffff #2e9ef4   #ff4400
+client.focused_inactive #333333 #5f676a #ffffff #484e50   #DBEEF4
+client.unfocused        #333333 #222222 #888888 #292d2e   #B8C8CD