about summary refs log tree commit diff
path: root/modules/i3/i3.conf
blob: 7ef5fa033c63033a5476038bc46e72a5efb74fe6 (plain) (blame)
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# default modifier key
set $mod Mod4

# we want to have a VT-style font :-)
font -dosemu-vga-medium-r-normal--17-160-75-75-c-80-ibm-cp866

# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod

# reasonable defaults!
default_orientation horizontal
workspace_layout tabbed
popup_during_fullscreen ignore

# start a terminal
bindsym $mod+Shift+Return exec --no-startup-id @xterm@/bin/xterm

# kill focused window
bindsym $mod+Shift+C kill

# start dmenu (a program launcher)
bindsym $mod+p exec --no-startup-id @dmenu@/bin/dmenu_run

# set background
exec @xsetroot@/bin/xsetroot -solid black

# audio controls
bindsym XF86AudioLowerVolume exec @pvolctrl@/bin/pvolctrl -10
bindsym XF86AudioRaiseVolume exec @pvolctrl@/bin/pvolctrl 10
bindsym XF86AudioMute exec @pvolctrl@/bin/pvolctrl 0

# change/move focus
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+H move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+T move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+N move up
bindsym $mod+Shift+Right move right
bindsym $mod+Shift+S move right

bindsym $mod+Left focus left
bindsym $mod+h focus left
bindsym $mod+Down focus down
bindsym $mod+t focus down
bindsym $mod+Up focus up
bindsym $mod+n focus up
bindsym $mod+Right focus right
bindsym $mod+s focus right

# split in horizontal orientation
bindsym $mod+i split h

# split in vertical orientation
bindsym $mod+d split v

# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen

# change container layout (stacked, tabbed, default)
bindsym $mod+apostrophe layout stacking
bindsym $mod+comma layout tabbed
bindsym $mod+period layout default

# toggle tiling / floating
bindsym $mod+Shift+space floating toggle

# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle

# focus the parent container
bindsym $mod+a focus parent

# focus the child container
bindsym $mod+semicolon focus child

# reload the configuration file
bindsym $mod+Shift+L reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+R restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+Q exit

# resize window (you can also use the mouse for that)
mode "resize" {
    # These bindings trigger as soon as you enter the resize mode

    # They resize the border in the direction you pressed, e.g.
    # when pressing left, the window is resized so that it has
    # more space on its left

    bindsym Left resize shrink left 10 px or 10 ppt
    bindsym h resize shrink left 10 px or 10 ppt
    bindsym Down resize shrink down 10 px or 10 ppt
    bindsym t resize shrink down 10 px or 10 ppt
    bindsym Up resize shrink up 10 px or 10 ppt
    bindsym n resize shrink up 10 px or 10 ppt
    bindsym Right resize shrink right 10 px or 10 ppt
    bindsym s resize shrink right 10 px or 10 ppt

    bindsym Shift+Left resize grow left 10 px or 10 ppt
    bindsym Shift+H resize grow left 10 px or 10 ppt
    bindsym Shift+Down resize grow down 10 px or 10 ppt
    bindsym Shift+T resize grow down 10 px or 10 ppt
    bindsym Shift+Up resize grow up 10 px or 10 ppt
    bindsym Shift+N resize grow up 10 px or 10 ppt
    bindsym Shift+Right resize grow right 10 px or 10 ppt
    bindsym Shift+S resize grow right 10 px or 10 ppt

    # back to normal: Enter or Escape
    bindsym Return mode "default"
    bindsym Escape mode "default"
}

bindsym $mod+r mode "resize"

# workspace configuration
@wsConfig@

# ratmenu should be as unintrusive as possible
for_window [class="^ratmenu$"] floating enable
for_window [class="^ratmenu$"] border none

# various app cruft
for_window [class="^Dia$"] floating enable

# bar configuration
@barConfig@