|
|
- # Please see http://i3wm.org/docs/userguide.html for a complete reference!
- #xwayland disable
-
- set $mod Mod4
- set $alt Mod1
- set $term foot
- font Vulf Mono, FontAwesome 12
-
- bindsym $mod+F7 exec --no-startup-id xset r rate 250 25 && xset b off && setxkbmap -option caps:escape
-
- # Use Mouse+$mod to drag floating windows to their wanted position
- floating_modifier $mod
-
- # start a terminal
- bindsym $mod+Return exec --no-startup-id foot
-
- # kill focused window
- bindsym $mod+q kill
-
- # lock screen
- bindsym $mod+$alt+s exec swaylock
-
- #exec swayidle -w \
- # timeout 600 'swaylock'
- exec swayidle -w \
- timeout 1200 'swaymsg "output * dpms off"'\
- resume 'swaymsg "output * dpms on"' \
- before-sleep 'swaylock --screenshots --clock --indicator --indicator-radius 100 --indicator-thickness 7 --effect-blur 7x5 --effect-vignette 0.5:0.5 --ring-color bb00cc --key-hl-color 880033 --line-color 00000000 --inside-color 00000088 --separator-color 00000000 --grace 2 --fade-in 0.2'
-
- # start rofi (a program launcher)
- bindsym XF86LaunchA exec --no-startup-id rofi -show run
- bindcode 225 exec --no-startup-id rofi -show run
- #bindsym $mod+space exec --no-startup-id rofi -show run
- for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt, border pixel 10
- #set $menu exec alacritty --class=launcher -e sway-launcher-desktop
- set $menu rofi -combi-modi drun\,run\,ssh\,emoji\,calc -show combi -modi combi\,run\,ssh\,emoji\,calc -sidebar-mode -show-icons -normal-window
- #bindsym $mod+space exec $menu
-
- #
- # App launcher mode
- #
- # This mode let's you quickly lunch an app, bound to a hotkey or the $menu app
- # launcher. Default mode switch is $mod+space.
- # - pressing $mod+space twice quickly launches $menu
- # - pressing $mod+space, then one of the app 'shortcuts' launches the app
- # After any actions, the mode resets to default within $appmode_timeout seconds
- set $appmode_timeout 1
-
- mode "app" {
- bindsym $mod+space exec $menu
- bindsym --release $mod+space mode "default"
-
- # Mnemonic: [b]rowser
- bindsym b exec MOZ_ENABLE_WAYLAND=1 waterfox-g4
- # Mnemonic: [f]ile explorer
- bindsym f exec 'io.elementary.files'
- # Mnemonic: [F]ile explorer, GUI
- bindsym shift+f exec thunar
- # Mnemonic: [m]usic
- bindsym m exec $term -e bash -ci 'ncmpcpp'
- # Mnemonic: [n]otes
- bindsym n exec $term -e bash -ci 'notes'
- # Mnemonic: [h]ome
- bindsym h exec $term -e bash -ci 'home'
- # Mnemonic: [o]pen. Opens a quick browser with ripgrep's result
- bindsym o exec xdg-open "$(rg --files | rofi -normal-window -dmenu -i)"
- # Mnemonic: [p]assword
- bindsym p exec bwmenu --auto-lock 604800 -- -normal-window
- # Mnemonic: [v]irtual machine
- bindsym v exec env QT_QPA_PLATFORM=xcb virtualbox
- # Mnemonic: [w]indows 10
- bindsym w exec env QT_QPA_PLATFORM=xcb vboxmanage startvm Windows10
- # Mnemonic: [a]rch linux
- bindsym a exec env QT_QPA_PLATFORM=xcb vboxmanage startvm Arch
- # Mnemonix: tmu[x]
- bindsym x exec $term -e bash -ci 'tmux-session'
-
- bindsym c exec vscodium --enable-features=UseOzonePlatform --ozone-platform=wayland
- #bindsym c exec vscodium
-
- bindsym s exec slack --enable-features=UseOzonePlatform --ozone-platform=wayland
- #bindsym s exec slack
- bindsym d exec discord
- bindsym t exec fluffychat
-
- bindsym Escape mode "default"
- }
- bindsym $mod+space exec swaymsg mode "app" && sleep $appmode_timeout && swaymsg mode "default"
-
- # change focus
- bindsym $mod+j focus left
- bindsym $mod+k focus down
- bindsym $mod+l focus up
- bindsym $mod+semicolon focus right
-
- # alternatively, you can use the cursor keys:
- bindsym $mod+Left focus left
- bindsym $mod+Down focus down
- bindsym $mod+Up focus up
- bindsym $mod+Right focus right
-
- # move focused window
- bindsym $mod+Shift+j move left
- bindsym $mod+Shift+k move down
- bindsym $mod+Shift+l move up
- bindsym $mod+Shift+semicolon move right
-
- # alternatively, you can use the cursor keys:
- bindsym $mod+Shift+Left move left
- bindsym $mod+Shift+Down move down
- bindsym $mod+Shift+Up move up
- bindsym $mod+Shift+Right move right
-
- # split in horizontal orientation
- bindsym $mod+h split h
-
- # split in vertical orientation
- bindsym $mod+v split v
-
- # enter fullscreen mode for the focused container
- bindsym $mod+d fullscreen
- bindsym $mod+$alt+f fullscreen
-
- # change container layout (stacked, tabbed, toggle split)
- bindsym $mod+s layout stacking
- bindsym $mod+t layout tabbed
- bindsym $mod+e layout toggle split
-
- # toggle tiling / floating
- bindsym $mod+Shift+space floating toggle
-
- # change focus between tiling / floating windows
- bindsym $mod+$alt+space focus mode_toggle
-
- # focus the parent container
- bindsym $mod+p focus parent
-
- # focus the child container
- bindsym $mod+c focus child
-
- # 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'"
-
- # switch to workspace
- bindsym $mod+1 workspace 1
- bindsym $mod+2 workspace 2
- bindsym $mod+3 workspace 3
- bindsym $mod+4 workspace 4
- bindsym $mod+5 workspace 5
- bindsym $mod+6 workspace 6
- bindsym $mod+7 workspace 7
- bindsym $mod+8 workspace 8
- bindsym $mod+9 workspace 9
- bindsym $mod+0 workspace 10
- bindsym Mod1+Control+Right workspace next
- bindsym Mod1+Control+Left workspace prev
- workspace_auto_back_and_forth yes
- bindsym $mod+z workspace back_and_forth
- bindsym $mod+Shift+z move container to workspace back_and_forth
-
- # move focused container to workspace
- bindsym $mod+Shift+1 move container to workspace 1
- bindsym $mod+Shift+2 move container to workspace 2
- bindsym $mod+Shift+3 move container to workspace 3
- bindsym $mod+Shift+4 move container to workspace 4
- bindsym $mod+Shift+5 move container to workspace number 5
- bindsym $mod+Shift+6 move container to workspace number 6
- bindsym $mod+Shift+7 move container to workspace number 7
- bindsym $mod+Shift+8 move container to workspace number 8
- bindsym $mod+Shift+9 move container to workspace number 9
- bindsym $mod+Shift+0 move container to workspace number 10
-
- ########################
- ## Custom Keybindings
- ########################
- bindsym $mod+f exec --no-startup-id alacrity -e ranger
- bindsym Print exec scrot -s -e 'mv $f ~/Downloads'
- bindsym $mod+m move scratchpad
- bindsym $mod+n scratchpad show
- bindsym $mod+Shift+s sticky toggle
- bindsym $mod+Shift+alt+Control+s screenshot
- bindsym alt+Shift+Control+s notify-send "test"
-
- # macros
- bindsym Control+F4 exec /usr/local/bin/screenshot
- bindsym Control+F5 exec /usr/bin/watson stop && exec notify-send "Clocked out!"
- bindsym Control+F6 exec notify-send "F6"
- bindsym Control+F7 exec notify-send "F7"
- bindsym Control+F8 exec notify-send "F8"
- bindsym Control+F9 exec notify-send "F9"
- bindsym Control+F10 exec notify-send "F10"
- bindsym Control+F11 exec notify-send "F11"
- bindsym Control+F12 exec notify-send "F12"
-
- # screenshare
- bindsym $mod+x exec dmenuscreenshare.sh
-
- #bindsym Control+k exec --no-startup-id echo "core.weechat */buffer_dmenu" >> $(find ~/.weechat -type p)
- # Notifications
- bindsym $mod+Control+Shift+space exec --no-startup-id makoctl dismiss -a
- bindsym $mod+Control+space exec --no-startup-id makoctl dismiss
-
- #########################
- ## Floating Windows
- #########################
- for_window [window_role = "pop-up"] floating enable
- for_window [window_role = "bubble"] floating enable
- for_window [window_role = "dialog"] floating enable
- for_window [window_type = "dialog"] floating enable
- for_window [window_role = "task_dialog"] floating enable
- for_window [window_type = "menu"] floating enable
- for_window [app_id = "floating"] floating enable
-
- for_window [class="Android SDK Manager" instance="Android SDK Manager"] floating enable
- for_window [class="Cb-exit" instance="cb-exit"] floating enable
- for_window [class="Cb-exit" instance="cb-exit"] border none
- for_window [class="^Pavucontrol$"] floating enable
- for_window [instance="crx_gaedmjdfmmahhbjefcbgaolhhanlaolb"] floating enable
- for_window [class="Google-chrome" instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] floating enable
- for_window [class="chrome_app_list"] floating enable
- for_window [class="Plexamp"] floating enable
- for_window [class="blueman-manager"] floating enable
- for_window [class="^Bluetooth Devices"] floating enable
- # https://github.com/ValveSoftware/steam-for-linux/issues/1040
- for_window [class="^Steam$" title="^Friends$"] floating enable
- for_window [class="^Steam$" title="Steam - News"] floating enable
- for_window [class="^Steam$" title=".* - Chat"] floating enable
- for_window [class="^Steam$" title="^Settings$"] floating enable
- for_window [class="^Steam$" title=".* - event started"] floating enable
- for_window [class="^Steam$" title=".* CD key"] floating enable
- for_window [class="^Steam$" title="^Steam - Self Updater$"] floating enable
- for_window [class="^Steam$" title="^Screenshot Uploader$"] floating enable
- for_window [class="^Steam$" title="^Steam Guard - Computer Authorization Required$"] floating enable
- for_window [title="^Steam Keyboard$"] floating enable
- for_window [title="Qalculate!"] floating enable
- for_window [title="Origin"] floating enable
- for_window [title="Firefox Developer Edition - Sharing Indicator"] floating enable
- for_window [class="Rofi"] floating enable
- # Zoom
- for_window [app_id="zoom"] floating enable
- for_window [class="^Zoom$"] floating enable
- for_window [class="zoom"] floating enable
- for_window [class="zoom.real"] floating enable
- for_window [class="^zoom$"] floating enable
- for_window [app_id="zoom" title="Choose ONE of the audio conference options"] floating enable
- for_window [app_id="zoom" title="zoom"] floating enable
- for_window [app_id="zoom" title="Zoom Meeting"] floating disable
- for_window [title="KJAX_loop.gif - mpv"] floating enable
-
- # Tag xwayland windows with [X]
- for_window [shell="xwayland"] title_format "<span>[X] %title゜</span>"
-
- for_window [app_id = "avizo-service"] border pixel 0, sticky toggle
- no_focus [app_id="avizo-service"]
-
- ###########################
- ## Assign Workspaces
- ##########################
- assign [class="Slack"] 3
- assign [class="Plexamp"] 3
- assign [class="Discord"] 3
- assign [class="Fluffychat"] 3
- assign [class="Telegram"] 3
-
- ##########################
- ## Gaps
- ##########################
- # new_window 1pixel
- default_border pixel 0
- #Hide border if 1 window
- hide_edge_borders both
- set $default_gaps_inner 15
- set $default_gaps_outer 15
- gaps inner $default_gaps_inner
- gaps outer $default_gaps_outer
- smart_gaps on
-
-
- # 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 j resize shrink width 10 px or 10 ppt
- bindsym k resize grow height 10 px or 10 ppt
- bindsym l resize shrink height 10 px or 10 ppt
- bindsym semicolon 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"
-
- # Resize Containers, Vim-style ($mod+Control+[hjkl])
- bindsym $mod+Control+j resize grow height 5 px or 5 ppt
- bindsym $mod+Control+k resize shrink height 5 px or 5 ppt
- bindsym $mod+Control+l resize grow width 5 px or 5 ppt
- bindsym $mod+Control+h resize shrink width 5 px or 5 ppt
-
- bindsym $mod+Control+Up resize grow height 5 px or 5 ppt
- bindsym $mod+Control+Down resize shrink height 5 px or 5 ppt
- bindsym $mod+Control+Right resize grow width 5 px or 5 ppt
- bindsym $mod+Control+Left resize shrink width 5 px or 5 ppt
-
- # Start i3bar to display a workspace bar (plus the system information i3status
- # finds out, if available)
- bar {
- swaybar_command waybar
- }
-
- # class border backgr. text indicator child_border
- client.focused #FFFFFF #BF360C #fdf6e3 #FF0000 #FFFFFF
- client.focused_inactive #073642 #FF9800 #93a1a1 #002b36 #073642
- client.unfocused #002b36 #311B92 #586e75 #002b36 #002b36
- client.urgent #dc322f #b71c1c #fdf6e3 #dc322f #dc322f
-
- ############################
- ## Displays
- ############################
- #HOME
- output HDMI-A-1 pos 0 0 res 3440x1440
- output DP-1 pos 0 1440 res 3440x1440@59.999Hz
- output DP-2 pos 0 1440 res 3440x1440@59.999Hz
- # background images
- #output * bg ~/Pictures/Wallpapers/calvin-hobbes-stars.jpg fill
- output * bg ~/Pictures/Wallpapers/beach.jpg fill
- #bindsym $mod+Shift+m exec --no-startup-id "sway output output DP-1 pos 2880 0 res 1920x1080 && sway ouput DP-2 res 1920x1080"
-
- ##############################
- ## Startup Things
- ##############################
- #exec --no-startup-id pcmanfm -d
- #exec --no-startup-id xset r rate 250 25
- #exec --no-startup-id xset b off
- #exec --no-startup-id setxkbmap -option caps:escape
- #exec --no-startup-id nightshift -l 39.0315533:-94.4954291 -d
- #exec --no-startup-id setxkbmap -model apple_laptop -layout us -variant dvp
- exec --no-startup-id mako
- exec --no-startup-id blueman-applet
- exec autotiling
- exec udiskie
- exec wl-paste -t text --watch clipman store
- exec avizo-service
-
- #############################
- ## Media Keys
- #############################
- bindsym XF86AudioRaiseVolume exec volumectl raise
- bindsym XF86AudioLowerVolume exec volumectl lower
- bindsym XF86AudioMute exec volumectl mute
- bindsym XF86MonBrightnessUp exec --no-startup-id "brightnessctl s +10%; brightnessctl -d gmux_backlight s +10%"
- bindsym XF86MonBrightnessDown exec --no-startup-id "brightnessctl s 10%-; brightnessctl -d gmux_backlight s 10%-"
-
- set $gnome-schema org.gnome.desktop.interface
-
- exec_always {
- gsettings set $gnome-schema gtk-theme 'Flat-Remix-GTK-Green-Darkest'
- gsettings set $gnome-schema icon-theme 'Flat-Remix-Green-Dark'
- }
-
- # fix slow launch: exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
- exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
- exec hash dbus-update-activation-environment 2>/dev/null && \
- dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
-
- include /etc/sway/config.d/*
|