mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2026-05-02 06:46:29 -04:00
Fix COMMANDS.md and bug_report.md linting errors
Co-authored-by: squassina <8495707+squassina@users.noreply.github.com>
This commit is contained in:
parent
9c8dad29ae
commit
91f2cfdd08
4 changed files with 307 additions and 18 deletions
6
.github/ISSUE_TEMPLATE/bug_report.md
vendored
6
.github/ISSUE_TEMPLATE/bug_report.md
vendored
|
|
@ -18,11 +18,15 @@ mango version:
|
||||||
wlroots version:
|
wlroots version:
|
||||||
|
|
||||||
## Crash track
|
## Crash track
|
||||||
|
|
||||||
1.you need to build mango by enable asan flag.
|
1.you need to build mango by enable asan flag.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
meson build -Dprefix=/usr -Dasan=true
|
meson build -Dprefix=/usr -Dasan=true
|
||||||
``
|
```
|
||||||
|
|
||||||
2.run mango in tty.
|
2.run mango in tty.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
export ASAN_OPTIONS="detect_leaks=1:halt_on_error=0:log_path=/home/xxx/asan.log"
|
export ASAN_OPTIONS="detect_leaks=1:halt_on_error=0:log_path=/home/xxx/asan.log"
|
||||||
mango
|
mango
|
||||||
|
|
|
||||||
181
COMMANDS.md
181
COMMANDS.md
File diff suppressed because it is too large
Load diff
57
README.md
57
README.md
|
|
@ -1,11 +1,11 @@
|
||||||
# Mango Wayland Compositor
|
# Mango Wayland Compositor
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<img src="https://github.com/DreamMaoMao/mangowc/blob/main/assets/mango-transparency-256.png" alt="MangoWC Logo" width="120"/>
|
<img src="https://github.com/DreamMaoMao/mangowc/blob/main/assets/mango-transparency-256.png" alt="MangoWC Logo" width="120"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
This project's development is based on [dwl](https://codeberg.org/dwl/dwl/).
|
This project's development is based on [dwl](https://codeberg.org/dwl/dwl/).
|
||||||
|
|
||||||
|
|
||||||
1. **Lightweight & Fast Build**
|
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.
|
- _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)
|
- Window effects from scenefx (blur, shadow, corner radius, opacity)
|
||||||
- Zero flickering - every frame is perfect.
|
- 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
|
# Quick Start Guide
|
||||||
|
|
||||||
|
|
@ -36,6 +36,7 @@ MangoWC is a **Wayland compositor** - a program that manages windows and display
|
||||||
## First Steps After Installation
|
## First Steps After Installation
|
||||||
|
|
||||||
1. **Copy the default configuration:**
|
1. **Copy the default configuration:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mkdir -p ~/.config/mango
|
mkdir -p ~/.config/mango
|
||||||
cp /usr/share/mango/config.conf ~/.config/mango/config.conf
|
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)
|
- `Super + R` - Reload configuration (after making changes)
|
||||||
|
|
||||||
4. **Create an autostart script** (optional):
|
4. **Create an autostart script** (optional):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Create ~/.config/mango/autostart.sh
|
# Create ~/.config/mango/autostart.sh
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
@ -66,6 +68,7 @@ MangoWC is a **Wayland compositor** - a program that manages windows and display
|
||||||
# Start notification daemon
|
# Start notification daemon
|
||||||
swaync &
|
swaync &
|
||||||
```
|
```
|
||||||
|
|
||||||
Make it executable: `chmod +x ~/.config/mango/autostart.sh`
|
Make it executable: `chmod +x ~/.config/mango/autostart.sh`
|
||||||
|
|
||||||
## Key Concepts
|
## 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.
|
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:**
|
**Default behavior:**
|
||||||
|
|
||||||
- `Ctrl + 1-9` - View tag 1-9
|
- `Ctrl + 1-9` - View tag 1-9
|
||||||
- `Alt + 1-9` - Move current window to tag 1-9
|
- `Alt + 1-9` - Move current window to tag 1-9
|
||||||
- Each tag can have its own layout (tile, scroller, grid, etc.)
|
- 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 |
|
| **vertical_grid** | Vertical grid arrangement | Vertical content |
|
||||||
|
|
||||||
**Switch layouts:**
|
**Switch layouts:**
|
||||||
|
|
||||||
- `Super + N` - Cycle through layouts for current tag
|
- `Super + N` - Cycle through layouts for current tag
|
||||||
- Each tag can have its own default layout (set in `config.conf`)
|
- 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
|
- Scratchpad windows float centered on screen
|
||||||
|
|
||||||
**Usage example:**
|
**Usage example:**
|
||||||
|
|
||||||
1. Open a terminal (`Alt + Return`)
|
1. Open a terminal (`Alt + Return`)
|
||||||
2. Move it to scratchpad (`Alt + Z`)
|
2. Move it to scratchpad (`Alt + Z`)
|
||||||
3. It disappears
|
3. It disappears
|
||||||
|
|
@ -161,18 +167,21 @@ Windows can have multiple states:
|
||||||
### Typical Workflow
|
### Typical Workflow
|
||||||
|
|
||||||
1. **Open applications:**
|
1. **Open applications:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Space → Application launcher
|
Alt + Space → Application launcher
|
||||||
Alt + Return → Terminal
|
Alt + Return → Terminal
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Navigate windows:**
|
2. **Navigate windows:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Arrow Keys → Focus window in direction
|
Alt + Arrow Keys → Focus window in direction
|
||||||
Super + Tab → Focus next window in stack
|
Super + Tab → Focus next window in stack
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **Organize windows:**
|
3. **Organize windows:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Shift + Arrows → Swap window positions
|
Super + Shift + Arrows → Swap window positions
|
||||||
Alt + \ → Toggle floating
|
Alt + \ → Toggle floating
|
||||||
|
|
@ -180,12 +189,14 @@ Windows can have multiple states:
|
||||||
```
|
```
|
||||||
|
|
||||||
4. **Adjust layout:**
|
4. **Adjust layout:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + N → Change layout
|
Super + N → Change layout
|
||||||
Alt + Shift + X/Z → Increase/decrease gaps
|
Alt + Shift + X/Z → Increase/decrease gaps
|
||||||
```
|
```
|
||||||
|
|
||||||
5. **Multi-monitor:**
|
5. **Multi-monitor:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Shift + Left/Right → Focus other monitor
|
Alt + Shift + Left/Right → Focus other monitor
|
||||||
Super + Alt + Left/Right → Move window to other monitor
|
Super + Alt + Left/Right → Move window to other monitor
|
||||||
|
|
@ -194,16 +205,19 @@ Windows can have multiple states:
|
||||||
### Common Use Cases
|
### Common Use Cases
|
||||||
|
|
||||||
**Web browsing + Terminal:**
|
**Web browsing + Terminal:**
|
||||||
|
|
||||||
- Open browser on tag 1, terminal on tag 2
|
- Open browser on tag 1, terminal on tag 2
|
||||||
- Use `Ctrl + 1` and `Ctrl + 2` to switch between them
|
- Use `Ctrl + 1` and `Ctrl + 2` to switch between them
|
||||||
|
|
||||||
**Development workflow:**
|
**Development workflow:**
|
||||||
|
|
||||||
- Tag 1: Code editor (center_tile layout)
|
- Tag 1: Code editor (center_tile layout)
|
||||||
- Tag 2: Browser (monocle layout)
|
- Tag 2: Browser (monocle layout)
|
||||||
- Tag 3: Terminals (tile or scroller layout)
|
- Tag 3: Terminals (tile or scroller layout)
|
||||||
- Scratchpad: Calculator, notes
|
- Scratchpad: Calculator, notes
|
||||||
|
|
||||||
**Keeping a window visible everywhere:**
|
**Keeping a window visible everywhere:**
|
||||||
|
|
||||||
- Open music player or chat app
|
- Open music player or chat app
|
||||||
- Press `Super + G` to make it global
|
- Press `Super + G` to make it global
|
||||||
- It now appears on all tags
|
- It now appears on all tags
|
||||||
|
|
@ -250,6 +264,7 @@ mmsg -d spawn firefox
|
||||||
### Scripting Examples
|
### Scripting Examples
|
||||||
|
|
||||||
**Auto-save workspace state:**
|
**Auto-save workspace state:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Save current tags to file
|
# Save current tags to file
|
||||||
|
|
@ -257,6 +272,7 @@ mmsg -t > ~/mango-state.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
**Tag-specific wallpapers:**
|
**Tag-specific wallpapers:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# In a loop, change wallpaper based on active tag
|
# In a loop, change wallpaper based on active tag
|
||||||
|
|
@ -268,6 +284,7 @@ done
|
||||||
```
|
```
|
||||||
|
|
||||||
**Quick window layout toggle:**
|
**Quick window layout toggle:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Toggle between tile and monocle layouts
|
# Toggle between tile and monocle layouts
|
||||||
|
|
@ -284,18 +301,21 @@ fi
|
||||||
### MangoWC won't start
|
### MangoWC won't start
|
||||||
|
|
||||||
1. **Check dependencies:**
|
1. **Check dependencies:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Verify wlroots and scenefx are installed
|
# Verify wlroots and scenefx are installed
|
||||||
pkg-config --modversion wlroots scenefx
|
pkg-config --modversion wlroots scenefx
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Check logs:**
|
2. **Check logs:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Run from terminal to see error messages
|
# Run from terminal to see error messages
|
||||||
mango
|
mango
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **XWayland issues:**
|
3. **XWayland issues:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# If X11 apps won't start, rebuild with XWayland
|
# If X11 apps won't start, rebuild with XWayland
|
||||||
meson configure build -Dxwayland=enabled
|
meson configure build -Dxwayland=enabled
|
||||||
|
|
@ -311,6 +331,7 @@ fi
|
||||||
### Keybindings not working
|
### Keybindings not working
|
||||||
|
|
||||||
1. **Find correct key name:**
|
1. **Find correct key name:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Install wev to see key names
|
# Install wev to see key names
|
||||||
wev
|
wev
|
||||||
|
|
@ -324,12 +345,14 @@ fi
|
||||||
### Applications not starting
|
### Applications not starting
|
||||||
|
|
||||||
1. **Missing required tools:**
|
1. **Missing required tools:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Install suggested applications
|
# Install suggested applications
|
||||||
sudo pacman -S rofi foot waybar swaybg
|
sudo pacman -S rofi foot waybar swaybg
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Check autostart script:**
|
2. **Check autostart script:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Test autostart manually
|
# Test autostart manually
|
||||||
bash ~/.config/mango/autostart.sh
|
bash ~/.config/mango/autostart.sh
|
||||||
|
|
@ -338,6 +361,7 @@ fi
|
||||||
### Performance issues
|
### Performance issues
|
||||||
|
|
||||||
1. **Disable effects:**
|
1. **Disable effects:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
# In config.conf
|
# In config.conf
|
||||||
animations=0
|
animations=0
|
||||||
|
|
@ -346,6 +370,7 @@ fi
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Check GPU drivers:**
|
2. **Check GPU drivers:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Ensure proper graphics drivers are installed
|
# Ensure proper graphics drivers are installed
|
||||||
glxinfo | grep "OpenGL"
|
glxinfo | grep "OpenGL"
|
||||||
|
|
@ -354,6 +379,7 @@ fi
|
||||||
### Screen sharing not working
|
### Screen sharing not working
|
||||||
|
|
||||||
Install portal packages:
|
Install portal packages:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo pacman -S xdg-desktop-portal xdg-desktop-portal-wlr
|
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)
|
- **Issues**: [GitHub Issues](https://github.com/DreamMaoMao/mangowc/issues)
|
||||||
|
|
||||||
# Our discord
|
# Our discord
|
||||||
|
|
||||||
[mangowc](https://discord.gg/CPjbDxesh5)
|
[mangowc](https://discord.gg/CPjbDxesh5)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -393,13 +420,16 @@ sudo pacman -S xdg-desktop-portal xdg-desktop-portal-wlr
|
||||||
- libxcb
|
- libxcb
|
||||||
|
|
||||||
## Arch Linux
|
## 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:
|
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
|
```bash
|
||||||
yay -S mangowc-git
|
yay -S mangowc-git
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Gentoo Linux
|
## Gentoo Linux
|
||||||
|
|
||||||
The package is in the community-maintained repository called GURU.
|
The package is in the community-maintained repository called GURU.
|
||||||
First, add GURU repository:
|
First, add GURU repository:
|
||||||
|
|
||||||
|
|
@ -418,6 +448,7 @@ emerge --ask --verbose gui-wm/mangowc
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fedora Linux
|
## Fedora Linux
|
||||||
|
|
||||||
The package is in the third-party Terra repository.
|
The package is in the third-party Terra repository.
|
||||||
First, add the [Terra Repository](https://terra.fyralabs.com/).
|
First, add the [Terra Repository](https://terra.fyralabs.com/).
|
||||||
|
|
||||||
|
|
@ -428,6 +459,7 @@ dnf install mangowc
|
||||||
```
|
```
|
||||||
|
|
||||||
## GuixSD
|
## GuixSD
|
||||||
|
|
||||||
The package definition is described in the source repository.
|
The package definition is described in the source repository.
|
||||||
First, add `mangowc` channel to `channels.scm` file:
|
First, add `mangowc` channel to `channels.scm` file:
|
||||||
|
|
||||||
|
|
@ -477,9 +509,11 @@ sudo ninja -C build install
|
||||||
## Suggested Tools
|
## Suggested Tools
|
||||||
|
|
||||||
### Hybrid component
|
### Hybrid component
|
||||||
|
|
||||||
- [dms-shell](https://github.com/AvengeMedia/DankMaterialShell)
|
- [dms-shell](https://github.com/AvengeMedia/DankMaterialShell)
|
||||||
|
|
||||||
### Independent component
|
### Independent component
|
||||||
|
|
||||||
- Application launcher (rofi, bemenu, wmenu, fuzzel)
|
- Application launcher (rofi, bemenu, wmenu, fuzzel)
|
||||||
- Terminal emulator (foot, wezterm, alacritty, kitty, ghostty)
|
- Terminal emulator (foot, wezterm, alacritty, kitty, ghostty)
|
||||||
- Status bar (waybar, eww, quickshell, ags), waybar is preferred
|
- Status bar (waybar, eww, quickshell, ags), waybar is preferred
|
||||||
|
|
@ -570,6 +604,7 @@ sudo ninja -C build install
|
||||||
## My Dotfiles
|
## My Dotfiles
|
||||||
|
|
||||||
### Daily
|
### Daily
|
||||||
|
|
||||||
- Dependencies
|
- Dependencies
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
@ -577,23 +612,26 @@ yay -S rofi foot xdg-desktop-portal-wlr swaybg waybar wl-clip-persist cliphist w
|
||||||
```
|
```
|
||||||
|
|
||||||
### Dms
|
### Dms
|
||||||
|
|
||||||
- Dependencies
|
- Dependencies
|
||||||
|
|
||||||
```bash
|
```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
|
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
|
- use my dms config
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone -b dms https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
|
git clone -b dms https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
|
||||||
```
|
```
|
||||||
|
|
||||||
- use my daily config
|
- use my daily config
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
|
git clone https://github.com/DreamMaoMao/mango-config.git ~/.config/mango
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
MangoWC comes with comprehensive documentation to help you get started and master the compositor:
|
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
|
# 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/swaywm/sway> - Sample of Wayland protocol
|
||||||
|
|
||||||
- https://github.com/wlrfx/scenefx - Make it simple to add window effect.
|
|
||||||
|
|
||||||
|
- <https://github.com/wlrfx/scenefx> - Make it simple to add window effect.
|
||||||
|
|
||||||
# Sponsor
|
# Sponsor
|
||||||
|
|
||||||
At present, I can only accept sponsorship through an encrypted connection.
|
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.
|
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" />
|
<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
|
Thanks to the following friends for their sponsorship of this project
|
||||||
|
|
||||||
[@tonybanters](https://github.com/tonybanters)
|
[@tonybanters](https://github.com/tonybanters)
|
||||||
|
|
|
||||||
77
USAGE.md
77
USAGE.md
|
|
@ -50,6 +50,7 @@ Super + M → Exit MangoWC
|
||||||
Tags are like workspaces, but more flexible. Think of them as labels you can apply to windows.
|
Tags are like workspaces, but more flexible. Think of them as labels you can apply to windows.
|
||||||
|
|
||||||
**Key differences from workspaces:**
|
**Key differences from workspaces:**
|
||||||
|
|
||||||
- A window can have multiple tags
|
- A window can have multiple tags
|
||||||
- You can view multiple tags at once
|
- You can view multiple tags at once
|
||||||
- Each tag can have its own layout
|
- Each tag can have its own layout
|
||||||
|
|
@ -57,6 +58,7 @@ Tags are like workspaces, but more flexible. Think of them as labels you can app
|
||||||
### Basic Tag Usage
|
### Basic Tag Usage
|
||||||
|
|
||||||
**Switch to a tag:**
|
**Switch to a tag:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Ctrl + 1 → View tag 1
|
Ctrl + 1 → View tag 1
|
||||||
Ctrl + 2 → View tag 2
|
Ctrl + 2 → View tag 2
|
||||||
|
|
@ -64,12 +66,14 @@ Ctrl + 2 → View tag 2
|
||||||
```
|
```
|
||||||
|
|
||||||
**Move window to a tag:**
|
**Move window to a tag:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + 1 → Move current window to tag 1 (and switch to it)
|
Alt + 1 → Move current window to tag 1 (and switch to it)
|
||||||
Alt + 2 → Move current window to tag 2 (and switch to it)
|
Alt + 2 → Move current window to tag 2 (and switch to it)
|
||||||
```
|
```
|
||||||
|
|
||||||
**Navigate through tags:**
|
**Navigate through tags:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Left/Right → Previous/next tag
|
Super + Left/Right → Previous/next tag
|
||||||
Ctrl + Left/Right → Previous/next tag that has windows
|
Ctrl + Left/Right → Previous/next tag that has windows
|
||||||
|
|
@ -78,11 +82,13 @@ Ctrl + Left/Right → Previous/next tag that has windows
|
||||||
### Advanced Tag Techniques
|
### Advanced Tag Techniques
|
||||||
|
|
||||||
**View multiple tags simultaneously:**
|
**View multiple tags simultaneously:**
|
||||||
|
|
||||||
1. Switch to tag 1: `Ctrl + 1`
|
1. Switch to tag 1: `Ctrl + 1`
|
||||||
2. Toggle tag 2 visibility: `Super + 2` (if configured)
|
2. Toggle tag 2 visibility: `Super + 2` (if configured)
|
||||||
3. Now you see windows from both tags
|
3. Now you see windows from both tags
|
||||||
|
|
||||||
**Silent tag movement** (move window without following):
|
**Silent tag movement** (move window without following):
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
# In config.conf
|
# In config.conf
|
||||||
bind=Alt+Shift,1,tagsilent,1
|
bind=Alt+Shift,1,tagsilent,1
|
||||||
|
|
@ -91,6 +97,7 @@ bind=Alt+Shift,1,tagsilent,1
|
||||||
### Organizing Your Workflow with Tags
|
### Organizing Your Workflow with Tags
|
||||||
|
|
||||||
**Example organization:**
|
**Example organization:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Browsers (monocle layout)
|
Tag 1: Browsers (monocle layout)
|
||||||
Tag 2: Code editors (tile or center_tile layout)
|
Tag 2: Code editors (tile or center_tile layout)
|
||||||
|
|
@ -101,6 +108,7 @@ Tag 6-9: Project-specific
|
||||||
```
|
```
|
||||||
|
|
||||||
**Setting layouts per tag in config.conf:**
|
**Setting layouts per tag in config.conf:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
tagrule=id:1,layout_name:monocle
|
tagrule=id:1,layout_name:monocle
|
||||||
tagrule=id:2,layout_name:center_tile
|
tagrule=id:2,layout_name:center_tile
|
||||||
|
|
@ -118,6 +126,7 @@ tagrule=id:5,layout_name:monocle
|
||||||
MangoWC includes 9 built-in layouts:
|
MangoWC includes 9 built-in layouts:
|
||||||
|
|
||||||
#### 1. Tile (Master-Stack)
|
#### 1. Tile (Master-Stack)
|
||||||
|
|
||||||
```
|
```
|
||||||
┌────────┬────┐
|
┌────────┬────┐
|
||||||
│ │ 1 │
|
│ │ 1 │
|
||||||
|
|
@ -125,23 +134,28 @@ MangoWC includes 9 built-in layouts:
|
||||||
│ │ 2 │
|
│ │ 2 │
|
||||||
└────────┴────┘
|
└────────┴────┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** General multitasking, coding with docs
|
**Best for:** General multitasking, coding with docs
|
||||||
**Switch to:** Cycle with `Super + N` (or add `bind=Super,t,setlayout,tile` to config)
|
**Switch to:** Cycle with `Super + N` (or add `bind=Super,t,setlayout,tile` to config)
|
||||||
|
|
||||||
#### 2. Scroller (Horizontal)
|
#### 2. Scroller (Horizontal)
|
||||||
|
|
||||||
```
|
```
|
||||||
┌───┬────┬───┬───┐
|
┌───┬────┬───┬───┐
|
||||||
│ 1 │ 2 │ 3 │ 4 │...
|
│ 1 │ 2 │ 3 │ 4 │...
|
||||||
└───┴────┴───┴───┘
|
└───┴────┴───┴───┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Terminals, wide content, many windows
|
**Best for:** Terminals, wide content, many windows
|
||||||
**Switch to:** Cycle with `Super + N` (or add `bind=Super,s,setlayout,scroller` to config)
|
**Switch to:** Cycle with `Super + N` (or add `bind=Super,s,setlayout,scroller` to config)
|
||||||
|
|
||||||
**Scroller-specific controls:**
|
**Scroller-specific controls:**
|
||||||
|
|
||||||
- `Alt + E` - Set current window to full width
|
- `Alt + E` - Set current window to full width
|
||||||
- `Alt + X` - Cycle through width presets (0.5, 0.8, 1.0)
|
- `Alt + X` - Cycle through width presets (0.5, 0.8, 1.0)
|
||||||
|
|
||||||
#### 3. Monocle (Fullscreen Stack)
|
#### 3. Monocle (Fullscreen Stack)
|
||||||
|
|
||||||
```
|
```
|
||||||
┌──────────────┐
|
┌──────────────┐
|
||||||
│ │
|
│ │
|
||||||
|
|
@ -149,11 +163,13 @@ MangoWC includes 9 built-in layouts:
|
||||||
│ (fullscrn) │
|
│ (fullscrn) │
|
||||||
└──────────────┘
|
└──────────────┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Focus work, browsing, media
|
**Best for:** Focus work, browsing, media
|
||||||
**Switch to:** Cycle with `Super + N`
|
**Switch to:** Cycle with `Super + N`
|
||||||
**Navigate:** Use `Super + Tab` to cycle through windows
|
**Navigate:** Use `Super + Tab` to cycle through windows
|
||||||
|
|
||||||
#### 4. Grid
|
#### 4. Grid
|
||||||
|
|
||||||
```
|
```
|
||||||
┌─────┬─────┐
|
┌─────┬─────┐
|
||||||
│ 1 │ 2 │
|
│ 1 │ 2 │
|
||||||
|
|
@ -161,20 +177,24 @@ MangoWC includes 9 built-in layouts:
|
||||||
│ 3 │ 4 │
|
│ 3 │ 4 │
|
||||||
└─────┴─────┘
|
└─────┴─────┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Viewing many windows simultaneously
|
**Best for:** Viewing many windows simultaneously
|
||||||
**Switch to:** Cycle with `Super + N`
|
**Switch to:** Cycle with `Super + N`
|
||||||
|
|
||||||
#### 5. Deck (Card Stack)
|
#### 5. Deck (Card Stack)
|
||||||
|
|
||||||
```
|
```
|
||||||
┌──────────────┐
|
┌──────────────┐
|
||||||
│ Window 1 │ ← Visible
|
│ Window 1 │ ← Visible
|
||||||
│ (2, 3 hidden)│
|
│ (2, 3 hidden)│
|
||||||
└──────────────┘
|
└──────────────┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Cycling through options
|
**Best for:** Cycling through options
|
||||||
**Switch to:** Cycle with `Super + N`
|
**Switch to:** Cycle with `Super + N`
|
||||||
|
|
||||||
#### 6. Center Tile
|
#### 6. Center Tile
|
||||||
|
|
||||||
```
|
```
|
||||||
┌──┬──────┬──┐
|
┌──┬──────┬──┐
|
||||||
│1 │ │2 │
|
│1 │ │2 │
|
||||||
|
|
@ -182,10 +202,12 @@ MangoWC includes 9 built-in layouts:
|
||||||
│3 │ │4 │
|
│3 │ │4 │
|
||||||
└──┴──────┴──┘
|
└──┴──────┴──┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Symmetrical workflow, coding
|
**Best for:** Symmetrical workflow, coding
|
||||||
**Switch to:** Cycle with `Super + N`
|
**Switch to:** Cycle with `Super + N`
|
||||||
|
|
||||||
#### 7. Vertical Tile
|
#### 7. Vertical Tile
|
||||||
|
|
||||||
```
|
```
|
||||||
┌──────────────┐
|
┌──────────────┐
|
||||||
│ Master │
|
│ Master │
|
||||||
|
|
@ -193,12 +215,14 @@ MangoWC includes 9 built-in layouts:
|
||||||
│1 │ 2 │ 3 │ 4 │
|
│1 │ 2 │ 3 │ 4 │
|
||||||
└──┴───┴───┴───┘
|
└──┴───┴───┴───┘
|
||||||
```
|
```
|
||||||
|
|
||||||
**Best for:** Ultra-wide monitors
|
**Best for:** Ultra-wide monitors
|
||||||
**Switch to:** Cycle with `Super + N`
|
**Switch to:** Cycle with `Super + N`
|
||||||
|
|
||||||
### Layout Controls
|
### Layout Controls
|
||||||
|
|
||||||
**Cycle through all layouts:**
|
**Cycle through all layouts:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + N → Next layout
|
Super + N → Next layout
|
||||||
```
|
```
|
||||||
|
|
@ -206,6 +230,7 @@ Super + N → Next layout
|
||||||
**Adjust layout parameters:**
|
**Adjust layout parameters:**
|
||||||
|
|
||||||
For **tile/center_tile** layouts:
|
For **tile/center_tile** layouts:
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + H → Decrease master size (add to config)
|
Super + H → Decrease master size (add to config)
|
||||||
Super + L → Increase master size (add to config)
|
Super + L → Increase master size (add to config)
|
||||||
|
|
@ -214,6 +239,7 @@ Super + Minus → Fewer windows in master (add to config)
|
||||||
```
|
```
|
||||||
|
|
||||||
Add to config.conf:
|
Add to config.conf:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Super,h,setmfact,-0.05
|
bind=Super,h,setmfact,-0.05
|
||||||
bind=Super,l,setmfact,+0.05
|
bind=Super,l,setmfact,+0.05
|
||||||
|
|
@ -222,6 +248,7 @@ bind=Super,minus,incnmaster,-1
|
||||||
```
|
```
|
||||||
|
|
||||||
For **scroller** layout:
|
For **scroller** layout:
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + E → Set window to full width
|
Alt + E → Set window to full width
|
||||||
Alt + X → Cycle width presets
|
Alt + X → Cycle width presets
|
||||||
|
|
@ -234,17 +261,20 @@ Alt + X → Cycle width presets
|
||||||
### Focus Management
|
### Focus Management
|
||||||
|
|
||||||
**Directional focus:**
|
**Directional focus:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + ←→↑↓ → Focus window in direction
|
Alt + ←→↑↓ → Focus window in direction
|
||||||
```
|
```
|
||||||
|
|
||||||
**Stack focus:**
|
**Stack focus:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Tab → Next window in stack
|
Super + Tab → Next window in stack
|
||||||
Super + Shift + Tab → Previous window in stack
|
Super + Shift + Tab → Previous window in stack
|
||||||
```
|
```
|
||||||
|
|
||||||
**Focus last window:**
|
**Focus last window:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + ` → Focus previously focused window (add to config)
|
Super + ` → Focus previously focused window (add to config)
|
||||||
```
|
```
|
||||||
|
|
@ -252,21 +282,25 @@ Super + ` → Focus previously focused window (add to config)
|
||||||
### Moving Windows
|
### Moving Windows
|
||||||
|
|
||||||
**Swap with neighbors:**
|
**Swap with neighbors:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Shift + ←→↑↓ → Swap positions
|
Super + Shift + ←→↑↓ → Swap positions
|
||||||
```
|
```
|
||||||
|
|
||||||
**Move to master:**
|
**Move to master:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Return → Move focused window to master position (add to config)
|
Super + Return → Move focused window to master position (add to config)
|
||||||
```
|
```
|
||||||
|
|
||||||
Add to config:
|
Add to config:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Super,Return,zoom,
|
bind=Super,Return,zoom,
|
||||||
```
|
```
|
||||||
|
|
||||||
**Move between tags:**
|
**Move between tags:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + 1-9 → Move to tag (and follow)
|
Alt + 1-9 → Move to tag (and follow)
|
||||||
Ctrl + Super + ←→ → Move to prev/next tag
|
Ctrl + Super + ←→ → Move to prev/next tag
|
||||||
|
|
@ -275,28 +309,33 @@ Ctrl + Super + ←→ → Move to prev/next tag
|
||||||
### Floating Windows
|
### Floating Windows
|
||||||
|
|
||||||
**Toggle floating:**
|
**Toggle floating:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + \ → Toggle floating/tiling
|
Alt + \ → Toggle floating/tiling
|
||||||
```
|
```
|
||||||
|
|
||||||
**Move floating windows:**
|
**Move floating windows:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Ctrl + Shift + ←→↑↓ → Move by pixels
|
Ctrl + Shift + ←→↑↓ → Move by pixels
|
||||||
Super + Left-drag → Move with mouse
|
Super + Left-drag → Move with mouse
|
||||||
```
|
```
|
||||||
|
|
||||||
**Resize floating windows:**
|
**Resize floating windows:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Ctrl + Alt + ←→↑↓ → Resize by pixels
|
Ctrl + Alt + ←→↑↓ → Resize by pixels
|
||||||
Super + Right-drag → Resize with mouse
|
Super + Right-drag → Resize with mouse
|
||||||
```
|
```
|
||||||
|
|
||||||
**Center floating window:**
|
**Center floating window:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + C → Center window (add to config)
|
Super + C → Center window (add to config)
|
||||||
```
|
```
|
||||||
|
|
||||||
Add to config:
|
Add to config:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Super,c,centerwin,
|
bind=Super,c,centerwin,
|
||||||
```
|
```
|
||||||
|
|
@ -304,6 +343,7 @@ bind=Super,c,centerwin,
|
||||||
### Window States
|
### Window States
|
||||||
|
|
||||||
**Common states:**
|
**Common states:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + \ → Floating
|
Alt + \ → Floating
|
||||||
Alt + F → Fullscreen
|
Alt + F → Fullscreen
|
||||||
|
|
@ -314,6 +354,7 @@ Super + O → Overlay (always on top)
|
||||||
```
|
```
|
||||||
|
|
||||||
**Minimize/Restore:**
|
**Minimize/Restore:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + I → Minimize window
|
Super + I → Minimize window
|
||||||
Super + Shift + I → Restore minimized
|
Super + Shift + I → Restore minimized
|
||||||
|
|
@ -326,6 +367,7 @@ Super + Shift + I → Restore minimized
|
||||||
### What is the Scratchpad?
|
### What is the Scratchpad?
|
||||||
|
|
||||||
The scratchpad is a hidden workspace for temporary windows. It's perfect for:
|
The scratchpad is a hidden workspace for temporary windows. It's perfect for:
|
||||||
|
|
||||||
- Calculator
|
- Calculator
|
||||||
- Music player
|
- Music player
|
||||||
- Notes/Todo list
|
- Notes/Todo list
|
||||||
|
|
@ -335,12 +377,14 @@ The scratchpad is a hidden workspace for temporary windows. It's perfect for:
|
||||||
### Basic Scratchpad Usage
|
### Basic Scratchpad Usage
|
||||||
|
|
||||||
1. **Open an application** (e.g., terminal with calculator)
|
1. **Open an application** (e.g., terminal with calculator)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
Alt + Return
|
Alt + Return
|
||||||
# Then run: qalc (or any calculator)
|
# Then run: qalc (or any calculator)
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Move to scratchpad**
|
2. **Move to scratchpad**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Z
|
Alt + Z
|
||||||
```
|
```
|
||||||
|
|
@ -348,6 +392,7 @@ The scratchpad is a hidden workspace for temporary windows. It's perfect for:
|
||||||
3. **Window disappears** - it's now in the scratchpad
|
3. **Window disappears** - it's now in the scratchpad
|
||||||
|
|
||||||
4. **Toggle scratchpad** to show/hide
|
4. **Toggle scratchpad** to show/hide
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Z → Shows scratchpad over current work
|
Alt + Z → Shows scratchpad over current work
|
||||||
Alt + Z → Hides it again
|
Alt + Z → Hides it again
|
||||||
|
|
@ -358,6 +403,7 @@ The scratchpad is a hidden workspace for temporary windows. It's perfect for:
|
||||||
You can have multiple named scratchpads:
|
You can have multiple named scratchpads:
|
||||||
|
|
||||||
**Setup in config.conf:**
|
**Setup in config.conf:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Super,p,toggle_named_scratchpad,music
|
bind=Super,p,toggle_named_scratchpad,music
|
||||||
bind=Super,n,toggle_named_scratchpad,notes
|
bind=Super,n,toggle_named_scratchpad,notes
|
||||||
|
|
@ -365,6 +411,7 @@ bind=Super,c,toggle_named_scratchpad,calc
|
||||||
```
|
```
|
||||||
|
|
||||||
**Usage:**
|
**Usage:**
|
||||||
|
|
||||||
1. Open application (e.g., spotify)
|
1. Open application (e.g., spotify)
|
||||||
2. Press `Super + P` - assigns it to "music" scratchpad
|
2. Press `Super + P` - assigns it to "music" scratchpad
|
||||||
3. Press `Super + P` again - shows/hides music scratchpad
|
3. Press `Super + P` again - shows/hides music scratchpad
|
||||||
|
|
@ -387,6 +434,7 @@ mmsg -d toggle_scratchpad
|
||||||
```
|
```
|
||||||
|
|
||||||
Bind it:
|
Bind it:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Super,equal,spawn_shell,~/.config/mango/scripts/scratchpad-calc.sh
|
bind=Super,equal,spawn_shell,~/.config/mango/scripts/scratchpad-calc.sh
|
||||||
```
|
```
|
||||||
|
|
@ -394,6 +442,7 @@ bind=Super,equal,spawn_shell,~/.config/mango/scripts/scratchpad-calc.sh
|
||||||
**Customize scratchpad appearance:**
|
**Customize scratchpad appearance:**
|
||||||
|
|
||||||
In config.conf:
|
In config.conf:
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
scratchpad_width_ratio=0.8 # 80% of screen width
|
scratchpad_width_ratio=0.8 # 80% of screen width
|
||||||
scratchpad_height_ratio=0.9 # 90% of screen height
|
scratchpad_height_ratio=0.9 # 90% of screen height
|
||||||
|
|
@ -411,11 +460,13 @@ Overview mode shows all windows at once, similar to GNOME's Activities or macOS
|
||||||
### Using Overview
|
### Using Overview
|
||||||
|
|
||||||
**Toggle overview:**
|
**Toggle overview:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Tab → Toggle overview mode
|
Alt + Tab → Toggle overview mode
|
||||||
```
|
```
|
||||||
|
|
||||||
**In overview mode:**
|
**In overview mode:**
|
||||||
|
|
||||||
- Click any window to focus it
|
- Click any window to focus it
|
||||||
- Drag windows to rearrange
|
- Drag windows to rearrange
|
||||||
- Windows are organized visually
|
- Windows are organized visually
|
||||||
|
|
@ -425,6 +476,7 @@ Alt + Tab → Toggle overview mode
|
||||||
Move your mouse cursor to the top edge of the screen to automatically trigger overview.
|
Move your mouse cursor to the top edge of the screen to automatically trigger overview.
|
||||||
|
|
||||||
**Configure hotarea:**
|
**Configure hotarea:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
# In config.conf
|
# In config.conf
|
||||||
hotarea_size=10 # Pixels from edge to trigger
|
hotarea_size=10 # Pixels from edge to trigger
|
||||||
|
|
@ -447,11 +499,13 @@ overviewgappo=30 # Gap from screen edges
|
||||||
### Basic Multi-Monitor Commands
|
### Basic Multi-Monitor Commands
|
||||||
|
|
||||||
**Focus different monitor:**
|
**Focus different monitor:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Shift + ←→ → Focus adjacent monitor
|
Alt + Shift + ←→ → Focus adjacent monitor
|
||||||
```
|
```
|
||||||
|
|
||||||
**Move window to other monitor:**
|
**Move window to other monitor:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + Alt + ←→ → Move window to adjacent monitor
|
Super + Alt + ←→ → Move window to adjacent monitor
|
||||||
```
|
```
|
||||||
|
|
@ -459,16 +513,19 @@ Super + Alt + ←→ → Move window to adjacent monitor
|
||||||
### Multi-Monitor Strategies
|
### Multi-Monitor Strategies
|
||||||
|
|
||||||
**Strategy 1: Dedicated monitors per task**
|
**Strategy 1: Dedicated monitors per task**
|
||||||
|
|
||||||
- Monitor 1: Development (Tag 1-3)
|
- Monitor 1: Development (Tag 1-3)
|
||||||
- Monitor 2: Communication (Tag 4-6)
|
- Monitor 2: Communication (Tag 4-6)
|
||||||
- Monitor 3: Media/Reference (Tag 7-9)
|
- Monitor 3: Media/Reference (Tag 7-9)
|
||||||
|
|
||||||
**Strategy 2: Mirror similar tags**
|
**Strategy 2: Mirror similar tags**
|
||||||
|
|
||||||
- Both monitors show same tags
|
- Both monitors show same tags
|
||||||
- Each monitor has different layouts
|
- Each monitor has different layouts
|
||||||
- Use global windows to span both
|
- Use global windows to span both
|
||||||
|
|
||||||
**Strategy 3: Independent workspaces**
|
**Strategy 3: Independent workspaces**
|
||||||
|
|
||||||
- Each monitor is independent
|
- Each monitor is independent
|
||||||
- Use monitor focus shortcuts frequently
|
- Use monitor focus shortcuts frequently
|
||||||
- Keep related work on same monitor
|
- Keep related work on same monitor
|
||||||
|
|
@ -478,16 +535,19 @@ Super + Alt + ←→ → Move window to adjacent monitor
|
||||||
MangoWC auto-detects monitors. For custom setup:
|
MangoWC auto-detects monitors. For custom setup:
|
||||||
|
|
||||||
**Disable a monitor:**
|
**Disable a monitor:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mmsg -d disable_monitor HDMI-A-1
|
mmsg -d disable_monitor HDMI-A-1
|
||||||
```
|
```
|
||||||
|
|
||||||
**Enable a monitor:**
|
**Enable a monitor:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mmsg -d enable_monitor HDMI-A-1
|
mmsg -d enable_monitor HDMI-A-1
|
||||||
```
|
```
|
||||||
|
|
||||||
**Find monitor names:**
|
**Find monitor names:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mmsg -o
|
mmsg -o
|
||||||
```
|
```
|
||||||
|
|
@ -566,6 +626,7 @@ unfocused_opacity=0.95 # Unfocused window opacity
|
||||||
Create `~/.config/mango/scripts/` directory:
|
Create `~/.config/mango/scripts/` directory:
|
||||||
|
|
||||||
**Example: Screenshot script**
|
**Example: Screenshot script**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# ~/.config/mango/scripts/screenshot.sh
|
# ~/.config/mango/scripts/screenshot.sh
|
||||||
|
|
@ -574,11 +635,13 @@ grim -g "$(slurp)" - | satty --filename - --fullscreen
|
||||||
```
|
```
|
||||||
|
|
||||||
**Bind it:**
|
**Bind it:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=Print,none,spawn_shell,~/.config/mango/scripts/screenshot.sh
|
bind=Print,none,spawn_shell,~/.config/mango/scripts/screenshot.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
**Example: Volume control**
|
**Example: Volume control**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# ~/.config/mango/scripts/volume.sh
|
# ~/.config/mango/scripts/volume.sh
|
||||||
|
|
@ -591,6 +654,7 @@ esac
|
||||||
```
|
```
|
||||||
|
|
||||||
**Bind it:**
|
**Bind it:**
|
||||||
|
|
||||||
```conf
|
```conf
|
||||||
bind=NONE,XF86AudioRaiseVolume,spawn_shell,~/.config/mango/scripts/volume.sh up
|
bind=NONE,XF86AudioRaiseVolume,spawn_shell,~/.config/mango/scripts/volume.sh up
|
||||||
bind=NONE,XF86AudioLowerVolume,spawn_shell,~/.config/mango/scripts/volume.sh down
|
bind=NONE,XF86AudioLowerVolume,spawn_shell,~/.config/mango/scripts/volume.sh down
|
||||||
|
|
@ -604,6 +668,7 @@ bind=NONE,XF86AudioMute,spawn_shell,~/.config/mango/scripts/volume.sh mute
|
||||||
### Workflow 1: Web Development
|
### Workflow 1: Web Development
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Browser (monocle) → Testing
|
Tag 1: Browser (monocle) → Testing
|
||||||
Tag 2: Code editor (center_tile) → Development
|
Tag 2: Code editor (center_tile) → Development
|
||||||
|
|
@ -612,6 +677,7 @@ Scratchpad: Documentation, notes
|
||||||
```
|
```
|
||||||
|
|
||||||
**Workflow:**
|
**Workflow:**
|
||||||
|
|
||||||
1. Start on Tag 2, write code
|
1. Start on Tag 2, write code
|
||||||
2. `Ctrl + 1` → View in browser
|
2. `Ctrl + 1` → View in browser
|
||||||
3. `Ctrl + 3` → Run build/dev server
|
3. `Ctrl + 3` → Run build/dev server
|
||||||
|
|
@ -621,6 +687,7 @@ Scratchpad: Documentation, notes
|
||||||
### Workflow 2: Writing and Research
|
### Workflow 2: Writing and Research
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Writing app (monocle)
|
Tag 1: Writing app (monocle)
|
||||||
Tag 2: Research browser (tile)
|
Tag 2: Research browser (tile)
|
||||||
|
|
@ -629,6 +696,7 @@ Scratchpad: Notes, citations
|
||||||
```
|
```
|
||||||
|
|
||||||
**Workflow:**
|
**Workflow:**
|
||||||
|
|
||||||
1. Research on Tags 2-3
|
1. Research on Tags 2-3
|
||||||
2. `Ctrl + 1` → Switch to writing
|
2. `Ctrl + 1` → Switch to writing
|
||||||
3. `Super + G` on notes window → Make it global
|
3. `Super + G` on notes window → Make it global
|
||||||
|
|
@ -637,6 +705,7 @@ Scratchpad: Notes, citations
|
||||||
### Workflow 3: Communication and Work
|
### Workflow 3: Communication and Work
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Email (monocle)
|
Tag 1: Email (monocle)
|
||||||
Tag 2: Slack/Discord (tile)
|
Tag 2: Slack/Discord (tile)
|
||||||
|
|
@ -646,6 +715,7 @@ Global: Music player
|
||||||
```
|
```
|
||||||
|
|
||||||
**Workflow:**
|
**Workflow:**
|
||||||
|
|
||||||
1. Open music player → `Super + G` (make global)
|
1. Open music player → `Super + G` (make global)
|
||||||
2. Start each app on its tag
|
2. Start each app on its tag
|
||||||
3. Use `Ctrl + Left/Right` to jump between active tags
|
3. Use `Ctrl + Left/Right` to jump between active tags
|
||||||
|
|
@ -654,6 +724,7 @@ Global: Music player
|
||||||
### Workflow 4: System Administration
|
### Workflow 4: System Administration
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Terminals (scroller) → Multiple SSH sessions
|
Tag 1: Terminals (scroller) → Multiple SSH sessions
|
||||||
Tag 2: Monitoring (grid) → htop, iotop, etc.
|
Tag 2: Monitoring (grid) → htop, iotop, etc.
|
||||||
|
|
@ -662,6 +733,7 @@ Scratchpad: Calculator, quick commands
|
||||||
```
|
```
|
||||||
|
|
||||||
**Workflow:**
|
**Workflow:**
|
||||||
|
|
||||||
1. Open terminals in scroller layout
|
1. Open terminals in scroller layout
|
||||||
2. `Alt + X` to adjust column widths
|
2. `Alt + X` to adjust column widths
|
||||||
3. `Ctrl + 2` for monitoring overview
|
3. `Ctrl + 2` for monitoring overview
|
||||||
|
|
@ -670,6 +742,7 @@ Scratchpad: Calculator, quick commands
|
||||||
### Workflow 5: Video/Audio Editing
|
### Workflow 5: Video/Audio Editing
|
||||||
|
|
||||||
**Setup:**
|
**Setup:**
|
||||||
|
|
||||||
```
|
```
|
||||||
Tag 1: Editor (monocle) → Full-screen editing
|
Tag 1: Editor (monocle) → Full-screen editing
|
||||||
Tag 2: File browser (tile) → Asset management
|
Tag 2: File browser (tile) → Asset management
|
||||||
|
|
@ -677,6 +750,7 @@ Tag 3: Preview (monocle) → Testing output
|
||||||
```
|
```
|
||||||
|
|
||||||
**Workflow:**
|
**Workflow:**
|
||||||
|
|
||||||
1. Edit on Tag 1 in monocle (maximum space)
|
1. Edit on Tag 1 in monocle (maximum space)
|
||||||
2. `Ctrl + 2` → Grab assets
|
2. `Ctrl + 2` → Grab assets
|
||||||
3. `Ctrl + 3` → Preview output
|
3. `Ctrl + 3` → Preview output
|
||||||
|
|
@ -687,6 +761,7 @@ Tag 3: Preview (monocle) → Testing output
|
||||||
## Quick Reference Card
|
## Quick Reference Card
|
||||||
|
|
||||||
### Essential Shortcuts
|
### Essential Shortcuts
|
||||||
|
|
||||||
```
|
```
|
||||||
Alt + Return Terminal
|
Alt + Return Terminal
|
||||||
Alt + Space Launcher
|
Alt + Space Launcher
|
||||||
|
|
@ -710,6 +785,7 @@ Super + G Global window
|
||||||
```
|
```
|
||||||
|
|
||||||
### When Things Go Wrong
|
### When Things Go Wrong
|
||||||
|
|
||||||
```
|
```
|
||||||
Super + R Reload config (fixes most issues)
|
Super + R Reload config (fixes most issues)
|
||||||
Super + M Exit MangoWC
|
Super + M Exit MangoWC
|
||||||
|
|
@ -729,6 +805,7 @@ Now that you understand the basics:
|
||||||
5. **Join the community** - [Discord](https://discord.gg/CPjbDxesh5)
|
5. **Join the community** - [Discord](https://discord.gg/CPjbDxesh5)
|
||||||
|
|
||||||
**Additional Resources:**
|
**Additional Resources:**
|
||||||
|
|
||||||
- [COMMANDS.md](COMMANDS.md) - Complete command reference
|
- [COMMANDS.md](COMMANDS.md) - Complete command reference
|
||||||
- [config.conf](config.conf) - Commented configuration file
|
- [config.conf](config.conf) - Commented configuration file
|
||||||
- [MangoWC Wiki](https://github.com/DreamMaoMao/mango/wiki/) - Comprehensive documentation
|
- [MangoWC Wiki](https://github.com/DreamMaoMao/mango/wiki/) - Comprehensive documentation
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue