# i3 config file (v4)
# Please see https://i3wm.org/docs/userguide.html for a complete reference!

set $mod Mod1

# Font for window titles
font pango:unscii 12

# keybindings
exec_always --no-startup-id sxhkd

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

# start pulseaudio
exec --no-startup-id pulseaudio --start

# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"

# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10

# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10

# reload the configuration file
bindsym $mod+Shift+c 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+e exec [ "Yes." = $(printf "No.\nYes." | dmenu -p "You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.") ] && i3-msg exit

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

	# Pressing left will shrink the window’s width.
	# Pressing right will grow the window’s width.
	# Pressing up will shrink the window’s height.
	# Pressing down will grow the window’s height.
	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 or $mod+r
	bindsym Return mode "default"
	bindsym Escape mode "default"
	bindsym $mod+r mode "default"
}

bindsym $mod+r mode "resize"

# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
	status_command i3status
	separator_symbol "  //  "

#	defaults
#	colors {
#		background	#ffffff
#		statusline	#000000
#		separator	#ff0000
#		focused_workspace	#4c7899	#285577	#ffffff
#		active_workspace	#333333	#5f676a	#ffffff
#		inactive_workspace	#333333	#222222	#888888
#		urgent_workspace	#2f343a	#900000	#ffffff
#		binding_mode		#2f343a	#900000	#ffffff
#	}

	colors {
		background	#ffdbdb
		statusline	#000000
		separator	#ff0000
		#			border	bg	text
		focused_workspace	#ff0000	#ff0000	#ffffff
		active_workspace	#ffffff	#ffffff	#000000
		inactive_workspace	#000000	#000000	#ffffff
		urgent_workspace	#2f343a	#900000	#ff0000
		binding_mode		#2f343a	#900000	#ffffff
	}
}

# color customization
# class			border	bg	text  indicator	child_border
client.focused		#ff0000	#ffffff	#ff0000	#2e9ef4	#ff0000
client.focused_inactive	#ffffff	#ffffff	#000000	#484e50	#000000
client.unfocused	#000000	#000000	#ff0000	#292d2e	#ffffff
client.urgent		#900000	#900000	#ffffff	#900000	#900000
client.placeholder	#000000	#0c0c0c	#ffffff	#000000	#0c0c0c

client.background	#ffffff

# Wallpaper
exec --no-startup-id feh --bg-center /home/trinity/Pictures/Wallpapers/akirablast.jpg

# moving workspaces
bindsym $mod+Shift+greater move container to output right
bindsym $mod+Shift+less move container to output left

# Gaps
#gaps inner 10
#gaps outer 10
#gaps horizontal 10
#gaps vertical 10
#gaps top 10
#gaps right 10
#gaps bottom 10
#gaps left 10

# disables titlebars
new_window 1pixel
