Go to file
S. Christoffer Eliesen a06cb7cd01 criteria: Add. Learn for_window command.
A criteria is a string in the form of `[class="regex.*" title="str"]`.
It is stored in a struct with a list of *tokens* which is a
attribute/value pair (stored as a `crit_token` struct). Most tokens will
also have a precompiled regex stored that will be used during criteria
matching.

for_window command: When a new view is created its metadata is tested
against all stored criteria, and if a match is found the associated
command list is executed.

Unfortunately some metadata is not available in sway at the moment
(specifically `instance`, `window_role` and `urgent`). Any criteria
string that tries to match an unsupported attribute will fail.

(Note that while the criteria code can be used to parse any criteria
string it is currently only used by the `for_window` command.)
2015-11-25 14:34:33 +01:00
.ci make install wlc as part of the build 2015-09-04 21:08:44 +02:00
CMake Merge pull request #255 from christophgysin/ninja 2015-11-25 08:19:34 -05:00
common fix list sorting 2015-11-24 00:30:02 -08:00
include criteria: Add. Learn for_window command. 2015-11-25 14:34:33 +01:00
protocols Basic support for extensions in server and clients 2015-11-18 22:01:22 -05:00
sway criteria: Add. Learn for_window command. 2015-11-25 14:34:33 +01:00
swaybg Add wallpapers to output command 2015-11-19 18:55:17 -05:00
wayland Add wallpapers to output command 2015-11-19 18:55:17 -05:00
.gitignore Add command line parsing 2015-08-20 08:37:24 -04:00
.travis.yml Add new swaybg dependencies 2015-11-12 16:40:21 +01:00
CMakeLists.txt Basic support for extensions in server and clients 2015-11-18 22:01:22 -05:00
config Update header for default config 2015-11-19 20:10:14 -05:00
HACKING.md HACKING.md: Add code overview section. 2015-11-15 22:55:02 +01:00
LICENSE MIT license 2015-08-04 21:31:07 -04:00
README.md Update README 2015-11-15 20:22:28 -05:00
sway-xorg.desktop Add Wayland and Xorg session files 2015-08-20 23:12:34 +02:00
sway.1.txt Fixed a couple of typos in man pages 2015-09-01 13:27:28 -04:00
sway.5.txt criteria: Add. Learn for_window command. 2015-11-25 14:34:33 +01:00
sway.desktop Add Wayland and Xorg session files 2015-08-20 23:12:34 +02:00

sway Donate with fosspay

"SirCmpwn's Wayland window manager" is a work in progress i3-compatible window manager for Wayland. Read the FAQ.

Rationale

I use i3 on xorg. Wayland is coming, and i3way still has zero lines of source code after two years.

Status

See "i3 feature support"

Installation

From Packages

sway is not supported by many distributions yet. Here's a list of packages available for you to install:

For other distros, see this wiki page.

Compiling from Source

Install dependencies:

  • cmake
  • wlc
  • wayland
  • xwayland
  • asciidoc
  • pcre
  • json-c
  • pango
  • cairo

Run these commands:

cmake .
make
sudo make install

Configuration

If you already use i3, then copy your i3 config to ~/.config/sway/config and it'll work out of the box. Otherwise, copy /etc/sway/config to ~/.config/sway/config. Run man 5 sway for information on the configuration.

Running

Run this from a tty (instead of starting x):

sway

If you run it from within x, it will spawn x windows instead of using your hardware directly (useful for development).