GithubHelp home page GithubHelp logo

banchouboo / shod Goto Github PK

View Code? Open in Web Editor NEW

This project forked from phillbush/shod

0.0 0.0 0.0 3.93 MB

mouse-based window manager that can tile windows inside floating containers

License: MIT License

C 89.32% Makefile 0.61% Roff 10.07%

shod's Introduction

                                  shod

                             ┌───────────────────────┐
                             │                       │
                       ┌─────┼─────┬───────────┐     │
                       ├─────┴─────┼───────────┤     │
                 ┌─────┤           │           │     │
                 │     │           │           │     │
                 │     │           ├───┬───┬───┤     │
                 │     │           ├───┴───┴───┤     │
                 │     │           │           ├─────┘
                 │     │           │           │
                 │     └───────────┴─────┬─────┘
                 │                       │
                 └───────────────────────┘

shod is a mouse-based X11 window manager which can tile and tab windows
inside floating containers. To tile windows, drag-and-drop the titlebar
of one window into the border of the other with the right mouse button.
The entire grid of tiles is called “container”, and it can float around
on the screen.

shod automatically tabs related windows together on the same container.
Dialogs and tornoff menus are only visible when their parent window is
active, and are hidden otherwise.

shod works via mouse (optionally with a given modifier, ALT by default)
and by responding to client messages sent by the shodc utility  (shod's
remote controller).  With the exception of the ALT-TAB combination (for
cycling windows) shod does no keybinding by itself, and relies on other
applications (such as sxhkd) for that.

shod displays for each container titlebars with two buttons.  The right
button closes the active window.  The left button calls a command named
shodmenu.  This command is not provided with shod, it should be created
by the user; as, for example, a xmenu script to control the window.

shod has no default bar.  However shod has 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 can be customized by setting X resources.

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

Screenshots:
See the images in the demos/ directory.

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.

shod's People

Contributors

apprehensions avatar banchouboo avatar phillbush avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.