]> git.vanrenterghem.biz Git - Dotty.git/blob - sway/.config/sway/config
5c55f526adade478e4d80d2fd2ff63ea5d6873d3
[Dotty.git] / sway / .config / sway / config
1 # Default config for sway
2 #
3 # Copy this to ~/.config/sway/config and edit it to your liking.
4 #
5 # Read `man 5 sway` for a complete reference.
7 ### Variables
8 #
9 # Logo key. Use Mod1 for Alt.
10 set $mod Mod4
11 # Home row direction keys, like vim
12 set $left h
13 set $down j
14 set $up k
15 set $right l
16 # Your preferred terminal emulator
17 set $term gnome-terminal
18 # Your preferred application launcher
19 # Note: it's recommended that you pass the final command to sway
20 #set $menu dmenu_path | dmenu | xargs swaymsg exec --
21 set $menu j4-dmenu-desktop --dmenu='bemenu -i --nb "#3f3f3f" --nf "#dcdccc" --fn "pango:DejaVu Sans Mono 12"' --term='termite' | xargs swaymsg exec -- 
23 ### Output configuration
24 #
25 # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
26 output * bg /home/frederik/Pictures/sway_bg.jpg fill
27 #
28 # Example configuration:
29 #
30 #   output HDMI-A-1 resolution 1920x1080 position 1920,0
31 #
32 # You can get the names of your outputs by running: swaymsg -t get_outputs
33 # Enable HiDPI
34 output eDP-1 scale 2
36 ### Idle configuration
37 #
38 # Example configuration:
39 #
40 # exec swayidle -w \
41 #          timeout 300 'swaylock -f -c 000000' \
42 #          timeout 600 'swaymsg "output * dpms off"' \
43 #               resume 'swaymsg "output * dpms on"' \
44 #          before-sleep 'swaylock -f -c 000000'
45 #
46 # This will lock your screen after 300 seconds of inactivity, then turn off
47 # your displays after another 300 seconds, and turn your screens back on when
48 # resumed. It will also lock your screen before your computer goes to sleep.
50 ### Input configuration
51 #
52 # Example configuration:
53 #
54 #   input "2:14:SynPS/2_Synaptics_TouchPad" {
55 #       dwt enabled
56 #       tap enabled
57 #       natural_scroll enabled
58 #       middle_emulation enabled
59 #   }
60 #
61 # You can get the names of your inputs by running: swaymsg -t get_inputs
62 # Read `man 5 sway-input` for more information about this section.
64 ### Key bindings
65 #
66 # Basics:
67 #
68     # Start a terminal
69     bindsym $mod+Return exec $term
71     # Kill focused window
72     bindsym $mod+Shift+q kill
74     # Start your launcher
75     bindsym $mod+d exec $menu
77     # Drag floating windows by holding down $mod and left mouse button.
78     # Resize them with right mouse button + $mod.
79     # Despite the name, also works for non-floating windows.
80     # Change normal to inverse to use left mouse button for resizing and right
81     # mouse button for dragging.
82     floating_modifier $mod normal
84     # Reload the configuration file
85     bindsym $mod+Shift+c reload
87     # Exit sway (logs you out of your Wayland session)
88     bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
89 #
90 # Moving around:
91 #
92     # Move your focus around
93     bindsym $mod+$left focus left
94     bindsym $mod+$down focus down
95     bindsym $mod+$up focus up
96     bindsym $mod+$right focus right
97     # Or use $mod+[up|down|left|right]
98     bindsym $mod+Left focus left
99     bindsym $mod+Down focus down
100     bindsym $mod+Up focus up
101     bindsym $mod+Right focus right
103     # Move the focused window with the same, but add Shift
104     bindsym $mod+Shift+$left move left
105     bindsym $mod+Shift+$down move down
106     bindsym $mod+Shift+$up move up
107     bindsym $mod+Shift+$right move right
108     # Ditto, with arrow keys
109     bindsym $mod+Shift+Left move left
110     bindsym $mod+Shift+Down move down
111     bindsym $mod+Shift+Up move up
112     bindsym $mod+Shift+Right move right
114 # Workspaces:
116     # Switch to workspace
117     bindsym $mod+1 workspace 1
118     bindsym $mod+2 workspace 2
119     bindsym $mod+3 workspace 3
120     bindsym $mod+4 workspace 4
121     bindsym $mod+5 workspace 5
122     bindsym $mod+6 workspace 6
123     bindsym $mod+7 workspace 7
124     bindsym $mod+8 workspace 8
125     bindsym $mod+9 workspace 9
126     bindsym $mod+0 workspace 10
127     # Move focused container to workspace
128     bindsym $mod+Shift+1 move container to workspace 1
129     bindsym $mod+Shift+2 move container to workspace 2
130     bindsym $mod+Shift+3 move container to workspace 3
131     bindsym $mod+Shift+4 move container to workspace 4
132     bindsym $mod+Shift+5 move container to workspace 5
133     bindsym $mod+Shift+6 move container to workspace 6
134     bindsym $mod+Shift+7 move container to workspace 7
135     bindsym $mod+Shift+8 move container to workspace 8
136     bindsym $mod+Shift+9 move container to workspace 9
137     bindsym $mod+Shift+0 move container to workspace 10
138     # Note: workspaces can have any name you want, not just numbers.
139     # We just use 1-10 as the default.
141 # Layout stuff:
143     # You can "split" the current object of your focus with
144     # $mod+b or $mod+v, for horizontal and vertical splits
145     # respectively.
146     bindsym $mod+b splith
147     bindsym $mod+v splitv
149     # Switch the current container between different layout styles
150     bindsym $mod+s layout stacking
151     bindsym $mod+w layout tabbed
152     bindsym $mod+e layout toggle split
154     # Make the current focus fullscreen
155     bindsym $mod+f fullscreen
157     # Toggle the current focus between tiling and floating mode
158     bindsym $mod+Shift+space floating toggle
160     # Swap focus between the tiling area and the floating area
161     bindsym $mod+space focus mode_toggle
163     # Move focus to the parent container
164     bindsym $mod+a focus parent
166 # Scratchpad:
168     # Sway has a "scratchpad", which is a bag of holding for windows.
169     # You can send windows there and get them back later.
171     # Move the currently focused window to the scratchpad
172     bindsym $mod+Shift+minus move scratchpad
174     # Show the next scratchpad window or hide the focused scratchpad window.
175     # If there are multiple scratchpad windows, this command cycles through them.
176     bindsym $mod+minus scratchpad show
178 # Resizing containers:
180 mode "resize" {
181     # left will shrink the containers width
182     # right will grow the containers width
183     # up will shrink the containers height
184     # down will grow the containers height
185     bindsym $left resize shrink width 10px
186     bindsym $down resize grow height 10px
187     bindsym $up resize shrink height 10px
188     bindsym $right resize grow width 10px
190     # Ditto, with arrow keys
191     bindsym Left resize shrink width 10px
192     bindsym Down resize grow height 10px
193     bindsym Up resize shrink height 10px
194     bindsym Right resize grow width 10px
196     # Return to default mode
197     bindsym Return mode "default"
198     bindsym Escape mode "default"
200 bindsym $mod+r mode "resize"
203 # Status Bar:
205 # Read `man 5 sway-bar` for more information about this section.
206 bar {
207     position top
209     # When the status_command prints a new line to stdout, swaybar updates.
210     # The default just shows the current date and time.
211     #status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done
212     status_command while ~/.config/sway/scripts/status.sh; do sleep 1; done
214     colors {
215         statusline #ffffff
216         background #323232
217         inactive_workspace #32323200 #32323200 #5c5c5c
218     }
219     #font "Terminus (TTF)"
220     font pango:DejaVu Sans Mono 10
223 include /etc/sway/config.d/*