You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

180 lines
5.0 KiB

#############
# Variables #
#############
#
# Keys
#
set $mod Mod4
set $up k
set $down j
set $left h
set $right l
#
# Workspaces
#
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"
#################
# Configuration #
#################
font pango:monospace 10
default_border none
default_floating_border none
gaps inner 10
focus_follows_mouse yes
focus_on_window_activation urgent
for_window [all] title_window_icon on
# class border backgr. text indicator child_border
client.focused #4c7899 #285577 #ffffff #2e9ef4 #285577
client.focused_inactive #333333 #5f676a #ffffff #484e50 #5f676a
client.unfocused #333333 #222222 #888888 #292d2e #222222
client.urgent #2f343a #900000 #ffffff #900000 #900000
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
client.background #ffffff
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
tray_output primary
status_command i3status -c $i3statusconfig
position bottom
colors {
background #000000
statusline #ffffff
separator #666666
focused_workspace #bb4499 #bb4499 #ffffff
active_workspace #666666 #666666 #ffffff
inactive_workspace #222222 #222222 #888888
urgent_workspace #900000 #900000 #ffffff
binding_mode #900000 #900000 #ffffff
}
}
############
# Keybinds #
############
#
# i3
#
# reload the configuration file
bindsym $mod+Shift+r reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Control+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+q exec "i3-nagbar -t warning -m 'Really log out?' -B 'Yes, exit i3' 'i3-msg exit'"
#
# Media Keys
#
bindsym XF86AudioRaiseVolume exec --no-startup-id pamixer -i 5 && notify-send -h int:value:"$(pamixer --get-volume)" -h string:synchronous:volume "Volume: $(pamixer --get-volume-human)"
bindsym XF86AudioLowerVolume exec --no-startup-id pamixer -d 5 && notify-send -h int:value:"$(pamixer --get-volume)" -h string:synchronous:volume "Volume: $(pamixer --get-volume-human)"
bindsym XF86AudioMute exec --no-startup-id pamixer -t && notify-send -h int:value:"$(pamixer --get-volume)" -h string:synchronous:volume "Volume: $(pamixer --get-volume-human)"
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
bindsym XF86AudioStop exec --no-startup-id playerctl stop
bindsym XF86AudioPrev exec --no-startup-id playerctl previous
bindsym XF86AudioNext exec --no-startup-id playerctl next
#
# Launchers
#
bindsym $mod+Return exec alacritty
bindsym $mod+Print exec --no-startup-id maim pix/screenshots/$(date +%Y-%m-%dT%H-%M-%S).png
bindsym $mod+Shift+Print exec --no-startup-id maim -su pix/screenshots/$(date +%Y-%m-%dT%H-%M-%S).png
bindsym $mod+space exec --no-startup-id rofi -show-icons -show drun
bindsym $mod+Control+l exec --no-startup-id "pkill -u $USER -USR1 dunst; i3lock -c 000000 -fn; pkill -u $USER -USR2 dunst"
#
# Window management
#
floating_modifier $mod
bindsym $mod+Shift+c kill
# change focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Tab focus next
bindsym $mod+Shift+Tab focus prev
bindsym $mod+a focus parent
# move focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# move workspaces
bindsym $mod+Control+comma move workspace to output left
bindsym $mod+Control+period move workspace to output right
# split toggle
bindsym $mod+v split toggle
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
#
# Workspaces
#
# 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