summaryrefslogblamecommitdiff
path: root/i3wm.conf
blob: f8e6ea228d6fcb0e62f61a3854480874b96daddd (plain) (tree)
1
2
3
4
5
6
7
8
9


                      




                        
              
           
             
 


                                          
 
                      
 
                                                  

                      



                    
                         
                           
                            
                                                                                                            
                                             






                                                                                                                        
 


                     
 



                                  
                      
                      

                                        
 


                    
 



                          

                           



                                                


                         
 










                           


                             
 



                               
 










                                                   


             
 
            
                    
                                

                          
                     




                                                      




                                         


        
 
















                                                                                                     
 

                                     






                               
                                    








                                                                     

































                                                                                                     
 
     
                               
                    
                 

                                                                    
 











                                                                     

 
 
               

 







                                                                             
 

                                                       


            


            
 

                                                                   
                           
 
                                             
# dotfiles -- i3config
# author: johannst

# helpful cmdline tools:
#  * xev
#  * xmodmap

# alt key
#set $mod Mod1
# super key
set $mod Mod4

#set $my_font xos4 Terminus
#set $my_font Noto Sans Mono
set $my_font Font Awesome 5 Brands Regular

font pango:$my_font 10

# $mod+mouse to move/rezie window in floating mode
floating_modifier $mod

#
# Basic Key Bindings
#

bindsym $mod+Shift+c kill
bindsym $mod+Shift+s reload
bindsym $mod+Shift+r restart
bindsym $mod+Shift+e exec "i3-nagbar -f '$my_font' -t warning -m 'Kill X-Sessions' -b 'Kill!' 'i3-msg exit'"
bindsym $mod+Return exec i3-sensible-terminal
# demnu
#bindsym $mod+d exec "dmenu_run -b -l 15 -nf '#bbbbbb' -nb '#222222' -sb '#ff8700' -sf '#ffffff' -fn '$my_font' -p '>_'"
#bindsym $mod+p exec "passmenu -b -l 15 -nf '#bbbbbb' -nb '#222222' -sb '#ff8700' -sf '#ffffff' -fn '$my_font' -p '>_'"
# rofi
bindsym $mod+d exec "rofi -show drun"
bindsym $mod+p exec "rofi -show pass"
bindsym $mod+Tab exec "rofi -show window"

#
# Layout Key Bindings
#

bindsym $mod+q layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split

bindsym $mod+v split h
bindsym $mod+s split v
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle

#
# Focus Key Bindings
#

bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right

bindsym $mod+a focus parent

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

#
# Navigation Key Bindings
#

bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10

#
# Move Container Key Bindings
#

bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right

bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10

#
# Resize Mode
#

# arrow f047
set $resize_mode (r)
bindsym $mod+r mode $resize_mode

# bindings for resize mode
mode "$resize_mode" {
	bindsym h resize shrink width 10 px or 10 ppt
	bindsym j resize grow height 10 px or 10 ppt
	bindsym k resize shrink height 10 px or 10 ppt
	bindsym l resize grow width 10 px or 10 ppt

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

#
# i3lock
#

#set $lock_cmd i3lock --inactivity-timeout 30s -d --ignore-empty-password -c 455a64 -i ~/.i3/lock.png
set $lock_cmd i3lock \
	--ignore-empty-password \
	-B=100 \
	--indicator \
	--indpos="100:800" \
	--radius 30 \
	--insidecolor=00000000 \
	--insidevercolor=00000000 \
	--insidewrongcolor=00000000 \
	--ringcolor=ffffff80 \
	--ringvercolor=fffffff0 \
	--ringwrongcolor=ff0000ff \
	--veriftext="" \
	--wrongtext="" \
	--keyhlcolor=00ff0080 \
	--bshlcolor=ff000080

bindsym $mod+Control+l exec $lock_cmd

#
# Power Mode
#

# lock f023
# moon f186
set $power_mode  (l)  (s)
bindsym $mod+Home mode "$power_mode"

mode "$power_mode" {
	bindsym l exec $lock_cmd, mode "default"
	bindsym s exec $lock_cmd && systemctl suspend, mode "default"

	bindsym Escape mode "default"
	bindsym Return mode "default"
}

#
# Color Definition
#

set $col_x_bla #000000
set $col_x_whi #FFFFFF
set $col_b_gra #5F676A
set $col_m_gra #888888
set $col_d_gra #333333
set $col_d_red #900000
set $col_b_blu #2E9EF4
set $col_d_ora #ff8700
set $col_d_tur #458588

#
# Colorscheme
#

# turn off window titles
# makes title-{border, body} not viewable
for_window [class="^.*"] border pixel 2

# class                 title-border    title-body      title-text      split-indicator window-border
client.focused          $col_b_gra      $col_b_gra      $col_x_whi      $col_b_blu      $col_b_gra
client.focused_inactive $col_d_gra      $col_d_gra      $col_x_whi      $col_b_blu      $col_d_gra
client.unfocused        $col_d_gra      $col_d_gra      $col_m_gra      $col_b_blu      $col_d_gra
client.urgent           $col_d_gra      $col_d_red      $col_x_whi      $col_d_red      $col_d_red
client.placeholder      $col_x_bla      $col_x_bla      $col_x_whi      $col_x_bla      $col_x_bla

client.background       $col_x_whi

#
# i3bar
#

bar {
	font pango: $my_font 10
	position top
	height 22
	status_command i3blocks -c ~/.config/i3/i3blocks.conf
	#status_command i3status --config ~/.config/i3/i3status.conf

	colors {
		background $col_x_bla
		statusline $col_x_whi
		#separator  $col_m_gra

		# class            border      background  text
		focused_workspace  $col_x_bla  $col_d_ora  $col_x_whi
		active_workspace   $col_x_bla  $col_x_bla  $col_x_whi
		inactive_workspace $col_x_bla  $col_x_bla  $col_m_gra
		urgent_workspace   $col_d_red  $col_d_red  $col_x_whi
		binding_mode       $col_d_tur  $col_d_tur  $col_x_whi
	}
}

#
# Function Keys
#

# Alsamixer controls
# bindsym XF86AudioRaiseVolume exec "amixer set Master 5%+"
# bindsym XF86AudioLowerVolume exec "amixer set Master 5%-"
# bindsym XF86AudioMute exec "amixer set Master toggle"
# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5%
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5%
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle

bindsym XF86MonBrightnessUp exec "xbacklight -inc 10"
bindsym XF86MonBrightnessDown exec "xbacklight -dec 10"

# PLAYGROUND

gaps outer 2
gaps inner 2


# pin applications to specific workspace
# helpfull to get name: 'xprop | grep WM_CLASS' (then click window)
#assign [class="Firefox"] 9

#% vim:fen:fdm=marker:fmr={{{,}}}:fdl=0:fdc=1