Fix COMMANDS.md and bug_report.md linting errors

Co-authored-by: squassina <8495707+squassina@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot] 2026-02-18 10:17:34 +00:00
parent 9c8dad29ae
commit 91f2cfdd08
4 changed files with 307 additions and 18 deletions

View file

@ -1,11 +1,11 @@
# Mango Wayland Compositor
<div>
<img src="https://github.com/DreamMaoMao/mangowc/blob/main/assets/mango-transparency-256.png" alt="MangoWC Logo" width="120"/>
</div>
This project's development is based on [dwl](https://codeberg.org/dwl/dwl/).
1. **Lightweight & Fast Build**
- _Mango_ is as lightweight as _dwl_, and can be built completely within a few seconds. Despite this, _Mango_ does not compromise on functionality.
@ -25,7 +25,7 @@ This project's development is based on [dwl](https://codeberg.org/dwl/dwl/).
- Window effects from scenefx (blur, shadow, corner radius, opacity)
- Zero flickering - every frame is perfect.
https://github.com/user-attachments/assets/bb83004a-0563-4b48-ad89-6461a9b78b1f
<https://github.com/user-attachments/assets/bb83004a-0563-4b48-ad89-6461a9b78b1f>
# Quick Start Guide
@ -36,6 +36,7 @@ MangoWC is a **Wayland compositor** - a program that manages windows and display
## First Steps After Installation
1. **Copy the default configuration:**
```bash
mkdir -p ~/.config/mango
cp /usr/share/mango/config.conf ~/.config/mango/config.conf
@ -53,6 +54,7 @@ MangoWC is a **Wayland compositor** - a program that manages windows and display
- `Super + R` - Reload configuration (after making changes)
4. **Create an autostart script** (optional):
```bash
# Create ~/.config/mango/autostart.sh
#!/bin/bash
@ -66,6 +68,7 @@ MangoWC is a **Wayland compositor** - a program that manages windows and display
# Start notification daemon
swaync &
```
Make it executable: `chmod +x ~/.config/mango/autostart.sh`
## Key Concepts
@ -80,6 +83,7 @@ Unlike traditional workspaces, **tags** are more flexible:
Think of tags as labels you can attach to windows. You can view windows with tag 1, or tag 2, or both tags 1 and 2 simultaneously.
**Default behavior:**
- `Ctrl + 1-9` - View tag 1-9
- `Alt + 1-9` - Move current window to tag 1-9
- Each tag can have its own layout (tile, scroller, grid, etc.)
@ -101,6 +105,7 @@ MangoWC supports 9 different layouts:
| **vertical_grid** | Vertical grid arrangement | Vertical content |
**Switch layouts:**
- `Super + N` - Cycle through layouts for current tag
- Each tag can have its own default layout (set in `config.conf`)
@ -114,6 +119,7 @@ The **scratchpad** is a hidden workspace for temporary windows:
- Scratchpad windows float centered on screen
**Usage example:**
1. Open a terminal (`Alt + Return`)
2. Move it to scratchpad (`Alt + Z`)
3. It disappears
@ -161,18 +167,21 @@ Windows can have multiple states:
### Typical Workflow
1. **Open applications:**
```
Alt + Space → Application launcher
Alt + Return → Terminal
```
2. **Navigate windows:**
```
Alt + Arrow Keys → Focus window in direction
Super + Tab → Focus next window in stack
```
3. **Organize windows:**
```
Super + Shift + Arrows → Swap window positions
Alt + \ → Toggle floating
@ -180,12 +189,14 @@ Windows can have multiple states:
```
4. **Adjust layout:**
```
Super + N → Change layout
Alt + Shift + X/Z → Increase/decrease gaps
```
5. **Multi-monitor:**
```
Alt + Shift + Left/Right → Focus other monitor
Super + Alt + Left/Right → Move window to other monitor
@ -194,16 +205,19 @@ Windows can have multiple states:
### Common Use Cases
**Web browsing + Terminal:**
- Open browser on tag 1, terminal on tag 2
- Use `Ctrl + 1` and `Ctrl + 2` to switch between them
**Development workflow:**
- Tag 1: Code editor (center_tile layout)
- Tag 2: Browser (monocle layout)
- Tag 3: Terminals (tile or scroller layout)
- Scratchpad: Calculator, notes
**Keeping a window visible everywhere:**
- Open music player or chat app
- Press `Super + G` to make it global
- It now appears on all tags
@ -250,6 +264,7 @@ mmsg -d spawn firefox
### Scripting Examples
**Auto-save workspace state:**
```bash
#!/bin/bash
# Save current tags to file
@ -257,6 +272,7 @@ mmsg -t > ~/mango-state.txt
```
**Tag-specific wallpapers:**
```bash
#!/bin/bash
# In a loop, change wallpaper based on active tag
@ -268,6 +284,7 @@ done
```
**Quick window layout toggle:**
```bash
#!/bin/bash
# Toggle between tile and monocle layouts
@ -284,18 +301,21 @@ fi
### MangoWC won't start
1. **Check dependencies:**
```bash
# Verify wlroots and scenefx are installed
pkg-config --modversion wlroots scenefx
```
2. **Check logs:**
```bash
# Run from terminal to see error messages
mango
```
3. **XWayland issues:**
```bash
# If X11 apps won't start, rebuild with XWayland
meson configure build -Dxwayland=enabled
@ -311,6 +331,7 @@ fi
### Keybindings not working
1. **Find correct key name:**
```bash
# Install wev to see key names
wev
@ -324,12 +345,14 @@ fi
### Applications not starting
1. **Missing required tools:**
```bash
# Install suggested applications
sudo pacman -S rofi foot waybar swaybg
```
2. **Check autostart script:**
```bash
# Test autostart manually
bash ~/.config/mango/autostart.sh
@ -338,6 +361,7 @@ fi
### Performance issues
1. **Disable effects:**
```conf
# In config.conf
animations=0
@ -346,6 +370,7 @@ fi
```
2. **Check GPU drivers:**
```bash
# Ensure proper graphics drivers are installed
glxinfo | grep "OpenGL"
@ -354,6 +379,7 @@ fi
### Screen sharing not working
Install portal packages:
```bash
sudo pacman -S xdg-desktop-portal xdg-desktop-portal-wlr
```
@ -366,6 +392,7 @@ sudo pacman -S xdg-desktop-portal xdg-desktop-portal-wlr
- **Issues**: [GitHub Issues](https://github.com/DreamMaoMao/mangowc/issues)
# Our discord
[mangowc](https://discord.gg/CPjbDxesh5)
---
@ -393,13 +420,16 @@ sudo pacman -S xdg-desktop-portal xdg-desktop-portal-wlr
- libxcb
## Arch Linux
The package is in the Arch User Repository and is available for manual download [here](https://aur.archlinux.org/packages/mangowc-git) or through a AUR helper like yay:
```bash
yay -S mangowc-git
```
## Gentoo Linux
The package is in the community-maintained repository called GURU.
First, add GURU repository:
@ -418,6 +448,7 @@ emerge --ask --verbose gui-wm/mangowc
```
## Fedora Linux
The package is in the third-party Terra repository.
First, add the [Terra Repository](https://terra.fyralabs.com/).
@ -428,6 +459,7 @@ dnf install mangowc
```
## GuixSD
The package definition is described in the source repository.
First, add `mangowc` channel to `channels.scm` file:
@ -477,9 +509,11 @@ sudo ninja -C build install
## Suggested Tools
### Hybrid component
- [dms-shell](https://github.com/AvengeMedia/DankMaterialShell)
### Independent component
- Application launcher (rofi, bemenu, wmenu, fuzzel)
- Terminal emulator (foot, wezterm, alacritty, kitty, ghostty)
- Status bar (waybar, eww, quickshell, ags), waybar is preferred
@ -570,6 +604,7 @@ sudo ninja -C build install
## My Dotfiles
### Daily
- Dependencies
```bash
@ -577,23 +612,26 @@ yay -S rofi foot xdg-desktop-portal-wlr swaybg waybar wl-clip-persist cliphist w
```
### Dms
- Dependencies
```bash
yay -S foot xdg-desktop-portal-wlr swaybg wl-clip-persist cliphist wl-clipboard sway-audio-idle-inhibit-git brightnessctl grim slurp satty matugen-bin dms-shell-git
```
- use my dms config
```bash
git clone -b dms https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
```
- use my daily config
```bash
git clone https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
```
## Documentation
MangoWC comes with comprehensive documentation to help you get started and master the compositor:
@ -727,24 +765,23 @@ Read The Friendly Manual on packaging software in your distribution first.
# Thanks to These Reference Repositories
- https://gitlab.freedesktop.org/wlroots/wlroots - Implementation of Wayland protocol
- <https://gitlab.freedesktop.org/wlroots/wlroots> - Implementation of Wayland protocol
- https://github.com/dqrk0jeste/owl - Basal window animation
- <https://github.com/dqrk0jeste/owl> - Basal window animation
- https://codeberg.org/dwl/dwl - Basal dwl feature
- <https://codeberg.org/dwl/dwl> - Basal dwl feature
- https://github.com/swaywm/sway - Sample of Wayland protocol
- https://github.com/wlrfx/scenefx - Make it simple to add window effect.
- <https://github.com/swaywm/sway> - Sample of Wayland protocol
- <https://github.com/wlrfx/scenefx> - Make it simple to add window effect.
# Sponsor
At present, I can only accept sponsorship through an encrypted connection.
If you find this project helpful to you, you can offer sponsorship in the following ways.
<img width="650" height="870" alt="image" src="https://github.com/user-attachments/assets/8c860317-90d2-4071-971d-f1a92b674469" />
Thanks to the following friends for their sponsorship of this project
[@tonybanters](https://github.com/tonybanters)