From: Ian Kelling Date: Wed, 17 Apr 2024 02:04:25 +0000 (-0400) Subject: minor fixes and improvements X-Git-Url: https://iankelling.org/git/?a=commitdiff_plain;h=12e4748d67a2891d120f0ce7c29c2cf44a6119df;p=distro-setup minor fixes and improvements --- diff --git a/brc2 b/brc2 index 551c974..a28d7b7 100644 --- a/brc2 +++ b/brc2 @@ -2562,7 +2562,10 @@ ilog-local() { cd $d$n/"$chan" hr for x in *; do - echo $x; sed "s/^./${x%log}/" $x; hr; + # *** are parts and joins and such, and they make reading hard. + # I probably will want to see them sometimes, just have to + # remove that part. + echo $x; sed "s/^./${x%log}/;/\*\*\*/d" $x; hr; done done } @@ -4507,7 +4510,7 @@ obs-gen-profiles() { # terminal clear. like clear, but put the prompt at the bottom, # useful for obs streaming the bottom half of a terminal window. tclear() { - for ((i=i; i/tmp/last-hc -mpv --profile=a $clip diff --git a/clip-sad b/clip-sad deleted file mode 100755 index 334a153..0000000 --- a/clip-sad +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# I, Ian Kelling, follow the GNU license recommendations at -# https://www.gnu.org/licenses/license-recommendations.en.html. They -# recommend that small programs, < 300 lines, be licensed under the -# Apache License 2.0. This file contains or is part of one or more small -# programs. If a small program grows beyond 300 lines, I plan to switch -# its license to GPL. - -# Copyright 2024 Ian Kelling - -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at - -# http://www.apache.org/licenses/LICENSE-2.0 - -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set -e; . /usr/local/lib/bash-bear; set +e -cd /a/bin/data/clips/sad - -if pgrep mpv; then - pkill mpv - exit 0 -fi - -clip=$(find . -type f -printf '%f\n' | \ - { if [[ -e /tmp/last-sad ]]; then - sed "/^$(cat /tmp/last-sad)\$/d" - else - cat - fi ; } | \ - shuf | head -n1) -echo $clip >/tmp/last-sad -mpv --profile=a $clip diff --git a/i3-split-maybe b/i3-split-maybe index a15b83f..69e42c5 100755 --- a/i3-split-maybe +++ b/i3-split-maybe @@ -72,6 +72,7 @@ fi if (( w < half_w && h < half_h )); then i3-msg "split vertical, layout tabbed" elif (( w == screen_width )); then + : # if we had 2 windows on screen, made them vertical splits, then # closed one, it stays vertical split, but we want it horizontal at # that point. So, make it horizontal here. diff --git a/i3-sway/common.conf b/i3-sway/common.conf index 6789229..8ad41a1 100644 --- a/i3-sway/common.conf +++ b/i3-sway/common.conf @@ -148,14 +148,14 @@ 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 clip-hc +bindsym $mod+shift+h $ex obs-clip hc bindsym $mod+j $ex "/b/ds/i3-split-maybe"; exec emacsclient -c -bindsym $mod+shift+j $ex clip-up +bindsym $mod+shift+j $ex obs-clip up bindsym $mod+k $ex "/b/ds/i3-split-maybe"; exec konsole -bindsym $mod+shift+k $ex mpv --profile=a /a/bin/data/clips/enter-in.flac +bindsym $mod+shift+k $ex obs-clip intro bindsym $mod+l $ex dmenu_run -bindsym $mod+shift+l $ex mpv --profile=a /a/bin/data/clips/tokyo-eye.flac -bindsym $mod+shift+semicolon $ex clip-sad +bindsym $mod+shift+l $ex obs-clip steady +bindsym $mod+shift+semicolon $ex obs-clip sad # note default is 27% on my system76. not sure if these # keybinds will screw up other laptop brightness keys. bindsym XF86MonBrightnessUp $ex brightnessctl s +5% diff --git a/clip-up b/obs-clip similarity index 53% rename from clip-up rename to obs-clip index 2a26e54..7d075a0 100755 --- a/clip-up +++ b/obs-clip @@ -21,26 +21,41 @@ # limitations under the License. set -e; . /usr/local/lib/bash-bear; set +e -cd /a/bin/data/clips/up + +type=$1 + +cd /a/bin/data/clips/$type if pgrep mpv; then pkill mpv exit 0 fi -if [[ ! -s /tmp/last-up ]]; then - find . -type f -printf '%f\n' | shuf > /tmp/last-up -fi -clip=$(head -n1 /tmp/last-up) -tail -n+2 /tmp/last-up | sponge /tmp/last-up - -# clip=$(ls -1 . | \ - # { if [[ -e /tmp/last-up ]]; then -# sed "/^$(cat /tmp/last-up)\$/d" -# else -# cat -# fi ; } | \ - # shuf | head -n1) -# echo $clip >/tmp/last-up - -mpv --profile=a $clip + +case $type in + up) + if [[ ! -s /tmp/last-up ]]; then + find . -type f -printf '%f\n' | shuf > /tmp/last-up + fi + clip=$(head -n1 /tmp/last-up) + tail -n+2 /tmp/last-up | sponge /tmp/last-up + ;; + *) + clip=$(find . -type f -printf '%f\n' | \ + { if [[ -e /tmp/last-$type ]]; then + sed "/^$(cat /tmp/last-$type)\$/d" + else + cat + fi ; } | \ + shuf | head -n1) + echo $clip >/tmp/last-$type + ;; +esac + +p=$(cat /p/obs-ws-pass) +# note, if the desktop audio is already on, this will do the wrong thing. +# obs-cmd needs more commands. But, I don't use desktop audio for anything +# else atm. +obs-cmd -w obsws://localhost:4455/$p toggle-mute 'Desktop Audio' +mpv --profile=a $clip ||: +obs-cmd -w obsws://localhost:4455/$p toggle-mute 'Desktop Audio'