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.

260 lines
7.8 KiB

# vim: set ft=i3config :
# set $terminal /usr/bin/lilyterm -s
set $terminal /usr/bin/evilvte
set $mod Mod4
client.background #000000
# ISO 10646 = Unicode
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
font pango:Cascadia Code PL 9
# new windows with border only
new_window 1pixel
# Use Mouse+Mod to drag floating windows to their wanted position
floating_modifier $mod
# Fullscreen (Mod+f)
bindsym $mod+f fullscreen
# Stacking (Mod+h)
bindsym $mod+h layout stacking
# Tabbed (Mod+w)
bindsym $mod+w layout tabbed
# Default (Mod+e)
bindsym $mod+e layout default
# Toggle tiling/floating of the current window (Mod+t)
bindsym $mod+t floating toggle
# Focus (Mod+ArrowKeys)
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Snap (Mod+Control+ArrowKeys)
#bindsym $mod+Control+Left layout stacking
#bindsym $mod+Control+Down layout stacking
#bindsym $mod+Control+Up layout stacking
#bindsym $mod+Control+Right layout stacking
# Move (Mod+Shift+ArrowKeys)
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
set $workspace1 "1: Chat 🗨"
set $workspace2 "2: Browser 🌍"
set $workspace3 "3: Mail ✉"
set $workspace4 "4"
set $workspace5 "5"
set $workspace6 "6"
set $workspace7 "7"
set $workspace8 "8"
set $workspace9 "9"
set $workspace10 "10: Music ♫"
# Workspaces (Mod+1/2/…)
bindcode $mod+10 workspace $workspace1
bindcode $mod+11 workspace $workspace2
bindcode $mod+12 workspace $workspace3
bindcode $mod+13 workspace $workspace4
bindcode $mod+14 workspace $workspace5
bindcode $mod+15 workspace $workspace6
bindcode $mod+16 workspace $workspace7
bindcode $mod+17 workspace $workspace8
bindcode $mod+18 workspace $workspace9
bindcode $mod+19 workspace $workspace10
bindsym $mod+x move workspace to output right
bindsym $mod+shift+x move workspace to output left
bindsym $mod+a workspace back_and_forth
# Move to Workspaces
bindcode $mod+Shift+10 move workspace $workspace1
bindcode $mod+Shift+11 move workspace $workspace2
bindcode $mod+Shift+12 move workspace $workspace3
bindcode $mod+Shift+13 move workspace $workspace4
bindcode $mod+Shift+14 move workspace $workspace5
bindcode $mod+Shift+15 move workspace $workspace6
bindcode $mod+Shift+16 move workspace $workspace7
bindcode $mod+Shift+17 move workspace $workspace8
bindcode $mod+Shift+18 move workspace $workspace9
bindcode $mod+Shift+19 move workspace $workspace10
# assign progs to workspaces
assign [class="TelegramDesktop"] → $workspace1
assign [class="discord"] → $workspace1
assign [class="Firefox"] → $workspace2
assign [class="aurora"] → $workspace2
assign [class="Opera"] → $workspace2
assign [class="Midori"] → $workspace2
assign [class="Chromium"] → $workspace2
assign [class="vivaldi-stable"] → $workspace2
assign [class="Vivaldi-stable"] → $workspace2
assign [class="Thunderbird"] → $workspace3
# floating mode for specific programs
for_window [class="XTerm"] floating enable
for_window [class="feh"] floating enable
for_window [class="xsane"] floating enable
# Mod+Enter starts a new terminal
bindcode $mod+36 exec $terminal
# playerctl config
bindcode 171 exec /usr/bin/playerctl next
bindcode 172 exec /usr/bin/playerctl play-pause
bindcode 173 exec /usr/bin/playerctl previous
bindcode 174 exec /usr/bin/playerctl stop
#bindsym XF86AudioPlay exec /usr/bin/playerctl play-pause
bindsym XF86Calculator exec /usr/bin/playerctl next
# Mod+Shift+q kills the current client
bindsym $mod+Shift+q kill
bindsym $mod+Shift+k kill client
bindsym $mod+p exec rofi-pass
bindsym $mod+i exec teiler
bindsym $mod+v exec rofi -show run
bindsym $mod+space exec rofi -show run
bindsym Mod1+Tab exec rofi -show window
bindsym $mod+s exec rofi -show ssh -terminal $terminal
bindsym $mod+comma split vertical
bindsym $mod+period split horizontal
#bind Mod+26 exec /usr/bin/thunar
# Mod+Shift+e exits i3
bindcode $mod+Shift+26 exit
#bind $mod+Shift+26 exec scrot
bindsym XF86Launch1 exec $terminal
bindsym $mod+b border toggle
bindsym $mod+o open
bindsym $mod+Shift+r restarts i3 inplace
bindsym $mod+Shift+w reload
#bindsym $mod+l exec i3lock -b -d
bindsym $mod+l exec ~/.i3/lock.sh
bindcode $mod+Control+10 exec ~/bin/volume.sh 10
bindcode $mod+Control+11 exec ~/bin/volume.sh 20
bindcode $mod+Control+12 exec ~/bin/volume.sh 30
bindcode $mod+Control+13 exec ~/bin/volume.sh 40
bindcode $mod+Control+14 exec ~/bin/volume.sh 50
bindcode $mod+Control+15 exec ~/bin/volume.sh 60
bindcode $mod+Control+16 exec ~/bin/volume.sh 70
bindcode $mod+Control+17 exec ~/bin/volume.sh 80
bindcode $mod+Control+18 exec ~/bin/volume.sh 90
bindcode $mod+Control+19 exec ~/bin/volume.sh 100
bindcode 122 exec ~/bin/volume.sh -5
bindcode 123 exec ~/bin/volume.sh +5
bindcode $mod+61 exec ~/bin/volume.sh -5
bindcode $mod+35 exec ~/bin/volume.sh +5
bindcode 121 exec ~/bin/volume.sh toggle-mute
bindsym $mod+g exec gvim
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# They resize the border in the direction you pressed, e.g.
# when pressing left, the window is resized so that it has
# more space on its left
# same bindings, but for the arrow keys
bindsym Left resize shrink left 10 px
bindsym Shift+Left resize grow left 10 px
bindsym Down resize shrink down 10 px
bindsym Shift+Down resize grow down 10 px
bindsym Up resize shrink up 10 px
bindsym Shift+Up resize grow up 10 px
bindsym Right resize shrink right 10 px
bindsym Shift+Right resize grow right 10 px
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Caps_Lock mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# colors
set $bg-color #285577
set $border-color #4c7899
set $inactive-bg-color #222222
set $inactive-border-color #333333
set $text-color #ffffff
set $inactive-text-color #888888
set $urgent-bg-color #e53935
set $indicator-color #7bbceb
# border background text indicator
client.focused $border-color $bg-color $text-color $indicator-color
client.unfocused $inactive-border-color $inactive-bg-color $inactive-text-color $indicator-color
client.focused_inactive $inactive-border-color $inactive-bg-color $inactive-text-color $indicator-color
client.urgent $urgent-bg-color $urgent-bg-color $text-color $indicator-color
hide_edge_borders both
bar {
tray_output primary
status_command i3blocks -c ~/.i3/i3blocks.conf
}
bindsym $mod+Shift+g mode "$mode_gaps"
mode "$mode_gaps" {
bindsym o mode "$mode_gaps_outer"
bindsym i mode "$mode_gaps_inner"
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "$mode_gaps_inner" {
bindsym plus gaps inner current plus 5
bindsym minus gaps inner current minus 5
bindsym 0 gaps inner current set 0
bindsym Shift+plus gaps inner all plus 5
bindsym Shift+minus gaps inner all minus 5
bindsym Shift+0 gaps inner all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym o mode "$mode_gaps_outer"
}
mode "$mode_gaps_outer" {
bindsym plus gaps outer current plus 5
bindsym minus gaps outer current minus 5
bindsym 0 gaps outer current set 0
bindsym Shift+plus gaps outer all plus 5
bindsym Shift+minus gaps outer all minus 5
bindsym Shift+0 gaps outer all set 0
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym i mode "$mode_gaps_inner"
}
# hintergrundbild setzen:
exec_always feh --bg-scale "$(find ~/bg_big -iname '*.jpg' -o -iname '*.png'|sort -R|head -n1)"
exec ~/.i3/autostart
exec picom -D 1 -I 0.05