all repos — dotfiles @ 87f4bcb99abd09dd70f16af31e135f4d0d7488ea

my *nix dotfiles

i3/config (view raw)

  1#    _ _____                     _____      
  2#   (_)__  /   _________  ____  / __(_)___ _
  3#  / / /_ <   / ___/ __ \/ __ \/ /_/ / __ `/
  4# / /___/ /  / /__/ /_/ / / / / __/ / /_/ / 
  5#/_//____/   \___/\____/_/ /_/_/ /_/\__, /  
  6#                                  /____/   
  7
  8
  9
 10set $mod Mod4
 11
 12# set fonts in funky way
 13font pango: SF Mono SemiBold 12
 14# for_window [class=".*"] title_format "<span font='SF Mono SemiBold 11'> › %title</span>"
 15# Use Mouse+$mod to drag floating windows to their wanted position
 16floating_modifier $mod
 17for_window [class="^.*"] border none
 18
 19# start a terminal
 20bindsym $mod+Return exec xfce4-terminal
 21for_window [class="Telegram"] floating enable
 22
 23# kill focused window
 24bindsym $mod+Shift+q kill
 25
 26# lock the screen
 27bindsym $mod+Ctrl+l exec ~/bin/lock.sh
 28
 29# start rofi (an alternative to dmenu)
 30bindsym $mod+d exec "rofi -show run"
 31
 32# disable title bar
 33#new_window pixel 2
 34new_window normal 0
 35
 36# change focus
 37bindsym $mod+h focus left
 38bindsym $mod+j focus down
 39bindsym $mod+k focus up
 40bindsym $mod+l focus right
 41
 42# alternatively, you can use the cursor keys:
 43bindsym $mod+Left focus left
 44bindsym $mod+Down focus down
 45bindsym $mod+Up focus up
 46bindsym $mod+Right focus right
 47
 48# move focused window
 49bindsym $mod+Shift+h move left
 50bindsym $mod+Shift+j move down
 51bindsym $mod+Shift+k move up
 52bindsym $mod+Shift+l move right
 53
 54# alternatively, you can use the cursor keys:
 55bindsym $mod+Shift+Left move left
 56bindsym $mod+Shift+Down move down
 57bindsym $mod+Shift+Up move up
 58bindsym $mod+Shift+Right move right
 59
 60# split in horizontal orientation
 61bindsym $mod+g split h
 62
 63# split in vertical orientation
 64bindsym $mod+v split v
 65
 66# enter fullscreen mode for the focused container
 67bindsym $mod+f fullscreen toggle
 68
 69# change container layout (stacked, tabbed, toggle split)
 70bindsym $mod+s layout stacking
 71bindsym $mod+w layout tabbed
 72bindsym $mod+e layout toggle split
 73
 74# toggle tiling / floating
 75bindsym $mod+Shift+space floating toggle
 76
 77# change focus between tiling / floating windows
 78bindsym $mod+space focus mode_toggle
 79
 80# focus the parent container
 81bindsym $mod+a focus parent
 82
 83# focus the child container
 84bindsym $mod+x focus child
 85
 86# switch to workspace
 87bindsym $mod+1 workspace 1
 88bindsym $mod+2 workspace 2
 89bindsym $mod+3 workspace 3
 90bindsym $mod+4 workspace 4
 91bindsym $mod+5 workspace 5
 92bindsym $mod+6 workspace 6
 93bindsym $mod+7 workspace 7
 94bindsym $mod+8 workspace 8
 95bindsym $mod+9 workspace 9
 96
 97
 98# move focused container to workspace
 99bindsym $mod+Shift+1 move container to workspace 1
100bindsym $mod+Shift+2 move container to workspace 2
101bindsym $mod+Shift+3 move container to workspace 3
102bindsym $mod+Shift+4 move container to workspace 4
103bindsym $mod+Shift+5 move container to workspace 5
104bindsym $mod+Shift+6 move container to workspace 6
105bindsym $mod+Shift+7 move container to workspace 7
106bindsym $mod+Shift+8 move container to workspace 8
107bindsym $mod+Shift+9 move container to workspace 9
108
109
110
111# reload the configuration file                  
112bindsym $mod+Shift+c reload                      
113# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
114bindsym $mod+Shift+r restart
115
116# resize window (you can also use the mouse for that)
117mode "resize" {
118        # These bindings trigger as soon as you enter the resize mode
119
120        # Pressing left will shrink the window’s width.
121        # Pressing right will grow the window’s width.
122        # Pressing up will shrink the window’s height.
123        # Pressing down will grow the window’s height.
124        bindsym h resize shrink width 15 px or 15 ppt
125        bindsym j resize grow height 15 px or 15 ppt
126        bindsym k resize shrink height 15 px or 15 ppt
127        bindsym l resize grow width 15 px or 15 ppt
128
129        # same bindings, but for the arrow keys
130        bindsym Left resize shrink width 10 px or 10 ppt
131        bindsym Down resize grow height 10 px or 10 ppt
132        bindsym Up resize shrink height 10 px or 10 ppt
133        bindsym Right resize grow width 10 px or 10 ppt
134
135        # back to normal: Enter or Escape
136        bindsym Return mode "default"
137        bindsym Escape mode "default"
138}
139
140# assign windows to workspaces
141
142assign [class="Steam"] $tag4
143assign [class="Battle.net.exe"] $tag5
144assign [class="firefox"] $tag1
145assign [class="spotify"] $tag3
146
147# selectively enable floating
148
149for_window [class="Steam"] floating enable
150for_window [class="Keybase"] floating enable
151for_window [class="Battle.net.exe"] floating enable
152
153bindsym $mod+r mode "resize"
154
155## colors
156
157set $base00 #212121
158set $base01 #303030
159set $base02 #353535
160set $base03 #4a4a4a
161set $base04 #b2ccd6
162set $base05 #eeffff
163set $base06 #eeffff
164set $base07 #ffffff
165set $base08 #f07178
166set $base09 #f78c6c
167set $base0A #ffcb6b
168set $base0B #c3e88d
169set $base0C #89ddff
170set $base0D #82aaff
171set $base0E #c792ea
172set $base0F #ff5370
173
174# Basic color configuration using the Base16 variables for windows and borders.
175# Property Name         Border  BG      Text    Indicator Child Border
176client.focused          $base05 $base05 $base00 $base05 $base05
177client.focused_inactive $base01 $base01 $base05 $base03 $base01
178client.unfocused        $base00 $base00 $base05 $base03 $base01
179client.urgent           $base08 $base08 $base00 $base08 $base08
180client.placeholder      $base00 $base00 $base05 $base00 $base00
181client.background       $base07
182# smart_gaps on
183# smart_borders on
184
185
186# executions
187exec xrdb -load ~/.Xresources
188exec compton &
189exec xautolock -time 7 -locker ~/bin/lock.sh
190exec_always --no-startup-id ~/bin/bar.sh
191exec feh --bg-fill ~/.wall
192exec_always --no-startup-id ~/.local/bin/flashfocus
193exec_always dunst
194exec --no-startup-id udiskie -ans &
195
196# cycle workspaces
197bindsym $mod+Tab workspace back_and_forth
198bindsym $mod+q workspace next
199
200# rofi-pass
201bindsym $mod+p exec "rofi-pass"
202
203# volume controls
204bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%
205bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%
206bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle
207
208# brightness controls
209bindsym XF86MonBrightnessUp exec xbacklight -inc 5
210bindsym XF86MonBrightnessDown exec xbacklight -dec 5
211
212# media player controls
213
214bindsym XF86AudioPlay exec playerctl play
215bindsym XF86AudioPause exec playerctl pause
216bindsym XF86AudioNext exec playerctl next
217bindsym XF86AudioPrev exec playerctl previous