### Input configuration [input] xkb_layout = us xkb_variant = dvorak,bepo natural_scroll = enabled [input-device:Wacom One by Wacom S Pen] output = eDP-1 ### Output configuration [output:eDP-1] # mode = 1920x1080@60000 mode = 2400x1350@60000 position = 0,0 transform = normal scale = 1.00000 ### Core options [core] plugins = \ alpha \ animate \ autostart \ command \ cube \ decoration \ expo \ fast-switcher \ fisheye \ grid \ idle \ invert \ move \ oswitch \ place \ resize \ switcher \ vswitch \ window-rules \ wm-actions \ wobbly \ wrot \ zoom \ spacing \ blur \ simple-tile \ wf-info \ rounded-corners ## Close focused window. close_top_view = KEY_Q | KEY_F4 ## Workspaces arranged into a grid: 2 × 2. vwidth = 2 vheight = 2 ## Prefer client-side decoration or server-side decoration preferred_decoration_mode = server ### Mouse bindings ## Drag windows by holding down Super and left mouse button. [move] activate = BTN_LEFT ## Resize them with right mouse button + Super. [resize] activate = BTN_RIGHT ## Zoom in the desktop by scrolling + Super. [zoom] modifier = ## Change opacity by scrolling with Super + Alt. [alpha] modifier = ## Rotate windows with the mouse. [wrot] activate = BTN_RIGHT ## Fisheye effect. [fisheye] toggle = KEY_F ### Startup commands [autostart] ## enviroment environment = dbus-update-activation-environment --systemd WAYLAND_DISPLAY DISPLAY XAUTHORITY autostart_wf_shell = false ## chromium screenshare 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) ## desktop widgets background = wf-background bar = waybar # dock = wf-dock # panel = wf-panel # background = swaybg -i $HOME/.config/swaylock/bg.png ## Notifications notifications = mako ## input fcitx5 = fcitx ## KDEConnect kdeconnect = kdeconnect-indicator ## Keyring keyring = echo -n "YOUR_PASSWD" | gnome-keyring-daemon -s -r --unlock --components=secrets ## Email email = geary --gapplication-service ## XDG desktop portal portal = /usr/libexec/xdg-desktop-portal ### desktop configure [idle] # toggle = KEY_Z screensaver_timeout = 360000 dpms_timeout = 360000 ### Applications ───────────────────────────────────────────────────────────────── [command] ## Terminal binding_terminal = KEY_T command_terminal = tilix ## Start your launcher binding_launcher = KEY_ENTER command_launcher = wofi ## Screen locker # https://github.com/swaywm/swaylock binding_lock = KEY_ESC command_lock = swaylock -C $HOME/.config/swaylock/conig ## Logout # https://github.com/ArtsyMacaw/wlogout binding_logout = KEY_ESC command_logout = nwgbar # command_logout = wlogout -p xdg ## Screenshots # select window, copy to clipboard binding_screenshot = KEY_SYSRQ command_screenshot = grim -g "$(wf-info | grep Geometry | awk '{print $2, $3}')" - - | wl-copy --type image/png # select window, save to Pictures directory binding_screenshot_interactive = KEY_SYSRQ command_screenshot_interactive = wf-info | grep Geometry | awk '{print $2, $3}' | grim -g - ~/Pictures/$(date '+%F_%T').png # copy to clipboard binding_screenshot_clipboard = KEY_SYSRQ command_screenshot_clipboard = slurp -b 2c2c2cff -B 2c2c2cff -c 2c2c2cff -o | grim -g - - | wl-copy --type image/png ## Screencast # binding_screencast = KEY_SYSRQ # command_screencast = wf-recorder -g "$(wf-info | grep Geometry | awk '{print $2, $3}')" -f $HOME/Videos/$(date '+%F_%T').mp4 binding_screencast_voice = KEY_SYSRQ command_screencast_voice = wf-recorder -a -f $HOME/Videos/$(date '+%F_%T').mp4 binding_screencast_novoice = KEY_SYSRQ command_screencast_novoice = wf-recorder -f $HOME/Videos/$(date '+%F_%T').mp4 binding_screencast_stop = KEY_SYSRQ command_screencast_stop = killall -INT wf-recorder # binding_kooha = KEY_R # command_kooha = kooha ## Volume controls alias-utils repeatable_binding_volume_up = KEY_F3 command_volume_up = pactl set-sink-volume 0 +5% repeatable_binding_volume_down = KEY_F2 command_volume_down = pactl set-sink-volume 0 -5% binding_mute = KEY_F1 command_mute = pactl set-sink-mute @DEFAULT_SINK@ toggle ## Screen brightness # https://haikarainen.github.io/light/ # repeatable_binding_light_up = KEY_F7 # command_light_up = light -A 5 # repeatable_binding_light_down = KEY_7 # command_light_down = light -U 5 ### Windows ## Actions related to window management functionalities. [wm-actions] toggle_fullscreen = KEY_F toggle_always_on_top = KEY_X toggle_sticky = 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 = KEY_F1 slot_b = KEY_DOWN | KEY_F2 slot_br = KEY_F3 slot_l = KEY_LEFT | KEY_F4 slot_c = KEY_F5 slot_r = KEY_RIGHT | KEY_F6 slot_tl = KEY_F7 slot_t = KEY_UP | KEY_F8 slot_tr = KEY_F9 # Restore default. restore = KEY_F10 ## Change active window with an animation. [switcher] next_view = KEY_TAB prev_view = KEY_TAB ## Simple active window switcher. [fast-switcher] activate = KEY_TAB ### Workspaces ## Switch to workspace. [vswitch] binding_left = KEY_LEFT binding_down = KEY_DOWN binding_up = KEY_UP binding_right = KEY_RIGHT # Move the focused window with the same key-bindings, but add Shift. binding_win_left = KEY_LEFT binding_win_down = KEY_DOWN binding_win_up = KEY_UP binding_win_right = KEY_RIGHT ## Show the current workspace row as a cube. [cube] activate = BTN_LEFT # Switch to the next or previous workspace. rotate_left = KEY_R rotate_right = KEY_L ## Show an overview of all workspaces. [expo] toggle = # Select a workspace. # Workspaces are arranged into a grid of 3 × 3. # The numbering is left to right, line by line. # # ⇱ k ⇲ # h ⏎ l # ⇱ j ⇲ # ‾ ‾ # See core.vwidth and core.vheight for configuring the grid. select_workspace_1 = KEY_1 select_workspace_2 = KEY_2 select_workspace_3 = KEY_3 select_workspace_4 = KEY_4 select_workspace_5 = KEY_5 select_workspace_6 = KEY_6 select_workspace_7 = KEY_7 select_workspace_8 = KEY_8 select_workspace_9 = KEY_9 ### Outputs ## Change focused output. [oswitch] # Switch to the next output. next_output = KEY_O # Same with the window. next_output_with_win = KEY_O ## Invert the colors of the whole output. [invert] toggle = KEY_I ## Animate [animate] open_animation = fade close_animation = fade duration = 250 [decoration] title_height = 0 title_size = 0 ignore_views = all # broder_size = 10 # active_color = \#ffffffAA # inactive_color = \#ffffffAA [blur] method = kawase kawase_degrade = 1 kawase_iterations = 1 kawase_offset = 5 [wobbly] friction = 25 spring_k = 25 grid_resolution = 6 [simple-tile] tile_by_default = none # button_move = KEY_M # button_resize = KEY_R key_focus_above = KEY_UP key_focus_below = KEY_DOWN key_focus_left = KEY_LEFT key_focus_right = KEY_RIGHT key_toggle = KEY_S outer_vert_gap_size = 2 outer_horiz_gap_size = 2 # 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