mouse-based window manager that can tile windows inside floating containers
https://seninha.org/projects/shod.html
- C 85.4%
- Roff 14.2%
- Makefile 0.4%
bar.c: • Unused .mon member removed; function monitor_delete() removed by consequence. • Function is_bar_at_mon(), now set_gaps(), rewritten with cleaner code. • Function monitor_reset() simplified. • Function managed() adapted to C23's unamed/unused parameter. dock.c: • File removed; it got unused since merged within dockapp.c. dockapp.c: • Only manage dock once; fix bug listing dock multiple times. |
||
|---|---|---|
| control | ||
| demos | ||
| examples | ||
| bar.c | ||
| color.c | ||
| color.h | ||
| container.c | ||
| dockapp.c | ||
| draw.c | ||
| LICENSE | ||
| Makefile | ||
| menu.c | ||
| notification.c | ||
| prompt.c | ||
| README | ||
| shod.1 | ||
| shod.c | ||
| shod.h | ||
| shodc.c | ||
| splash.c | ||
| TODO | ||
| util.c | ||
| util.h | ||
shod
<https://seninha.org/projects/shod.html>
┌───────────────────────┐
│ │
┌─────┼─────┬───────────┐ │
├─────┴─────┼───────────┤ │
┌─────┤ │ │ │
│ │ │ │ │
│ │ ├───┬───┬───┤ │
│ │ ├───┴───┴───┤ │
│ ├───────────┤ ├─────┘
│ ├───────────┤ │
│ └───────────┴─────┬─────┘
│ │
└───────────────────────┘
Shod is a mouse-based X11 window manager which can tile and tab windows
together into stacking containers. Shod is controlled by responding to
client messages sent by the `shodc` utility (shod's remote controller).
Shod does no keybinding by itself, and depends on programs like `sxhkd`
for that.
Application windows can be tiled and tabbed together into a meta-window
called “container”. Containers float around on the screen and stack on
top of each other just like in other stacking window managers.
To tile or tab windows together, drag-and-drop the titlebar of a window
into the border or titlebar of the other with the middle or right mouse
button.
Shod automatically tabs related windows together on the same container.
Supporting dialog windows, palettes, and tornoff menus are only visible
when their respective leader window is active, and are hidden otherwise
to not clutter the screen.
Shod has no desktop panel or bar; but it features a dock where dockapps
(small windows commonly used on other window managers like WindowMaker)
can be placed on. The dock does not appear unless a dockapp is opened.
Shod was influenced by the following programs and window managers. I'd
like to thank their authors for the work that helped me writing shod.
• notion: https://github.com/raboof/notion
• wmii: https://github.com/0intro/wmii
• acme: http://acme.cat-v.org/
shod was made after studying the code of the following window managers.
I'd like to thank their authors for the work, that helped me understand
how a X Window Manager works.
• dwm: https://dwm.suckless.org
• katriawm: https://www.uninformativ.de/git/katriawm/file/README.html
See <https://seninha.org/projects/shod.html> for screenshots.
Changelog:
• 2.6.2 (2023-04-24): Bugfixes (wait for children processes).
• 2.6.1 (2023-04-23): Bugfixes (dockupdate).
• 2.6.0 (2023-04-22): Added auto tabbing, resource reloading, shodc exit.
• 2.5.0 (2022-09-22): Added dockapp state, rio-like hiding, alttab, -d, -t.
• 2.4.0 (2022-02-11): Added window rules, dockapp ordering, -s, -m;
• 2.3.0 (2022-02-11): Added tornoff menu.
• 2.2.0 (2021-12-31): Added dock, -c, snapping, shading, transparency, etc.
• 2.1.4 (2021-09-28): Bugfixes (container placement, manual, shodc).
• 2.1.3 (2021-09-21): Bugfixes (set container properties).
• 2.1.2 (2021-09-20): Bugfixes (dialogs).
• 2.1.1 (2021-09-19): Bugfixes (focus, grabbing and tab attatching).
• 2.1.0 (2021-09-18): Added LICENSE.
• 2.0.0 (2021-09-18): First version with floating tiled containers
• 1.X.X (2020-??-??): First version, no floating tiled containers.