From bb3cc4a2acc58d2a240c86197e899b1364aa59e7 Mon Sep 17 00:00:00 2001 From: Derek Stevens Date: Wed, 17 Feb 2021 01:58:54 -0500 Subject: [PATCH] README.md, config.h: update documentation --- README.md | 14 ++++++++++---- config.h | 20 +++++++++++++++++++- 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index daf2d16..41ac82f 100755 --- a/README.md +++ b/README.md @@ -3,12 +3,12 @@ -- Derek Stevens 2019 -- ### About -Ryudo is a fork of Russ Cox's Rio, itself a fork of David Hogan's 9wm. +`ryudo` is a fork of Russ Cox's Rio, itself a fork of David Hogan's 9wm. The primary additions I've made are: -- URxvt is detected as a proper terminal program for sweeping out new windows -- URxvt is the default terminal emulator (still tries 9term and then xterm if no dice) -- Customizable colors, borders, fonts, and keybinds in config.h +- `urxvt` is detected as a proper terminal program for sweeping out new windows +- `urxvt` is the default terminal emulator (still tries `9term` and then `xterm` if no dice) +- Customizable colors, borders, fonts, and keybinds in `config.h` - Default keybindings: + New Terminal: Super+Slash + Destroy: Super+D @@ -17,6 +17,7 @@ The primary additions I've made are: + Maximize: Super+M + moVe: Super+V + Reshape: Super+R + + Stick: Super+S + Snap Left: Super+H + Snap Right: Super+L + Snap Top: Super+K @@ -28,6 +29,10 @@ The primary additions I've made are: + Snap Floating-Center: Super+C + Virtual Desk++: Super+Right + Virtual Desk--: Super+Left +- Other new features customizable by `config.h`: + + Show/hide 'Stick' Button3 menuitem + + `AUTOSTICK` list of windows to spawn sticky by default + + Optionally notify with `notify-send` which desktop is switched to (I use it with `dunst`) The name "Ryudo" is a nod to "Rio" and a Japanese word for "flow." Using Ryudo should feel very natural -- you can do things with keyboard or @@ -53,6 +58,7 @@ to point to the proper location of your plan9port's **mkwsysrules.sh**. Of the bugs and caveats not already mentioned in Rio's readme: - Rendering of windows with RGBA surfaces is bound to RGB space (xshove and transset can be leveraged to get transparent terminals if you want it) - Since maximization doesn't use the EWM Hint for maximization, programs like Firefox will remember their window size as the maximized size and probably start offset so they aren't completely onscreen. There is probably a rule we can put in newwindow() to mitigate this, but it's not super important. +- Sticky windows may show their borders with the active color regardless of their state. - Probably more! ### Legacy diff --git a/config.h b/config.h index 67c42d3..89bbddf 100755 --- a/config.h +++ b/config.h @@ -10,14 +10,22 @@ #define MENUFGCOL 0x797979 #define MENUBGCOL 0x000000 #define SMENUFGCOL 0x000000 -#define SMENUBGCOL 0x1f9b92 +#define SMENUBGCOL 0x1F9B92 +/* Show 'Stick' menuitem? */ //#define SHOWSTICK + +/* Notify on virtual desktop switch? */ #define VIRTNOTIFY +/* Modifier key and associated modifier bits; + * See xkb documentation for valid choices here + */ #define SHORTCUTMOD Mod4Mask #define MODBITS (1<<6) +/* Shortcut keys */ + #define MAX_KEY XK_m #define ICON_KEY XK_i #define UNHIDE_KEY XK_u @@ -43,11 +51,21 @@ #define LAUNCH_KEY XK_slash +/* List of window classes to spawn as sticky; + * Class values for currently open windows are conveniently shown in the last + * column of the 'xshove' command given with no arguments. + * Remember the backslash at the end of non-terminating lines! + */ + #define AUTOSTICK {\ "XOsview",\ 0\ } +/* List of fonts to try, in order, for rendering the menus. + * Remember the backslash at the end of non-terminating lines! + */ + #define FONTLIST {\ "*-lucidatypewriter-medium-*-12-*-75-*",\ "lucm.latin1.9",\