aboutsummaryrefslogtreecommitdiff
path: root/home/jack/.config/i3/config
blob: 70694e3d59f0a247c60383ecc8a05ee25b4637fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# i3 config file (v4)

default_border pixel 3
default_floating_border pixel 3
gaps inner 9

# class          border  backgr. text    flag    child_border
client.focused   #458588 #458588 #7C6f64 #458588 #458588
client.unfocused #928374 #928374 #7C6f64 #928374 #928374
client.urgent    #CC241D #CC241D #7C6f64 #CC241D #CC241D

exec_always --no-startup-id ~/.config/scripts/polybar.sh

set $mod Mod4
set $left h
set $down j
set $up k
set $right l

### key bindings 
# applications

bindsym $mod+q kill
bindsym $mod+t exec       st
bindsym $mod+f exec       firefox
bindsym $mod+r exec       dmenu_run
bindsym $mod+p exec       maim -s | xclip -selection clipboard -t image/png -i
bindsym $mod+Shift+p exec maim --select ~/Pictures/$(date +%s).png
bindsym $mod+Escape  exec slock

# audio
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute        exec pactl set-sink-mute   @DEFAULT_SINK@ toggle

# lighting
bindsym XF86MonBrightnessDown exec brightnessctl -q set 10%-
bindsym XF86MonBrightnessUp   exec brightnessctl -q set +10%
bindsym XF86KbdBrightnessDown exec brightnessctl -q --device='smc::kbd_backlight' set 10%-
bindsym XF86KbdBrightnessUp   exec brightnessctl -q --device='smc::kbd_backlight' set +10%

# reload configuration file
bindsym $mod+Shift+c reload
# exit i3 session
bindsym $mod+Shift+e exit

# change focused container 
bindsym $mod+$left  focus left
bindsym $mod+$down  focus down
bindsym $mod+$up    focus up
bindsym $mod+$right focus right

# move focused window
bindsym $mod+Shift+$left  move left
bindsym $mod+Shift+$down  move down
bindsym $mod+Shift+$up    move up
bindsym $mod+Shift+$right move right

# drag floating windows: $mod + left mouse button
floating_modifier $mod

# switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6

# move focused window to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6

# change whether windows open horizontally or
# vertically to currently open windows, respectively
bindsym $mod+b splith
bindsym $mod+v splitv

# switch focused container between different layouts
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split

# make focused window fullscreen
bindsym $mod+Shift+f fullscreen

# toggle focused window between floating and tiling
bindsym $mod+Shift+space floating toggle

# switch focus between tiling and floating windows
bindsym $mod+space focus mode_toggle

# scratchpad: bag for holding windows (like minimize)
# move focused window to scratchpad
bindsym $mod+n move scratchpad

# cycle through windows in scratchpad
bindsym $mod+Shift+n scratchpad show