-bindsym $mod+2 exec "pavucontrol"
-# ian: dunno why but i needed this version at some point, then
-# it mysteriously stopped working, but works on the cli. 2022-12
-#bindsym $mod+3 exec "abroswer"
-bindsym $mod+3 exec "abrowser -no-remote -P sfw"
-bindsym $mod+4 exec "abrowser -no-remote -P firefox-main-profile"
-bindsym $mod+5 exec "/usr/local/bin/start-tor-browser"
-bindsym $mod+6 exec "/a/bin/redshift.sh"
-# bindsym $mod+equal exec "t s w; t in"
-# bindsym $mod+Home exec "t out"
-# #bindsym $mod+End exec "t s x; t in"
-# bindsym $mod+grave exec "t s lunch; t in; t out -a '45 minutes from now'"
-
-
-bindsym $mod+equal focus parent
+# for non-gui apps, use this.
+set $ex exec --no-startup-id
+
+bindsym $mod+2 $ex "/b/ds/i3-split-maybe"; exec "pavucontrol"
+# calling without -no-remote makes this to be the instance that links
+# will open in from other applications.
+bindsym $mod+3 $ex "/b/ds/i3-split-maybe"; exec "abrowser"
+# calling just abrowser mysteriously stopped working,
+# so I figured out this is how to get output, but then
+# it suddenly started working again.
+#bindsym $mod+3 exec "abrowser 2>&1 >/tmp/l"
+#bindsym $mod+3 exec "abrowser -no-remote -P sfw"
+bindsym $mod+4 $ex "/b/ds/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/obs-i3-interlude"
+bindsym $mod+6 $ex "/b/ds/i3-split-maybe"; exec "/usr/local/bin/start-tor-browser"
+bindsym $mod+7 $ex "/a/bin/ds/laptop-xrandr"
+#bindsym $mod+6 $ex "/a/bin/redshift.sh"
+# bindsym $mod+equal $ex "t s w; t in"
+# bindsym $mod+Home $ex "t out"
+# #bindsym $mod+End $ex "t s x; t in"
+# bindsym $mod+grave $ex "t s lunch; t in; t out -a '45 minutes from now'"
+
+
+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
+bindsym $mod+equal $ex "dunstctl close-all"