etc/i3/config.m4

184 lines
5.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# vim:ft=conf:
changequote([,])
define([hostname], esyscmd([echo -n `hostname`]))
define([forloop], [pushdef([$1], [$2])_forloop($@)popdef([$1])])
define([_forloop],
[$4[]ifelse($1, [$3], [], [define([$1], incr($1))$0($@)])])
set $mod Mod4
font pango:monospace 7
new_window none
hide_edge_borders both
focus_on_window_activation urgent
floating_modifier $mod
bindsym $mod+Return exec alacritty
bindsym $mod+Shift+q kill
bindsym $mod+d exec rofi -show run
bindsym $mod+Tab exec rofi -show window
bindsym $mod+p exec ~/etc/my-rofi-pass
define([dir_bind], [
bindsym $mod+$2 focus $1
bindsym $mod+Shift+$2 move $1
bindsym $mod+Mod1+$2 move workspace to output $1
])
dir_bind(left, h) dir_bind(left, Left)
dir_bind(down, j) dir_bind(down, Down)
dir_bind(up, k) dir_bind(up, Up)
dir_bind(right, l) dir_bind(right, Right)
bindsym $mod+v split h
bindsym $mod+g split v
bindsym $mod+f fullscreen toggle
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+Shift+space floating toggle
bindsym $mod+Ctrl+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+b focus child
forloop([i], 1,9, [
bindsym $mod+i workspace i
bindsym $mod+Shift+i move container to workspace i
])
# 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 "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
ifelse(hostname, [petalius], [
# brightness control
bindsym XF86MonBrightnessDown exec light -U 10
bindsym XF86MonBrightnessUp exec light -A 10
bindsym Shift+XF86MonBrightnessDown exec light -U 1
bindsym Shift+XF86MonBrightnessUp exec light -A 1
])
bindsym Print exec ~/etc/toggle_mute.sh
ifelse(hostname, [petalius], [
bindsym Ctrl+Print exec ~/etc/toggle_mute.sh
])
# 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 windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows 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
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
mode "moveit" {
bindsym h move left 25 px
bindsym j move down 25 px
bindsym k move up 25 px
bindsym l move right 25 px
# same bindings, but for the arrow keys
bindsym Left move left 25 px
bindsym Down move down 25 px
bindsym Up move up 25 px
bindsym Right move right 25 px
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+m mode "moveit"
define([defcolor], [define(base$1, ["[#]$2"])])
include([base16.m4])
client.focused base0D base0D base00 base01
client.focused_inactive base02 base02 base03 base01
client.unfocused base01 base01 base03 base01
client.urgent base02 base08 base07 base08
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
# font pango:Noto Sans Mono CJK JP 8
# font pango:Fira Mono 8.5
font pango:DejaVu Sans Mono 8
ifelse(hostname, [flammea], [
tray_output DisplayPort-0
])
colors {
separator "#999999"
background "#000000"
statusline base05
focused_workspace "#777777" "#777777" "#ffffff"
active_workspace "#444444" "#444444" "#ffffff"
inactive_workspace "#333333" "#333333" "#666666"
urgent_workspace "#ff4500" "#ff4500" "#ffffff"
}
}
exec --no-startup-id gsd-xsettings
exec --no-startup-id nm-applet
# exec --no-startup-id pa-applet
exec --no-startup-id pasystray
exec --no-startup-id blueman-applet
exec --no-startup-id unclutter --timeout 1
bindsym $mod+Ctrl+l exec --no-startup-id loginctl lock-session
exec --no-startup-id xset s 300
exec --no-startup-id xss-lock -lv /home/gebner/etc/lock.sh
exec_always --no-startup-id xsetroot -solid grey
exec_always --no-startup-id feh --bg-fill /home/gebner/Desktop/background.png
ifelse(hostname, [theba], [
workspace 1 output eDP1
workspace 9 output DP2 # VGA
])
ifelse(hostname, [flammea], [
exec --no-startup-id ~/.screenlayout/studyroom.sh
])
ifelse(hostname, [decoysnail], [
exec --no-startup-id ~/.screenlayout/desk.sh
])
# pdfpc
assign [[window_role="presenter"]] 1
assign [[window_role="presentation"]] 9