etc/config/sway/config.m4

185 lines
5.1 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 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'"
# TODO
# 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
# ])
# 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:DejaVu Sans, Noto Sans CJK JP 8
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 nm-applet
# 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 300 /home/gebner/etc/swaylock.sh \
timeout 600 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
before-sleep /home/gebner/etc/swaylock.sh
output * bg gray solid_color
output * bg /home/gebner/Desktop/background.png fill
input * xkb_layout us
input * xkb_variant altgr-intl
input * xkb_options caps:ctrl_modifier
seat * hide_cursor 1200
# fcitx cannot capture super+space
bindsym $mod+Space exec fcitx-remote -t
ifelse(hostname, [theba], [
workspace 1 output eDP1
workspace 9 output DP2 # VGA
])
# TODO
ifelse(hostname, [archachatina], [
output DP-1 pos 0 0
output DP-2 transform 270
])
ifelse(hostname, [decoysnail], [
# exec --no-startup-id ~/.screenlayout/desk.sh
])
# pdfpc
assign [[window_role="presenter"]] 1
assign [[window_role="presentation"]] 9