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.

277 lines
8.5 KiB

# Input configuration ──────────────────────────────────────────────────────────
[input]
xkb_layout = de
xkb_variant = us
#mouse_accel_profile = flat
# I like to use this with my external mouse but I have not configured it
# Core options ─────────────────────────────────────────────────────────────────
[core]
plugins = \
alpha \
animate \
autostart \
command \
fast-switcher \
grid \
idle \
invert \
move \
oswitch \
place \
resize \
switcher \
vswitch \
window-rules \
wm-actions \
wrot \
zoom \
expo \
follow-focus \
blur \
scale
background_color = 0 0 0 1
# Close focused window.
close_top_view = <super> <shift> KEY_Q | <alt> KEY_F4
# Workspaces arranged into a grid: 3 × 3.
vwidth = 5
vheight = 5
# Prefer client-side decoration or server-side decoration
preferred_decoration_mode = server
[place]
mode = cascade
# Mouse bindings ───────────────────────────────────────────────────────────────
# Drag windows by holding down Super and left mouse button.
[move]
activate = <super> BTN_LEFT
# Resize them with right mouse button + Super.
[resize]
activate = <super> BTN_RIGHT
# Zoom in the desktop by scrolling + Super.
[zoom]
modifier = <super>
# Change opacity by scrolling with Super + Alt.
[alpha]
modifier = <super> <alt>
# Rotate windows with the mouse.
[wrot]
activate = <super> <ctrl> BTN_RIGHT
# Startup commands ─────────────────────────────────────────────────────────────
[autostart]
#background = feh Downloads/milad-fakurian-seA-FPPXL-M-unsplash.jpg
automatic_output_configuration = kanshi
notification_daemon = mako
information_bar = waybar
#gamma = gammastep -l 7:51 -t 6500:3000 -b 1:0.8
idle = swayidle before-sleep export LAST_BRIGHTNESS=$(light -G) && light -S 1 && swaylock -i Downloads/lock.png -u && light -S $LAST_BRIGHTNESS
#idle = swayidle before-sleep swaylock --color 000000
portal = /usr/libexec/xdg-desktop-portal
element_dekstop = element-desktop
firefox_main = firefox
[window-rules]
rule_element_desktop_0 = on created if app_id is "element-desktop" then assign_workspace 2 5
rule_element_desktop_1 = on created if app_id is "element-desktop" then maximise
# Applications ─────────────────────────────────────────────────────────────────
[command]
binding_terminal = <super> KEY_ENTER
command_terminal = kitty
binding_super_terminal = <super> <shift> KEY_ENTER
command_super_terminal = kitty mosh root@map-services.in-nue.evl.li
binding_qalculate = <super> KEY_Q
command_qalculate = qalculate-gtk
binding_launcher = <super> KEY_D
command_launcher = bemenu-run --fn "atkinson hyperlegible[15]" -b -ip ">" -W 0.8
binding_lock = <super> KEY_L
# command_lock = swaylock --color 000000
command_lock = export LAST_BRIGHTNESS=$(light -G) && light -S 1 && swaylock -i Downloads/lock.png -u && light -S $LAST_BRIGHTNESS
binding_suspend = <super> <shift> KEY_S
# command_suspend = swaylock --color 000000 & systemctl suspend
command_suspend = export LAST_BRIGHTNESS=$(light -G) && light -S 1 && swaylock -i Downloads/lock.png -u & systemctl suspend & light -S 100
binding_hibrenate = <super> <shift> <alt> KEY_S
command_hibrenate = systemctl hibrenate
# Logout
# https://github.com/ArtsyMacaw/wlogout
binding_logout = <super> KEY_ESC
command_logout = wlogout
# Screenshots
# https://wayland.emersion.fr/grim/
# https://wayland.emersion.fr/slurp/
binding_screenshot = <super> KEY_P
command_screenshot = grimshot copy area
binding_screenshot2 = <print>
command_screenshot2 = grimshot copy area
binding_screenshot_interactive = <shift> KEY_PRINT
command_screenshot_interactive = slurp | grim -g - $(date '+%F_%T').webp
# Volume controls
repeatable_binding_volume_up = KEY_VOLUMEUP
command_volume_up = pactl set-sink-volume @DEFAULT_SINK@ +5%
repeatable_binding_volume_down = KEY_VOLUMEDOWN
command_volume_down = pactl set-sink-volume @DEFAULT_SINK@ -5%
binding_mute = KEY_MUTE
command_mute = pactl set-sink-mute @DEFAULT_SINK@ toggle
# Screen brightness
# https://haikarainen.github.io/light/
repeatable_binding_light_up = KEY_BRIGHTNESSUP
command_light_up = light -A 5
repeatable_binding_light_down = KEY_BRIGHTNESSDOWN
command_light_down = light -U 5
# Windows ──────────────────────────────────────────────────────────────────────
# Actions related to window management functionalities.
#
# Example configuration:
#
[wm-actions]
#toggle_fullscreen = <super> KEY_F
toggle_always_on_top = <super> KEY_X
# toggle_sticky = <super> <shift> KEY_X
# Position the windows in certain regions of the output.
[grid]
#
# ⇱ ↑ ⇲ │ 7 8 9
# ← f → │ 4 5 6
# ⇱ ↓ ⇲ d │ 1 2 3 0
# ‾ ‾
slot_bl = <super> KEY_KP1
slot_b = <super> KEY_KP2
slot_br = <super> KEY_KP3
slot_l = <super> KEY_LEFT | <super> KEY_KP4
slot_c = <super> KEY_UP | <super> KEY_KP5
slot_r = <super> KEY_RIGHT | <super> KEY_KP6
slot_tl = <super> KEY_KP7
slot_t = <super> KEY_KP8
slot_tr = <super> KEY_KP9
# Restore default.
restore = <super> KEY_DOWN | <super> KEY_KP0
# Change active window with an animation.
[switcher]
next_view = <alt> KEY_TAB
prev_view = <alt> <shift> KEY_TAB
# Simple active window switcher.
[fast-switcher]
activate = <alt> KEY_ESC
# Workspaces ───────────────────────────────────────────────────────────────────
# Switch to workspace.
[vswitch]
binding_left = <ctrl> <super> KEY_LEFT
binding_down = <ctrl> <super> KEY_DOWN
binding_up = <ctrl> <super> KEY_UP
binding_right = <ctrl> <super> KEY_RIGHT
# Move the focused window with the same key-bindings, but add Shift.
with_win_left = <ctrl> <super> <shift> KEY_LEFT
with_win_down = <ctrl> <super> <shift> KEY_DOWN
with_win_up = <ctrl> <super> <shift> KEY_UP
with_win_right = <ctrl> <super> <shift> KEY_RIGHT
# i3-like bindings
binding_1 = <super> KEY_1
binding_2 = <super> KEY_2
binding_3 = <super> KEY_3
binding_4 = <super> KEY_4
binding_5 = <super> KEY_5
binding_6 = <super> KEY_6
binding_7 = <super> KEY_7
binding_8 = <super> KEY_8
binding_9 = <super> KEY_9
binding_10 = <super> KEY_0
send_win_1 = <super> <shift> KEY_1
send_win_2 = <super> <shift> KEY_2
send_win_3 = <super> <shift> KEY_3
send_win_4 = <super> <shift> KEY_4
send_win_5 = <super> <shift> KEY_5
send_win_6 = <super> <shift> KEY_6
send_win_7 = <super> <shift> KEY_7
send_win_8 = <super> <shift> KEY_8
send_win_9 = <super> <shift> KEY_9
send_win_10 = <super> <shift> KEY_0
duration = 0
# Outputs ──────────────────────────────────────────────────────────────────────
# Invert the colors of the whole output.
[invert]
toggle = <super> KEY_I
# Rules ────────────────────────────────────────────────────────────────────────
# Example configuration:
#
# [window-rules]
# maximize_alacritty = on created if app_id is "Alacritty" then maximize
#
# You can get the properties of your applications with the following command:
# $ WAYLAND_DEBUG=1 alacritty 2>&1 | kak
#
# See Window rules for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration#window-rules
[animate]
close_animation = fade
open_animation = fade
duration = 100
fire_particles = 32
fire_particle_size = 16
[wobbly]
friction = 5
spring_k = 100
grid_resolution = 7
[follow-focus]
raise_on_top = false
[expo]
toggle = <super> KEY_MINUS
background = 0.4 0.4 0.5 1
offset = 5
[autostart]
0_0 = systemctl --user import-environment
xdg = sleep 1 && (XDG_SESSION_TYPE=wayland XDG_CURRENT_DESKTOP=sway /usr/lib/xdg-desktop-portal --replace & /usr/lib/xdg-desktop-portal-wlr)
[scale]
toggle = <super> KEY_A
duration = 200
[blur]
method=box
box_degrade=1