From 296b743db3dd2271510efce777363bd81b575ea7 Mon Sep 17 00:00:00 2001 From: Derek Stevens Date: Sat, 19 Jun 2021 19:13:21 -0600 Subject: [PATCH] update docs again, include transsetter.sh --- ryudo.1 | 18 ++++++++++++++++++ ryudo.1.html | 19 +++++++++++++++++-- ryudo.1.md | 14 ++++++++++++++ transsetter.sh | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 100 insertions(+), 2 deletions(-) create mode 100755 transsetter.sh diff --git a/ryudo.1 b/ryudo.1 index a2b3584..f473c85 100644 --- a/ryudo.1 +++ b/ryudo.1 @@ -139,6 +139,24 @@ The following operations are bindable to key combinations (shown are the default . .IP "" 0 . +.SH "BUGS AND CAVEATS" +Multimonitor output is not currently supported \-\- the whole "screen" (collection of active monitors) is treated as one monitor, and keybinds and automatic window placement will not work properly\. +. +.P +Click events don\'t pass through when clicking to activate a window\. +. +.P +Clicking mouse button 3 on an inactive window brings up the Button 3 Menu instead of focusing the window\. I personally sometimes find this behavior useful\. +. +.P +Programs that expect to run fullscreen will probably just open in a window the size of whatever resolution they expect to run at\. Depending on the implementation, they may respond well to being maximized or you may have to change your screen resolution manually before doing so\. +. +.P +Fullscreen Virtualbox VM windows are a strange outlier and start with their graphics offset\. Maximize the window after opening and it should be good\. +. +.P +There is no native support for compositing, but included is a shell script (\fBtranssetter\.sh\fR) which I use for translucent terminal and editor windows\. It works well and is decently lightweight\. +. .SH "AUTHORS" . .IP "\(bu" 4 diff --git a/ryudo.1.html b/ryudo.1.html index b6e3fa5..d414e30 100644 --- a/ryudo.1.html +++ b/ryudo.1.html @@ -59,6 +59,7 @@ CONFIGURATION BUILDING AND INSTALLATION USAGE + BUGS AND CAVEATS AUTHORS SEE ALSO @@ -153,11 +154,25 @@ +

BUGS AND CAVEATS

+ +

Multimonitor output is not currently supported -- the whole "screen" (collection of active monitors) is treated as one monitor, and keybinds and automatic window placement will not work properly.

+ +

Click events don't pass through when clicking to activate a window.

+ +

Clicking mouse button 3 on an inactive window brings up the Button 3 Menu instead of focusing the window. I personally sometimes find this behavior useful.

+ +

Programs that expect to run fullscreen will probably just open in a window the size of whatever resolution they expect to run at. Depending on the implementation, they may respond well to being maximized or you may have to change your screen resolution manually before doing so.

+ +

Fullscreen Virtualbox VM windows are a strange outlier and start with their graphics offset. Maximize the window after opening and it should be good.

+ +

There is no native support for compositing, but included is a shell script (transsetter.sh) which I use for translucent terminal and editor windows. It works well and is decently lightweight.

+

AUTHORS

diff --git a/ryudo.1.md b/ryudo.1.md index 8ef453b..b360152 100644 --- a/ryudo.1.md +++ b/ryudo.1.md @@ -74,6 +74,20 @@ The following operations are bindable to key combinations (shown are the default - `Center` (Super + C): Center the currently active window (primary geometry preference). - `Center/Alternate` (Super + Shift + C): Center the currently active window (alternate geometry preference). +## BUGS AND CAVEATS + +Multimonitor output is not currently supported -- the whole "screen" (collection of active monitors) is treated as one monitor, and keybinds and automatic window placement will not work properly. + +Click events don't pass through when clicking to activate a window. + +Clicking mouse button 3 on an inactive window brings up the Button 3 Menu instead of focusing the window. I personally sometimes find this behavior useful. + +Programs that expect to run fullscreen will probably just open in a window the size of whatever resolution they expect to run at. Depending on the implementation, they may respond well to being maximized or you may have to change your screen resolution manually before doing so. + +Fullscreen Virtualbox VM windows are a strange outlier and start with their graphics offset. Maximize the window after opening and it should be good. + +There is no native support for compositing, but included is a shell script (`transsetter.sh`) which I use for translucent terminal and editor windows. It works well and is decently lightweight. + ## AUTHORS - Derek Stevens diff --git a/transsetter.sh b/transsetter.sh new file mode 100755 index 0000000..ce50051 --- /dev/null +++ b/transsetter.sh @@ -0,0 +1,51 @@ +#!/bin/sh + +# A background script to provide terminal/editor compositing in a Ryudo +# session. +# Licensed under the MIT License -- do what you want with it. +# Copyleft 2021 Derek Stevens + +termprog=Alacritty +geditor=acme +opacity=0.85 + +setter=$(which transset) +if [ -z "$setter" ]; then + setter=$(which transset-df) +fi + +if [ -z "$setter" ]; then + echo "we need transset or transset-df in PATH!" + exit 1 +fi + +#if which xcompmgr > /dev/null; then +# xcompmgr -n& +#else +# ehco "we need xcompmgr in PATH!" +# exit 1 +#fi + +if ! which xshove > /dev/null; then + echo "we need xshove in PATH!" + exit 1 +fi + +wlist=$(mktemp) +oldwlist=$(mktemp) +while true; do + xshove > $wlist + while read wprop; do + wid=$(echo ${wprop} | awk '{print $1}') + if ! grep $wid $oldwlist > /dev/null; then + wclass=$(echo ${wprop} | awk '{print $3}') + if [ "$wclass" = "${geditor}" ]; then + $setter -i 0x$wid ${opacity} > /dev/null + elif [ "${wclass}" = "${termprog}" ]; then + $setter -i 0x$wid ${opacity} > /dev/null + fi + fi + done < $wlist + cat $wlist > $oldwlist; + sleep 0.2 +done