# 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($@)])]) exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP set $mod Mod4 font pango:monospace 8 default_border 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 ~/etc/rofi-windows bindsym $mod+shift+Tab exec ~/etc/rofi-windows movehere 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 bindsym $mod+Shift+r exec bash -c "sleep 1; swaymsg reload" 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 --locked XF86AudioPlay exec playerctl play bindsym --locked XF86AudioPause exec playerctl pause bindsym --locked XF86AudioNext exec playerctl next bindsym --locked XF86AudioPrev exec playerctl previous # 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 # 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 bar { swaybar_command waybar } # Start i3bar to display a workspace bar (plus the system information i3status # finds out, if available) # bar { # swaybar_command waybar # status_command i3status # font pango:DejaVu Sans, Noto Sans CJK JP 11 # icon_theme Adwaita # # tray_output * # # colors { # separator base03 # background base01 # statusline base05 # focused_workspace base0C base0D base00 # active_workspace base02 base02 base07 # inactive_workspace base01 base01 base03 # urgent_workspace base08 base08 base07 # } # } exec --no-startup-id mako exec --no-startup-id gsd-xsettings exec --no-startup-id fcitx exec --no-startup-id nm-applet --indicator # exec --no-startup-id pa-applet # exec --no-startup-id blueman-applet bindsym $mod+Ctrl+l exec --no-startup-id ~/etc/swaylock.sh exec swayidle -w \ timeout 240 /home/gebner/etc/swaylock.sh \ timeout 330 'swaymsg "output * dpms off"' \ resume 'swaymsg "output * dpms on"' \ before-sleep /home/gebner/etc/swaylock.sh output * bg /home/gebner/Desktop/background.png fill "#aaaaaa" input * xkb_layout us input * xkb_variant altgr-intl input * xkb_options ctrl:nocaps # seat * hide_cursor 1200 # fcitx cannot capture super+space bindsym $mod+Space exec fcitx-remote -t ifelse(hostname, [flammea], [ define(bigmonitor, "BenQ Corporation BenQ LCD 58F01595SL0") define(smallmonitor, "Dell Inc. DELL U2713HM 7JNY549C813S") define(television, "Samsung Electric Company SAMSUNG 0x00000001") define(projector, "BenQ Corporation BenQ PJ 0x0000057F") output bigmonitor pos 0 0 res 3840x2160 output smallmonitor pos 3840 0 res 2560x1440 transform 270 output projector pos 455 2758 output television pos 2733 2758 workspace 8 output television workspace 9 output projector input "9580:109:HUION_Huion_Tablet_Pen" { map_to_output bigmonitor } bindsym $mod+f11 output bigmonitor dpms off, output smallmonitor dpms off bindsym $mod+shift+f11 output bigmonitor dpms on, output smallmonitor dpms on ]) ifelse(hostname, [decoysnail], [ output DP-2 pos 0 0 res 2560x1440 output DP-1 pos 2560 0 res 1920x1200 transform 90 # exec --no-startup-id ~/.screenlayout/desk.sh ]) ifelse(hostname, [petalius], [ output eDP-1 pos 0 0 res 2560x1440 scale 1 ]) # pdfpc assign [[window_role="presenter"]] 1 assign [[window_role="presentation"]] 9