6ca981186ff4b17037e15ac5b04f63d8c569e098
1# colours
2set $bg-color #268bd2
3set $inactive-bg-color #2f343f
4set $text-color #2f343f
5set $inactive-text-color #839495
6set $urgent-bg-color #dc322f
7set $bar-color #082833cc
8
9# windows key
10set $mod Mod4
11
12# default font (titles & bar)
13font pango:Ubuntu Mono derivative Powerline 11, Awesome 8
14
15# mouse+$mod to drag floating windows
16floating_modifier $mod
17
18# terminal
19bindsym $mod+Return exec urxvt
20
21# kill focused window
22bindsym $mod+Shift+q kill
23
24# window colours
25# state border background text indicator
26client.focused $bg-color $bg-color $text-color $bg-color
27client.unfocused $inactive-bg-color $inactive-bg-color $inactive-text-color $inactive-bg-color
28client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color $inactive-bg-color
29client.urgent $urgent-bg-color $urgent-bg-color $text-color $urgent-bg-color
30
31# rofi
32bindsym $mod+d exec rofi -show run
33
34# change focus
35bindsym $mod+j focus left
36bindsym $mod+k focus down
37bindsym $mod+l focus up
38bindsym $mod+semicolon focus right
39
40# alternatively, you can use the cursor keys:
41bindsym $mod+Left focus left
42bindsym $mod+Down focus down
43bindsym $mod+Up focus up
44bindsym $mod+Right focus right
45
46# move focused window
47bindsym $mod+Shift+j move left
48bindsym $mod+Shift+k move down
49bindsym $mod+Shift+l move up
50bindsym $mod+Shift+semicolon move right
51
52# alternatively, you can use the cursor keys:
53bindsym $mod+Shift+Left move left
54bindsym $mod+Shift+Down move down
55bindsym $mod+Shift+Up move up
56bindsym $mod+Shift+Right move right
57
58# split in horizontal orientation
59bindsym $mod+h split h
60
61# split in vertical orientation
62bindsym $mod+v split v
63
64# enter fullscreen mode for the focused container
65bindsym $mod+f fullscreen toggle
66
67# change container layout (stacked, tabbed, toggle split)
68bindsym $mod+s layout stacking
69bindsym $mod+w layout tabbed
70bindsym $mod+e layout toggle split
71
72# toggle tiling / floating
73bindsym $mod+Shift+space floating toggle
74
75# change focus between tiling / floating windows
76bindsym $mod+space focus mode_toggle
77
78# focus the parent container
79bindsym $mod+a focus parent
80
81# focus the child container
82#bindsym $mod+d focus child
83
84# Define names for default workspaces for which we configure key bindings later on.
85# We use variables to avoid repeating the names in multiple places.
86set $ws1 "term"
87set $ws2 "chrome"
88set $ws3 "code"
89set $ws4 "misc"
90set $ws5 "school"
91set $ws6 "spotify"
92set $ws7 "7"
93set $ws8 "8"
94set $ws9 "9"
95set $ws10 "10"
96
97# switch to workspace
98bindsym $mod+1 workspace $ws1
99bindsym $mod+2 workspace $ws2
100bindsym $mod+3 workspace $ws3
101bindsym $mod+4 workspace $ws4
102bindsym $mod+5 workspace $ws5
103bindsym $mod+6 workspace $ws6
104bindsym $mod+7 workspace $ws7
105bindsym $mod+8 workspace $ws8
106bindsym $mod+9 workspace $ws9
107bindsym $mod+0 workspace $ws10
108
109# move focused container to workspace
110bindsym $mod+Shift+1 move container to workspace $ws1
111bindsym $mod+Shift+2 move container to workspace $ws2
112bindsym $mod+Shift+3 move container to workspace $ws3
113bindsym $mod+Shift+4 move container to workspace $ws4
114bindsym $mod+Shift+5 move container to workspace $ws5
115bindsym $mod+Shift+6 move container to workspace $ws6
116bindsym $mod+Shift+7 move container to workspace $ws7
117bindsym $mod+Shift+8 move container to workspace $ws8
118bindsym $mod+Shift+9 move container to workspace $ws9
119bindsym $mod+Shift+0 move container to workspace $ws10
120
121# assign windows to workspaces
122assign[class="Chromium"] $ws2
123assign[class="Spotify"] $ws6
124assign[class="Atom"] $ws3
125
126# assign workspaces to monitors
127workspace $ws6 output VGA1
128
129# reload the configuration file
130bindsym $mod+Shift+c reload
131# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
132bindsym $mod+Shift+r restart
133# exit i3 (logs you out of your X session)
134bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
135
136# resize window (you can also use the mouse for that)
137mode "resize" {
138 # These bindings trigger as soon as you enter the resize mode
139
140 # Pressing left will shrink the window’s width.
141 # Pressing right will grow the window’s width.
142 # Pressing up will shrink the window’s height.
143 # Pressing down will grow the window’s height.
144 bindsym j resize shrink width 10 px or 10 ppt
145 bindsym k resize grow height 10 px or 10 ppt
146 bindsym l resize shrink height 10 px or 10 ppt
147 bindsym semicolon resize grow width 10 px or 10 ppt
148
149 # same bindings, but for the arrow keys
150 bindsym Left resize shrink width 10 px or 10 ppt
151 bindsym Down resize grow height 10 px or 10 ppt
152 bindsym Up resize shrink height 10 px or 10 ppt
153 bindsym Right resize grow width 10 px or 10 ppt
154
155 # back to normal: Enter or Escape or $mod+r
156 bindsym Return mode "default"
157 bindsym Escape mode "default"
158 bindsym $mod+r mode "default"
159}
160
161bindsym $mod+r mode "resize"
162
163# move floating windows with keys
164bindsym $mod+m mode "move" focus floating
165mode "move" {
166 bindsym $mod+Tab focus right
167
168 bindsym Left move left
169 bindsym Down move down
170 bindsym Up move up
171 bindsym Right move right
172
173 bindsym h move left
174 bindsym j move down
175 bindsym k move up
176 bindsym l move right
177
178 # back to normal: Enter or Escape
179 bindsym Return mode "default"
180 bindsym Escape mode "default"
181}
182
183for_window [window_type=dialog] floating enable
184bindsym XF86AudioRaiseVolume exec --no-startup-id amixer sset Speaker 3dB+
185bindsym XF86AudioLowerVolume exec --no-startup-id amixer sset Speaker 3dB-
186bindsym XF86AudioMute exec --no-startup-id amixer sset Speaker toggle
187bindsym XF86AudioPlay exec playerctl play-pause
188bindsym XF86AudioPause exec playerctl play-pause
189bindsym XF86AudioNext exec playerctl next
190bindsym XF86AudioPrev exec playerctl previous
191
192
193
194
195
196# i3bar
197bar {
198 font pango:Ubuntu Mono derivative Powerline 11
199 i3bar_command i3bar -t
200 status_command exec i3blocks
201# status_command i3status
202# output VGA-0
203 colors {
204 background $bar-color
205 }
206}
207
208for_window[class="^.*"] border pixel 5
209
210gaps inner 15
211gaps outer 0