chore: format README.md

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

View file

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