diff --git a/README.md b/README.md index efbcc109..43a63c25 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,13 @@ Binary shows up in `./bin` (or `/usr/local/bin` if you `make install`). mkdir ~/.config/sway cp ~/.config/i3/config ~/.config/sway/ +Or if you don't already use i3: + + mkdir ~/.config/sway + cp /etc/sway/config ~/.config/sway/ + +Edit to your liking. + [See also](http://i3wm.org/docs/) ## Running diff --git a/config b/config index 114aa6bd..154f33ca 100644 --- a/config +++ b/config @@ -1,117 +1,127 @@ # Default config for sway # +# Copy this to ~/.config/sway/config and edit it to your liking. +# # Sway is a work in progress implementation of i3 for wayland. # Note that some of these defaults may be unimplemented. # -# Please see http://i3wm.org/docs/userguide.html for a complete reference! - -# Font for window titles. Will also be used by the bar unless a different font -# is used in the bar {} block below. -font pango:DejaVu Sans Mono 8 - -# use these keys for focus, movement, and resize directions when reaching for -# the arrows is not convenient -set $up l -set $down k -set $left j -set $right semicolon - -# use Mouse+Mod1 to drag floating windows to their wanted position -floating_modifier Mod1 - -# start a terminal -bindsym Mod1+Return exec urxvt - -# kill focused window -bindsym Mod1+Shift+q kill - -# start dmenu (a program launcher) -bindsym Mod1+d exec dmenu_run - -# change focus -bindsym Mod1+$left focus left -bindsym Mod1+$down focus down -bindsym Mod1+$up focus up -bindsym Mod1+$right focus right - -# alternatively, you can use the cursor keys: -bindsym Mod1+Left focus left -bindsym Mod1+Down focus down -bindsym Mod1+Up focus up -bindsym Mod1+Right focus right - -# move focused window -bindsym Mod1+Shift+$left move left -bindsym Mod1+Shift+$down move down -bindsym Mod1+Shift+$up move up -bindsym Mod1+Shift+$right move right - -# alternatively, you can use the cursor keys: -bindsym Mod1+Shift+Left move left -bindsym Mod1+Shift+Down move down -bindsym Mod1+Shift+Up move up -bindsym Mod1+Shift+Right move right - -# split in horizontal orientation -bindsym Mod1+h splith - -# split in vertical orientation -bindsym Mod1+v splitv - -# enter fullscreen mode for the focused container -bindsym Mod1+f fullscreen - -# change container layout (stacked, tabbed, toggle split) -bindsym Mod1+s layout stacking -bindsym Mod1+w layout tabbed -bindsym Mod1+e layout toggle split - -# toggle tiling / floating -bindsym Mod1+Shift+space floating toggle - -# change focus between tiling / floating windows -bindsym Mod1+space focus mode_toggle - -# focus the parent container -bindsym Mod1+a focus parent - -# focus the child container -#bindsym Mod1+d focus child - -# move the currently focused window to the scratchpad -bindsym Mod1+Shift+minus move scratchpad - -# Show the next scratchpad window or hide the focused scratchpad window. -# If there are multiple scratchpad windows, this command cycles through them. -bindsym Mod1+minus scratchpad show - -# switch to workspace -bindsym Mod1+1 workspace 1 -bindsym Mod1+2 workspace 2 -bindsym Mod1+3 workspace 3 -bindsym Mod1+4 workspace 4 -bindsym Mod1+5 workspace 5 -bindsym Mod1+6 workspace 6 -bindsym Mod1+7 workspace 7 -bindsym Mod1+8 workspace 8 -bindsym Mod1+9 workspace 9 -bindsym Mod1+0 workspace 10 - -# move focused container to workspace -bindsym Mod1+Shift+1 move container to workspace 1 -bindsym Mod1+Shift+2 move container to workspace 2 -bindsym Mod1+Shift+3 move container to workspace 3 -bindsym Mod1+Shift+4 move container to workspace 4 -bindsym Mod1+Shift+5 move container to workspace 5 -bindsym Mod1+Shift+6 move container to workspace 6 -bindsym Mod1+Shift+7 move container to workspace 7 -bindsym Mod1+Shift+8 move container to workspace 8 -bindsym Mod1+Shift+9 move container to workspace 9 -bindsym Mod1+Shift+0 move container to workspace 10 - -# reload the configuration file -bindsym Mod1+Shift+c reload -# restart sway inplace (preserves your layout/session, can be used to upgrade sway) -bindsym Mod1+Shift+r restart -# exit sway (logs you out of your wayland session) -bindsym Mod1+Shift+e exit +# Please see http://i3wm.org/docs/userguide.html for a (more) complete reference! + + +### Variables + +set $mod Mod4 # Logo key. Use Mod1 for Alt. +set $term urxvt # Your preferred terminal emulator +set $menu dmenu_run # Your preferred application launcher + +### Key bindings +# +# Basics: +# + # start a terminal + bindsym $mod+Return exec urxvt + + # kill focused window + bindsym $mod+Shift+q kill + + # start your launcher + bindsym $mod+d exec $menu + + # Drag floating windows by holding down $mod and left mouse button. + # Resize them with right mouse button + $mod. + floating_modifier $mod + + # reload the configuration file + bindsym $mod+Shift+c reload + + # restart sway inplace (preserves your layout/session, can be used to upgrade sway) + bindsym $mod+Shift+r restart + + # exit sway (logs you out of your wayland session) + bindsym $mod+Shift+e exit +# +# Moving around: +# + # Move your focus around with $mod+[h|j|k|l], like vim + bindsym $mod+h focus left + bindsym $mod+j focus down + bindsym $mod+k focus up + bindsym $mod+l focus right + # or use $mod+[up|down|left|right] + bindsym $mod+Left focus left + bindsym $mod+Down focus down + bindsym $mod+Up focus up + bindsym $mod+Right focus right + + # _move_ the focused window with the same, but add Shift + bindsym $mod+Shift+h move left + bindsym $mod+Shift+j move down + bindsym $mod+Shift+k move up + bindsym $mod+Shift+l move right + # ditto, with arrow keys + bindsym $mod+Shift+Left move left + bindsym $mod+Shift+Down move down + bindsym $mod+Shift+Up move up + bindsym $mod+Shift+Right move right +# +# Workspaces: +# + # switch to workspace + bindsym $mod+1 workspace 1 + bindsym $mod+2 workspace 2 + bindsym $mod+3 workspace 3 + bindsym $mod+4 workspace 4 + bindsym $mod+5 workspace 5 + bindsym $mod+6 workspace 6 + bindsym $mod+7 workspace 7 + bindsym $mod+8 workspace 8 + bindsym $mod+9 workspace 9 + bindsym $mod+0 workspace 10 + # move focused container to workspace + bindsym $mod+Shift+1 move container to workspace 1 + bindsym $mod+Shift+2 move container to workspace 2 + bindsym $mod+Shift+3 move container to workspace 3 + bindsym $mod+Shift+4 move container to workspace 4 + bindsym $mod+Shift+5 move container to workspace 5 + bindsym $mod+Shift+6 move container to workspace 6 + bindsym $mod+Shift+7 move container to workspace 7 + bindsym $mod+Shift+8 move container to workspace 8 + bindsym $mod+Shift+9 move container to workspace 9 + bindsym $mod+Shift+0 move container to workspace 10 +# +# Layout stuff: +# + # You can "split" the current object of your focus with + # $mod+h or $mod+v, for horizontal and vertical splits + # respectively. + bindsym $mod+h splith + bindsym $mod+v splitv + + # Switch the current container between different layout styles + bindsym $mod+s layout stacking + bindsym $mod+w layout tabbed + bindsym $mod+e layout toggle split + + # Make the current focus fullscreen + bindsym $mod+f fullscreen + + # Toggle the current focus between tiling and floating mode + bindsym $mod+Shift+space floating toggle + + # Swap focus between the tiling area and the floating area + bindsym $mod+space focus mode_toggle + + # move focus to the parent container + bindsym $mod+a focus parent +# +# Scratchpad: +# + # Sway has a "scratchpad", which is a bag of holding for windows. + # You can send windows there and get them back later. + + # Move the currently focused window to the scratchpad + bindsym $mod+Shift+minus move scratchpad + + # Show the next scratchpad window or hide the focused scratchpad window. + # If there are multiple scratchpad windows, this command cycles through them. + bindsym $mod+minus scratchpad show