forked from river/tinyrwm
Tiny river window manager examples
- Rust 35.6%
- C 30.8%
- Go 17.1%
- Janet 15.5%
- Meson 1%
|
ricmaps
e00fc2972f
rust: don't pass format strings to expect()
Several 'expect' calls pass format strings directly, even though 'expect' only accepts a &str and does not perform formatting. Co-authored-by: ricmaps <ricardomapurungajunior@gmail.com> Co-committed-by: ricmaps <ricardomapurungajunior@gmail.com> |
||
|---|---|---|
| .builds | ci: build rust implementation | |
| c | c: send river_window_v1.inform_resize_start | |
| go | go: format | |
| janet | janet: improve janet-pm installation instructions | |
| LICENSES | docs: follow REUSE spec | |
| rust | rust: don't pass format strings to expect() | |
| README.md | docs: improve tinyrwm specification | |
tinyrwm
A tiny river window manager, implemented in various languages.
This project aims to help people quickly get started with their own river window manager by following an example in their language of choice.
Contributions adding examples in new languages are very welcome!
All tinyrwm implementations should:
- Implement the same tiny feature set
- Be written in the style most idiomatic to their language
- Use the standard build/packaging approach for the given language ecosystem
- Be released under the Zero-Clause BSD license
Happy hacking!
Tiny feature set
Keyboard bindings:
Super+Space: Spawn the foot terminalSuper+q: Close the focused windowSuper+n: Cycle keyboard focus through windowsSuper+Escape: Exit the Wayland session
Pointer bindings:
Super+Left Click: Interactive moveSuper+Right Click: Interactive resize
Additionally, clicking on a window must give the window keyboard focus and raise it above all other windows.
This is not a formal specification, tinyrwm.c is the canonical implementation and its behavior should be matched where this specification is unclear/insufficient.