2024-02-20 21:16:07 +01:00
---
weight: 8
title: Workspace Rules
---
2023-05-01 23:28:16 +02:00
2024-02-20 21:16:07 +01:00
## Workspace Rules
2023-05-01 23:28:16 +02:00
2024-02-20 21:16:07 +01:00
You can set workspace rules to achieve workspace-specific behaviors. For
instance, you can define a workspace where all windows are drawn without borders
or gaps.
2023-05-01 23:28:16 +02:00
2024-02-20 21:16:07 +01:00
For layout-specific rules, see the specific layout page. For example:
2024-03-17 13:44:39 +01:00
[Master Layout->Workspace Rules ](../Master-Layout#workspace-rules )
2024-02-20 21:16:07 +01:00
### Syntax
2023-05-01 23:28:16 +02:00
```ini
2023-05-05 16:42:26 +02:00
workspace=WORKSPACE,RULES
2023-05-01 23:28:16 +02:00
```
2024-02-20 21:16:07 +01:00
- WORKSPACE is a valid workspace identifier (see
2024-03-17 13:44:39 +01:00
[Dispatchers->Workspaces ](../Dispatchers#workspaces )). This field is
2024-02-20 21:16:07 +01:00
mandatory;
2023-05-01 23:28:16 +02:00
- RULES is one (or more) rule(s) as described here in [rules ](#rules ).
### Examples
2024-02-20 21:16:07 +01:00
2023-05-01 23:28:16 +02:00
```ini
workspace=name:myworkspace,gapsin:0,gapsout:0
2023-12-05 16:01:47 +01:00
workspace=3,rounding:false,bordersize:0
2023-05-01 23:28:16 +02:00
```
## Rules
2024-02-20 21:16:07 +01:00
2023-05-05 16:42:26 +02:00
| Rule | Description | type |
2024-02-20 21:16:07 +01:00
| --- | --- | --- |
2024-03-17 13:44:39 +01:00
| monitor:[m] | Binds a workspace to a monitor See [syntax ](#syntax ) and [Monitors ](../Monitors ). | string |
2023-05-05 16:42:26 +02:00
| default:[b] | Whether this workspace should be the default workspace for the given monitor | bool |
2024-03-17 13:44:39 +01:00
| gapsin:[x] | Set the gaps between windows (equivalent to [General->gaps_in ](../Variables#general )) | int |
| gapsout:[x] | Set the gaps between windows and monitor edges (equivalent to [General->gaps_out ](../Variables#general )) | int |
| bordersize:[x] | Set the border size around windows (equivalent to [General->border_size ](../Variables#general )) | int |
2024-02-20 21:16:07 +01:00
| border:[b] | Whether to draw borders or not | bool |
| shadow:[b] | Whether to draw shadows or not | bool |
2023-05-05 16:42:26 +02:00
| rounding:[b] | Whether to draw rounded windows or not | bool |
2023-05-01 23:28:16 +02:00
| decorate:[b] | Whether to draw window decorations or not | bool |
2023-10-09 21:28:28 +02:00
| persistent:[b] | Keep this workspace alive even if empty and inactive | bool |
2024-03-17 13:44:39 +01:00
| on-created-empty:[c] | A command to be executed once a workspace is created empty (i.e. not created by moving a window to it). See the [command syntax ](../Dispatchers#executing-with-rules ) | string |
2024-02-27 23:45:25 +01:00
| defaultName:[s] | A default name for the workspace. | string |
2023-05-01 23:28:16 +02:00
### Example Rules
2024-02-20 21:16:07 +01:00
2023-05-01 23:28:16 +02:00
```ini
2023-05-05 16:42:26 +02:00
workspace = 3, rounding:false, decorate:false
workspace = name:coding, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false, decorate:false, monitor:DP-1
workspace = 8,bordersize:8
workspace = name:Hello, monitor:DP-1, default:true
2024-01-31 11:25:11 +01:00
workspace = name:gaming, monitor:desc:Chimei Innolux Corporation 0x150C, default:true
2023-10-23 00:10:47 +02:00
workspace = 5, on-created-empty:[float] firefox
workspace = special:scratchpad, on-created-empty:foot
2023-05-05 16:42:26 +02:00
```