chore: format README.md

This commit is contained in:
EdenQwQ 2025-03-24 12:34:17 +08:00
parent 21056746bf
commit aeffd46b64

112
README.md
View file

@ -1,21 +1,13 @@
#
#
Master-Stack Layout
https://github.com/user-attachments/assets/a9d4776e-b50b-48fb-94ce-651d8a749b8a
Scroller Layout
https://github.com/user-attachments/assets/c9bf9415-fad1-4400-bcdc-3ad2d76de85a
# Maomaowm
This project is developed based on [dwl](https://codeberg.org/dwl/dwl/),
@ -25,7 +17,9 @@ In addition, it is added many operation that supported in `hyprland`, such as `s
See below for more features.
# separate window layout for each workspace(tags), with separate workspace parameters
## support layout
- tile
- scroller
- monocle
@ -34,24 +28,27 @@ See below for more features.
- spiral
# window open rules
## options
- appid: type-string if match it or title, the rule match
- title: type-string if match it or appid, the rule match
- appid: type-string if match it or title, the rule match
- title: type-string if match it or appid, the rule match
- tags: type-num(1-9) which tags to open the window
- isfloating: type-num(0 or 1)
- isfloating: type-num(0 or 1)
- isfullscreen: type-num(0 or 1)
- scroller_proportion: type-float(0.1-1.0)
- animation_type_open : type-string(zoom,slide)
- animation_type_close : type-string(zoom,slide)
- isnoborder : type-num(0 or 1)
- monitor : type-num(0-99999)
- monitor : type-num(0-99999)
- width : type-num(0-9999)
- height : type-num(0-9999)
- isterm : type-num(0 or 1) it will be swallowed by the sub window
- isterm : type-num(0 or 1) it will be swallowed by the sub window
- noswallow: type-num(0 or 1) don't swallow the isterm window
- globalkeybinding: type-string(for example-- alt-l or alt+super-l)
# some special feature
- hycov like overview
- foreign-toplevel protocol(dunst,waybar wlr taskbar)
- minimize window to waybar(like hych)
@ -65,19 +62,26 @@ See below for more features.
- niri like scroller layout
# install
## depend
```bash
yay -S glibc wayland libinput libdrm pixman libxkbcommon git meson ninja wayland-protocols
```
## stable - wlroots(0.17)
Since 0.18 has some bugs that affect the experience,
Since 0.18 has some bugs that affect the experience,
I chose the more stable 0.17.4.
- Arch
```
yay -S maomaowm-git
```
- Other
```
git clone -b 0.17.4 https://gitlab.freedesktop.org/wlroots/wlroots.git
cd wlroots
@ -90,7 +94,9 @@ meson build -Dprefix=/usr
sudo ninja -C build install
```
## unstable wlroots(0.19)
This is the latest version of wlroots, it doesn't own enough test.
you can try it out if you want to help to test.
@ -103,17 +109,20 @@ sudo ninja -C build install
```
## suggest tools
```
yay -S rofi foot xdg-desktop-portal-wlr swaybg waybar wl-clip-persist cliphist wl-clipboard wlsunset
```
# config
```
cp /etc/maomao/config.conf ~/.config/maomao/config.conf
touch ~/.config/maomao/autostart.sh
chmod +x ~/.config/maomao/autostart.sh
```
you can use `MAOMAOCONFIG` env to set the config-folder-path and the autostart-folder-patch
like `MAOMAOCONFIG=/home/xxx/maomao`
@ -132,11 +141,13 @@ All mod keys(alt,ctrl,shift,super) are case insensitive, in addition to other ke
for example:
### this is wrong:
```
bind=alt+shift,2,quit
```
### this is right:
```
bind=alt+shift,at,quit
```
@ -144,42 +155,44 @@ bind=alt+shift,at,quit
because your keybinds contain shift, the `2` cover to `at`
![swappy-20250227-182157](https://github.com/user-attachments/assets/c4bca146-d1d7-42b1-aea5-a7e7e19e874b)
# custom animation
```
animation_curve_open=0.46,1.0,0.29,1.1
animation_curve_move=0.46,1.0,0.29,1
animation_curve_move=0.46,1.0,0.29,1
animation_curve_tag=0.46,1.0,0.29,1
animation_curve_close=0.46,1.0,0.29,1
```
You can design your animaition curve in:
[here, on cssportal.com](https://www.cssportal.com/css-cubic-bezier-generator/),
or you can just choice a curve in:
[easings.net](https://easings.net).
# overview mode
```
hotarea_size=10
enable_hotarea=1
ov_tab_mode=0
```
- enable_hotarea: when your cursor enter the bottom left corner of monitor, it will toggle overview.
- hotarea_size: the size of hotarea, 10x10 default.
- ov_tab_mode:
- ov_tab_mode:
- it will circle switch focus when you toggle overview.
- and will leave ov mode when you release your mod key.
### notice
when you in ov mode, you can use right mouse button to close window, and left mouse button to jump to a window.
when you in ov mode, you can use right mouse button to close window, and left mouse button to jump to a window.
# About waybar
- you can also use the dwl moudle in waybar to show tags and window title
refer to waybar wiki: [dwl-module](https://github.com/Alexays/Waybar/wiki/Module:-Dwl)
refer to waybar wiki: [dwl-module](https://github.com/Alexays/Waybar/wiki/Module:-Dwl)
```json
"modules-left": ["dwl/tags","dwl/window"],
@ -190,47 +203,45 @@ refer to waybar wiki: [dwl-module](https://github.com/Alexays/Waybar/wiki/Module
```
```css
#tags{
background-color: transparent;
#tags {
background-color: transparent;
}
#tags button{
background-color: #fff ;
color: #a585cd ;
#tags button {
background-color: #fff;
color: #a585cd;
}
#tags button.occupied{
background-color: #fff ;
color: #cdc885 ;
#tags button.occupied {
background-color: #fff;
color: #cdc885;
}
#tags button.focused{
background-color: rgb(186, 142, 213);
color: #fff ;
#tags button.focused {
background-color: rgb(186, 142, 213);
color: #fff;
}
#tags button.urgent{
background: rgb(171, 101, 101);
color: #fff;
#tags button.urgent {
background: rgb(171, 101, 101);
color: #fff;
}
#window{
background-color: rgb(237, 196, 147);
color: rgb(63, 37, 5);
#window {
background-color: rgb(237, 196, 147);
color: rgb(63, 37, 5);
}
window#waybar.empty #window {
background-color: transparent;
color: transparent;
border-bottom:none;
box-shadow: none;
padding-right: 0px;
padding-left: 0px;
margin-left: 0px;
margin-right: 0px;
background-color: transparent;
color: transparent;
border-bottom: none;
box-shadow: none;
padding-right: 0px;
padding-left: 0px;
margin-left: 0px;
margin-right: 0px;
}
```
# ipc
@ -238,6 +249,7 @@ window#waybar.empty #window {
refer to [ipc](https://github.com/DreamMaoMao/mmsg)
# NixOS+Home-manager
```nix
{
inputs = {
@ -298,11 +310,11 @@ refer to [ipc](https://github.com/DreamMaoMao/mmsg)
}
```
# my dotfile
[maomao-config](https://github.com/DreamMaoMao/dotfile/tree/main/maomao)
# thanks for some refer repo
# thanks for some refer repo
- https://gitlab.freedesktop.org/wlroots/wlroots - implementation of wayland protocol