#========================================================== # # ██╗██████╗ ██████╗ █████╗ ██████╗ ███████╗ # ██║╚════██╗ ██╔════╝ ██╔══██╗██╔══██╗██╔════╝ # ██║ █████╔╝█████╗██║ ███╗███████║██████╔╝███████╗ # ██║ ╚═══██╗╚════╝██║ ██║██╔══██║██╔═══╝ ╚════██║ # ██║██████╔╝ ╚██████╔╝██║ ██║██║ ███████║ # ╚═╝╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝ # # Please see https://i3wm.org/docs/userguide.html for a complete reference! #========================================================== # ======================== Startup ======================== # ============ Modkey ============ set $mod Mod4 set $term sakura set $monlf eDP1 set $monrt HDMI-1-0 set $menu rofi -show drun -show-icons # ============ Workspaces Setup ============ set $ws1 "1:一" set $ws2 "2:二" set $ws3 "3:三" set $ws4 "4:四" set $ws5 "5:五" set $ws6 "6:六" set $ws7 "7:七" set $ws8 "8:八" set $ws9 "9:九" set $ws10 "10:十" workspace $ws1 output $monlf workspace $ws2 output $monlf workspace $ws3 output $monlf workspace $ws4 output $monlf workspace $ws5 output $monlf workspace $ws6 output $monrt workspace $ws7 output $monrt workspace $ws8 output $monrt workspace $ws9 output $monrt workspace $ws10 output $monrt bindsym $mod+1 workspace number $ws1 bindsym $mod+2 workspace number $ws2 bindsym $mod+3 workspace number $ws3 bindsym $mod+4 workspace number $ws4 bindsym $mod+5 workspace number $ws5 bindsym $mod+6 workspace number $ws6 bindsym $mod+7 workspace number $ws7 bindsym $mod+8 workspace number $ws8 bindsym $mod+9 workspace number $ws9 bindsym $mod+0 workspace number $ws10 bindsym $mod+Shift+1 move container to workspace number $ws1 bindsym $mod+Shift+2 move container to workspace number $ws2 bindsym $mod+Shift+3 move container to workspace number $ws3 bindsym $mod+Shift+4 move container to workspace number $ws4 bindsym $mod+Shift+5 move container to workspace number $ws5 bindsym $mod+Shift+6 move container to workspace number $ws6 bindsym $mod+Shift+7 move container to workspace number $ws7 bindsym $mod+Shift+8 move container to workspace number $ws8 bindsym $mod+Shift+9 move container to workspace number $ws9 bindsym $mod+Shift+0 move container to workspace number $ws10 # ============ Colors ============ set_from_resource $accent accent #285577 set_from_resource $border border #285577 set_from_resource $inactive_border inactive_border #5f676a set_from_resource $unfocused_border color0 #222222 set_from_resource $background background #285577 set_from_resource $text foreground #ffffff set_from_resource $indicator indicator #2e9ef4 set_from_resource $sec_indicator sec_indicator set_from_resource $urgent alert #900000 client.focused $border $background $text $indicator $border client.focused_inactive $inactive_border $background $text $sec_indicator $inactive_border client.unfocused $unfocused_border $background $text $sec_indicator $unfocused_border client.urgent $urgent $background $text $indicator $urgent font pango:JetBrains Mono 9 #for_window [class=".*"] border pixel 2 #gaps inner 5 # ============ Modes ============ bindsym $mod+r mode "resize" #mode "resize" { #bindsym Left resize shrink width 5 px or 5 ppt #bindsym Down resize shrink height 5 px or 5 ppt #bindsym Up resize grow height 5 px or 5 ppt #bindsym Right resize grow width 5 px or 5 ppt # #bindsym h resize shrink width 5 px or 5 ppt #bindsym j resize shrink height 5 px or 5 ppt #bindsym k resize grow height 5 px or 5 ppt #bindsym l resize grow width 5 px or 5 ppt # #bindsym Return mode "default" #bindsym Escape mode "default" #bindsym $mod+r mode "default" #} bindsym $mod+s exec --no-startup-id "i3-big-swap.py" # mode "settings" #mode "settings" { #bindsym d exec dunstctl set-paused toggle #bindsym b exec bluetooth-notif --toggle #bindsym n exec networkmanager_dmenu, mode "default" #bindsym m exec pamixer -t #bindsym v exec pavucontrol #bindsym a exec --no-startup-id "audio-output.sh", mode "default" #bindsym o exec --no-startup-id "hdmi-xrandr", mode "default" #bindsym r exec --no-startup-id "record-screen.sh", mode "default" #bindsym S exec --no-startup-id "i3-big-swap.py", mode "default" # #bindsym Escape mode "default" #} # ======================== Keybinds ======================== # ============ System Keybinds ============ bindsym $mod+Ctrl+c reload bindsym $mod+Ctrl+r restart bindsym $mod+q kill bindsym $mod+Ctrl+Shift+q exec poweroff bindsym $mod+Ctrl+Shift+e exit bindsym $mod+Ctrl+Shift+r exec restart bindsym $mod+u [urgent=latest] focus #bindsym $mod+g gaps inner all toggle 5 bindsym $mod+Return exec $term bindsym $mod+p exec $menu #bindsym $mod+Shift+x exec dm-tool lock floating_modifier $mod #bindsym $mod+Escape exec "main-menu" bindsym $mod+b split h bindsym $mod+v split v bindsym $mod+Tab split toggle bindsym $mod+Escape workspace back_and_forth bindsym $mod+t layout tabbed bindsym $mod+w layout default bindsym $mod+Shift+Tab layout toggle split bindsym $mod+BackSpace focus mode_toggle bindsym $mod+Shift+BackSpace floating toggle bindsym $mod+Ctrl+BackSpace sticky toggle bindsym $mod+f fullscreen toggle bindsym $mod+a focus parent bindsym $mod+d focus child # ============ Navegation & Focus Keybinds ============ bindsym $mod+h focus left bindsym $mod+j focus down bindsym $mod+k focus up bindsym $mod+l focus right bindsym $mod+Shift+h move left bindsym $mod+Shift+j move down bindsym $mod+Shift+k move up bindsym $mod+Shift+l move right bindsym $mod+Ctrl+h resize shrink width 5 px or 5 ppt bindsym $mod+Ctrl+j resize shrink height 5 px or 5 ppt bindsym $mod+Ctrl+k resize grow height 5 px or 5 ppt bindsym $mod+Ctrl+l resize grow width 5 px or 5 ppt bindsym $mod+Shift+minus move scratchpad bindsym $mod+minus scratchpad show bindsym $mod+tilda for_window [instace="dropdown_*"] scratchpad show bindsym $mod+g [class="scrcpy"] scratchpad show # ============ Funcion Keys ============ bindsym XF86AudioRaiseVolume exec --no-startup-id pamixer -i 5 bindsym XF86AudioLowerVolume exec --no-startup-id pamixer -d 5 bindsym XF86AudioMute exec --no-startup-id pamixer -t bindsym XF86AudioPlay exec --no-startup-id "mpc toggle" bindsym XF86AudioNext exec --no-startup-id "mpc next" bindsym XF86AudioPrev exec --no-startup-id "mpc prev" bindsym $mod+m mode "music" mode "music" { bindsym a exec --no-startup-id "music album", mode "default" bindsym m exec --no-startup-id "music title", mode "default" bindsym s exec --no-startup-id "music artist", mode "default" bindsym Escape mode "default" } bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl s +5% bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl s 5%- # ============ User Keybinds ============ bindsym $mod+Shift+S exec --no-startup-id "pastedit -s" bindsym $mod+Control+S exec --no-startup-id "pastedit" # ============ System Application Startup ============ exec_always --no-startup-id "~/.local/bin/hdmi-xrandr --extend" exec_always --no-startup-id "xwallpaper --zoom \"${HOME}/.config/wallpaper\"" exec --no-startup-id picom --experimental-backend & #exec --no-startup-id sakura --class=weechat -x weechat #exec --no-startup-id sakura --class=neomutt -x neomutt #exec --no-startup-id discord & #exec --no-startup-id steam & # ============ User Application Startup ============ # ============ Window Rules ============ for_window [all] title_window_icon yes, title_window_icon padding 3px for_window [class="Pavucontrol"] floating enable for_window [title="Picture-in-Picture"] sticky enable for_window [class="Dragon-drag-and-drop"] sticky enable for_window [class=".*.exe"] floating enable for_window [class="scrcpy"] floating enable, sticky enable, move scratchpad, scratchpad show assign [class="leagueclient.exe"] $ws5 assign [class="leagueclientux.exe"] $ws5 assign [class="riotclientservices.exe"] $ws5 assign [class="neomutt"] $ws7 assign [class="weechat"] $ws8 assign [class="Steam"] $ws9 assign [class="discord"] $ws10 bar { status_command i3status strip_workspace_numbers yes position bottom colors { background $background statusline $text separator #ff0000 # Category Border Background Text focused_workspace $accent $accent #000000 active_workspace $unfocused_border $unfocused_border $text inactive_workspace $background $background $text urgent_workspace $urgent $urgent $text binding_mode $background $background $text } }