all repos

dotfiles @ 99cc99c

i use rach linux btw

dotfiles/config/i3/config (view raw)

1
############# General #############
2
# Bind $MOD(super) key
3
set $mod Mod4
4
# Font
5
font monospace 10
6
font pango:JetBrains Mono 10
7
# Disable window title
8
default_border pixel
9
new_float pixel
10
# Borders
11
hide_edge_borders smart
12
13
############ Autostart ############
14
exec --no-startup-id exec picom -b
15
exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect <wifi-name> password <wifi-password> name net
16
exec --no-startup-id exec redshift-gtk 
17
exec --no-startup-id exec setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle"
18
exec --no-startup-id exec org.telegram.desktop
19
exec --no-startup-id exec discord
20
exec --no-startup-id exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
21
exec --no-startup-id ecec clipmenud
22
23
############ Key bindings #########
24
# Terminal
25
bindsym $mod+Return exec kitty
26
bindsym ctrl+Mod1+t exec kitty 
27
28
# Kill focus window
29
bindsym $mod+q kill
30
bindsym Mod1+F4 kill
31
32
# Program/Exit louncher
33
bindsym $mod+space exec "rofi -show drun -show cobi -show-icons"
34
bindsym $mod+Escape exec "rofi -show power-menu -show-icons -width 30 -lines 6 -modi power-menu:~/.config/rofi/rofi-power-menu"
35
# Restart i3wm
36
bindsym $mod+Shift+r restart
37
38
# Sceenshot
39
bindsym --release Print exec "scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png"
40
bindsym --release Shift+Print exec "scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png"
41
42
# Clipboard menu
43
bindsym $mod+c exec "CM_LAUNCHER=rofi clipmenu"
44
45
# Load program
46
bindsym $mod+F1 exec kitty -T=Ranger_FM ranger
47
bindsym $mod+F2 exec chromium
48
bindsym $mod+F3 exec subl
49
bindsym $mod+F4 exec notable
50
51
# Floating window
52
floating_modifier $mod
53
bindsym $mod+Shift+space floating toggle
54
bindsym $mod+Shift+f focus mode_toggle
55
56
# Fullscreen mode
57
bindsym $mod+f fullscreen toggle
58
bindsym $mod+F11 fullscreen toggle
59
60
# Splits
61
bindsym $mod+h split h
62
bindsym $mod+v split v
63
64
# Focus the parent container
65
bindsym $mod+a focus parent
66
67
# Change container layout(stacked, tabbed, toggle split)
68
bindsym $mod+s layout stacking
69
bindsym $mod+w layout tabbed
70
bindsym $mod+e layout toggle split
71
72
# Scratchpad
73
bindsym $mod+Shift+grave move scratchpad
74
bindsym $mod+grave scratchpad show, floating disable
75
76
# Move workspace on open window
77
for_window [urgent=["lastet"]] focus
78
focus_on_window_activation focus
79
80
######### Window preferens ########
81
assign [class="(?i)kitty"] $ws1
82
assign [class="(?i)chromium|firefox"] $ws2
83
assign [class="(?i)subl|code|typora"] $ws3
84
assign [class="(?i)thunar"] $ws4
85
assign [title="Notable|Simplenote"] $ws5
86
assign [class="(?i)telegram|discord"] $ws6
87
assign [title="KeePassXC"] $ws7
88
for_window [title="Ranger_FM"] move to workspace $ws4
89
for_window [class="Spotify"] move to workspace $ws10
90
91
##### Change containet focus ######
92
# Vim like keys container
93
bindsym $mod+j focus left
94
bindsym $mod+k focus down
95
bindsym $mod+l focus up
96
bindsym $mod+semicolon focus right
97
98
# Alternatively cursor keys
99
bindsym $mod+Left focus left
100
bindsym $mod+Down focus down
101
bindsym $mod+Up focus up
102
bindsym $mod+Right focus right
103
104
##### Move focused container ######
105
# Vim like keys
106
bindsym $mod+Shift+j move left
107
bindsym $mod+Shift+k move down
108
bindsym $mod+Shift+l move up
109
bindsym $mod+Shift+colon move right
110
111
# Alternatively cursor keys
112
bindsym $mod+Shift+Left move left
113
bindsym $mod+Shift+Down move down
114
bindsym $mod+Shift+Up move up
115
bindsym $mod+Shift+Right move right
116
117
############ Workspaces ###########
118
set $ws1 "1"
119
set $ws2 "2"
120
set $ws3 "3"
121
set $ws4 "4"
122
set $ws5 "5"
123
set $ws6 "6"
124
set $ws7 "7"
125
set $ws8 "8"
126
set $ws9 "9"
127
set $ws10 "10"
128
129
# Switch workspace
130
bindsym $mod+1 workspace $ws1
131
bindsym $mod+2 workspace $ws2
132
bindsym $mod+3 workspace $ws3
133
bindsym $mod+4 workspace $ws4
134
bindsym $mod+5 workspace $ws5
135
bindsym $mod+6 workspace $ws6
136
bindsym $mod+7 workspace $ws7
137
bindsym $mod+8 workspace $ws8
138
bindsym $mod+9 workspace $ws9
139
bindsym $mod+0 workspace $ws10
140
141
# Move focused container to workspace
142
bindsym $mod+Shift+1 move container to workspace $ws1
143
bindsym $mod+Shift+2 move container to workspace $ws2
144
bindsym $mod+Shift+3 move container to workspace $ws3
145
bindsym $mod+Shift+4 move container to workspace $ws4
146
bindsym $mod+Shift+5 move container to workspace $ws5
147
bindsym $mod+Shift+6 move container to workspace $ws6
148
bindsym $mod+Shift+7 move container to workspace $ws7
149
bindsym $mod+Shift+8 move container to workspace $ws8
150
bindsym $mod+Shift+9 move container to workspace $ws9
151
bindsym $mod+Shift+0 move container to workspace $ws10
152
153
########### Resize mode ###########
154
mode "resize" {
155
    bindsym j resize shrink width 10 px or 10 ppt
156
    bindsym k resize grow height 10 px or 10 ppt
157
    bindsym l resize shrink height 10 px or 10 ppt
158
    bindsym semicolon resize grow width 10 px or 10 ppt
159
160
    # same bindings, but for the arrow keys
161
    bindsym Left resize shrink width 10 px or 10 ppt
162
    bindsym Down resize grow height 10 px or 10 ppt
163
    bindsym Up resize shrink height 10 px or 10 ppt
164
    bindsym Right resize grow width 10 px or 10 ppt
165
166
    # back to normal: Enter or Escape or $mod+r
167
    bindsym Return mode "default"
168
    bindsym Escape mode "default"
169
    bindsym $mod+r mode "default"
170
}
171
bindsym $mod+r mode "resize"
172
173
############### Bar ###############
174
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
175
176
############## Colors #############
177
# class                 border   backgr   text     indicator child_border
178
client.focused          #268bd2  #268bd2  #ffffff  #268bd2   #268bd2
179
client.focused_inactive #000000  #000000  #ffffff  #000000   #000000
180
client.unfocused        #000000  #000000  #888888  #000000   #000000
181
client.urgent           #000000  #000000  #ffffff  #000000   #000000
182
client.placeholder      #000000  #000000  #ffffff  #000000   #000000
183
client.background       #ffffff