#
# Core keybinds
#
	# Logo key. Use Mod1 for Alt.
	set $mod Mod4

	# Home row direction keys, like vim
	set $left h
	set $down j
	set $up k
	set $right l


#
# Sway settings
#
	# Reload the configuration file
	bindsym $mod+Shift+c reload

	# Exit sway (logs you out of your Wayland session)
	bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'


#
# Moving around
#
	# Move your focus around
	bindsym $mod+$left focus left
	bindsym $mod+$down focus down
	bindsym $mod+$up focus up
	bindsym $mod+$right focus right

	# Or use $mod+[up|down|left|right]
	bindsym $mod+Left focus left
	bindsym $mod+Down focus down
	bindsym $mod+Up focus up
	bindsym $mod+Right focus right


#
# Window management
#
	# Close windows
	bindsym $mod+Shift+q kill

	# Drag floating windows by holding down $mod and left mouse button.
	# Resize them with right mouse button + $mod.
	# Despite the name, also works for non-floating windows.
	# Change normal to inverse to use left mouse button for resizing and right
	# mouse button for dragging.
	floating_modifier $mod normal

	# Move the focused window with Shift
	bindsym $mod+Shift+$left move left
	bindsym $mod+Shift+$down move down
	bindsym $mod+Shift+$up move up
	bindsym $mod+Shift+$right move right

	# Ditto, with arrow keys
	bindsym $mod+Shift+Left move left
	bindsym $mod+Shift+Down move down
	bindsym $mod+Shift+Up move up
	bindsym $mod+Shift+Right move right

	# You can "split" the current object of your focus with
	# $mod+b or $mod+v, for horizontal and vertical splits
	# respectively.
	bindsym $mod+b splith
	bindsym $mod+v splitv

	# Switch the current container between different layout styles
	bindsym $mod+s layout stacking
	bindsym $mod+w layout tabbed
	bindsym $mod+e layout toggle split

	# Make the current focus fullscreen
	bindsym $mod+f fullscreen

	# Toggle the current focus between tiling and floating mode
	bindsym $mod+Shift+space floating toggle

	# Swap focus between the tiling area and the floating area
	bindsym $mod+space focus mode_toggle

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


#
# Container management
#
	# Resizing containers:
	mode "resize" {
		# left will shrink the containers width
		# right will grow the containers width
		# up will shrink the containers height
		# down will grow the containers height
		bindsym $left resize shrink width 10px
		bindsym $down resize grow height 10px
		bindsym $up resize shrink height 10px
		bindsym $right resize grow width 10px

		# ditto, with arrow keys
		bindsym Left resize shrink width 10px
		bindsym Down resize grow height 10px
		bindsym Up resize shrink height 10px
		bindsym Right resize grow width 10px

		# return to default mode
		bindsym Return mode "default"
		bindsym Escape mode "default"
	}
	bindsym $mod+r mode "resize"


#
# Workspaces
#
	# Note: workspaces can have any name you want, not just numbers.
	# We just use 1-10 as the default.
	# Switch to workspace
	bindsym $mod+1 workspace number 1
	bindsym $mod+2 workspace number 2
	bindsym $mod+3 workspace number 3
	bindsym $mod+4 workspace number 4
	bindsym $mod+5 workspace number 5
	bindsym $mod+6 workspace number 6
	bindsym $mod+7 workspace number 7
	bindsym $mod+8 workspace number 8
	bindsym $mod+9 workspace number 9
	bindsym $mod+0 workspace number 10

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

    # Move current workspace to other monitor
    bindsym $mod+grave move workspace to left

	
#
# Scratchpads
#
	# Create a "floating" focus for applications to claim individual scratchpads
	for_window [app_id="floating"] focus, floating enabled, border pixel 1, resize set width 700

	# Create a new scratchpad for each function key
	bindsym $mod+Shift+F1 mark "scratch1", move scratchpad
	bindsym $mod+F1 [con_mark="scratch1"] scratchpad show
	
	bindsym $mod+Shift+F2 mark "scratch2", move scratchpad
	bindsym $mod+F2 [con_mark="scratch2"] scratchpad show
	
	bindsym $mod+Shift+F3 mark "scratch3", move scratchpad
	bindsym $mod+F3 [con_mark="scratch3"] scratchpad show
	
	bindsym $mod+Shift+F4 mark "scratch4", move scratchpad
	bindsym $mod+F4 [con_mark="scratch4"] scratchpad show
	
	bindsym $mod+Shift+F5 mark "scratch5", move scratchpad
	bindsym $mod+F5 [con_mark="scratch5"] scratchpad show
	
	bindsym $mod+Shift+F6 mark "scratch6", move scratchpad
	bindsym $mod+F6 [con_mark="scratch6"] scratchpad show
	
	bindsym $mod+Shift+F7 mark "scratch7", move scratchpad
    bindsym $mod+F7 [con_mark="scratch7"] scratchpad show
	
	bindsym $mod+Shift+F8 mark "scratch8", move scratchpad
	bindsym $mod+F8 [con_mark="scratch8"] scratchpad show
	
	bindsym $mod+Shift+F9 mark "scratch9", move scratchpad
	bindsym $mod+F9 [con_mark="scratch9"] scratchpad show
	
	bindsym $mod+Shift+F10 mark "scratch10", move scratchpad
	bindsym $mod+F10 [con_mark="scratch10"] scratchpad show
	
	bindsym $mod+Shift+F11 mark "scratch11", move scratchpad
	bindsym $mod+F11 [con_mark="scratch11"] scratchpad show
	
	bindsym $mod+Shift+F12 mark "scratch12", move scratchpad
	bindsym $mod+F12 [con_mark="scratch12"] scratchpad show


# Programs
## Default
bindsym XF86MonBrightnessUp exec $brightnessup
bindsym XF86MonBrightnessDown exec $brightnessdown
bindsym XF86AudioRaiseVolume exec $volumeup
bindsym XF86AudioLowerVolume exec $volumedown
bindsym XF86AudioMute exec $volumemute

## Installed
bindsym $mod+d exec $launcher
bindsym $mod+Return exec $term
bindsym $mod+z exec $browser
bindsym $mod+n exec $explorer
bindsym $mod+Escape exec $lock
bindsym $mod+p exec $pass
bindsym $mod+t exec $task
bindsym $mod+Shift+t exec $task-alt
bindsym $mod+x exec $editor
bindsym $mod+c exec $mua
bindsym $mod+Tab exec $screenshot
bindsym $mod+m exec $calendar
bindsym $mod+Ctrl+h exec $keybind_helper
