---
name: "swaysome"
section: "1"
platform: "linux"
package: "swaysome"
version: "2.1.2-1+b4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/swaysome"
---

# swaysome(1)

improve multi-output handling on sway

## NAME

swaysome - improve multi-output handling on sway

## SYNOPSIS

**swaysome** *\[OPTIONS\]* *\<COMMAND\>*

## DESCRIPTION

**swaysome** helps you configure **sway** to work a bit more like **AwesomeWM** (*https://awesomewm.org/*). This means that "**workspaces**" are namespaced in what are called "**workspace groups**", and "**workspace groups**" can be moved around the differents outputs easily.

For example, with workspace 11 on the first output, and workspace 21 on the second output, triggering the \`swaysome focus 1\` shortcut to get workspace 1 would lead you to workspace 11 if your focus is on the first output, and workspace 21 is the focus is on the second one.

By default, \`swaysome init\` will create a **workspace group** per active output, but you may create other groups while working, by either triggering \`swaysome focus-group \<new-number\>\` and opening a new window, or sending an existing window to it first with \`swaysome move-to-group \<new-number\>\`.

Here is a common use-case for this:

```
output-1:
    workspace group 1:
        workspace 11: chats
        workspace 12: emails
output-2:
    workspace group 2:
        workspace 21: IDE for first project
        workspace 22: browser for first project
        workspace 23: terminals for first project
    workspace group 3:
        workspace 31: IDE for second project
        workspace 32: browser for second project
        workspace 33: terminals for second project
```

That way, when **output-2** is focused on **workspace group 2**, be it workspace 21 or 22, the quick \`$mod+\<number\>\` (bound to \`swaysome focus \<number\>\`) shortcut won't leave **workspace group 2**, allowing you to open multiple projects in parallel without the hassle of manually remembering how to namespace them.

In that situation, suppose you plug in a new output, \`output-3\`, you may then want to focus **workspace group 3** to send it to \`output-3\`: this is simply done by typing the shortcuts \`$mod+Alt+3\` (\`swaysome focus-group 3\`) then \`$mod+Alt+o\` (\`swaysome workspace-group-next-output\`).

**swaysome** may also work with **i3**, but this is untested. Patches welcome if needed.

**swaysome** should be compatible with **sworkstyle** (*https://lib.rs/crates/sworkstyle*). If this is broken, please report a bug.

## USAGE

If you installed **swaysome** from your distribution's package manager, it should have provided your system with the default configuration file. In that case, you can just include from your **sway** configuration by appending the following to it:

    include /etc/sway/config.d/swaysome.conf

Otherwise, if installing by any other way, copy the **swaysome.conf** file in **~/.config/sway/config.d/swaysome.conf**, then append your **sway** configuration with this:

    include ~/.config/sway/config.d/sway.conf

On next startup of \`sway\`, you should end-up with workspaces from \`1\` to \`0\`, prefixed with a screen index, giving you workspace \`11\` on the first screen, and workspace \`21\` on the second one, both accessible with shortcut \`$mod+1\` when focused on the right output.

## COMMANDS

- **init** *INDEX*

  Initialize the workspace groups for all the outputs on workspace *INDEX*. This command simply walks through every screen to initialize a prefixed workspace. It does it backwards so that you end-up focused on the first screen, as usual.

- **move** *INDEX*

  Move the focused container to workspace *INDEX* (stay in the same workspace group)

- **move-to-group** *INDEX*

  Move the focused container to workspace group *INDEX* (keep the same workspace index)

- **focus** *INDEX*

  Focus to workspace *INDEX* (stay in the same workspace group)

- **focus-group** *INDEX*

  Focus to workspace group *INDEX* (keep the same workspace index)

- **focus-all-outputs** *INDEX*

  Focus to workspace *INDEX* on all the outputs at once (not bound by default)

- **next-output**

  Move the focused container to the next output

- **prev-output**

  Move the focused container to the previous output

- **workspace-group-next-output**

  Move the focused workspace group to the next output

- **workspace-group-prev-output**

  Move the focused workspace group to the previous output

- **next-group**

  Move the focused container to the next group

- **prev-group**

  Move the focused container to the previous group

- **rearrange-workspaces**

  Rearrange already opened workspaces to the correct outputs, useful when plugging new monitors

- **help**

  Print this message or the help of the given subcommand(s)

## OPTIONS

- **-h**, **--help**

  Print help

- **-V**, **--version**

  Print version

## VERSION

2\.1.2

## HOMEPAGE

*https://gitlab.com/hyask/swaysome*

Please report any bug or feature requests on the bug tracker.

## AUTHORS

Florent 'Skia' Jacquet \<*skia@hya.sk*\>
