logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

swaysome - improve multi-output handling on sway

Authors

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

2.1.2                                               Feb 2024                                         SWAYSOME(1)

Commands

initINDEX
              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.

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

       move-to-groupINDEX
              Move the focused container to workspace group INDEX (keep the same workspace index)

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

       focus-groupINDEX
              Focus to workspace group INDEX (keep the same workspace index)

       focus-all-outputsINDEX
              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)

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 "workspacegroups", and  "workspacegroups"  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 workspacegroup 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:
           workspacegroup1:
               workspace 11: chats
               workspace 12: emails
       output-2:
           workspacegroup2:
               workspace 21: IDE for first project
               workspace 22: browser for first project
               workspace 23: terminals for first project
           workspacegroup3:
               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  workspacegroup2,  be  it  workspace  21  or  22,  the  quick
       `$mod+<number>` (bound to `swaysome focus <number>`) shortcut won't leave workspacegroup2, 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 workspacegroup3 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.

Homepage

https://gitlab.com/hyask/swaysome

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

Name

       swaysome - improve multi-output handling on sway

Options

-h, --help
              Print help

       -V, --version
              Print version

Synopsis

swaysome[OPTIONS]<COMMAND>

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.

Version

       2.1.2

See Also