mirror of
https://github.com/Foltik/dotfiles
synced 2024-12-01 14:55:16 -05:00
123 lines
4.1 KiB
Plaintext
123 lines
4.1 KiB
Plaintext
|
###############################################################################
|
||
|
# VARIABLES #
|
||
|
###############################################################################
|
||
|
|
||
|
#!nobracket
|
||
|
|
||
|
set $mod Mod1 # Alt key
|
||
|
set $term alacritty
|
||
|
|
||
|
set $mv 20px # amount to resize windows (also used for how far to
|
||
|
set $mvppt 2ppt # move floating windows with mod+shift+hjkl)
|
||
|
|
||
|
font pango:SauceCodePro Nerd Font 10
|
||
|
floating_modifier $mod
|
||
|
focus_follows_mouse no
|
||
|
force_focus_wrapping yes
|
||
|
|
||
|
###############################################################################
|
||
|
# KEYBINDS #
|
||
|
###############################################################################
|
||
|
|
||
|
group "default" {
|
||
|
|
||
|
# launching
|
||
|
bindsym $mod+backslash exec $term
|
||
|
bindsym $mod{,+Shift}+d exec rofi \
|
||
|
-show {drun,run}
|
||
|
|
||
|
# window management
|
||
|
bindsym $mod{2|,+Shift}+{1|h,j,k,l,\ # focused window manipulation,
|
||
|
Left,Down,Up,Right} {2|focus,move} \ # vikeys and arrow key support
|
||
|
{1|left,down,up,right}{2|, $mv}
|
||
|
|
||
|
bindsym $mod+{equal,minus} split {h,v} # horizontal and vertical split
|
||
|
bindsym $mod+f fullscreen toggle # fullscreen
|
||
|
|
||
|
bindsym $mod+{q,w,e} \ # change container layout
|
||
|
layout {stacking,tabbed,toggle split}
|
||
|
|
||
|
bindsym $mod{,+Shift}+semicolon \ # floating toggle and focus
|
||
|
{focus mode_,floating }toggle
|
||
|
|
||
|
bindsym $mod+{a,s} focus {parent,child} # focus parent/child
|
||
|
|
||
|
bindsym $mod+Shift+q kill
|
||
|
|
||
|
# workspaces
|
||
|
bindsym $mod{2|,+Shift}+{1|1..9,0} \
|
||
|
{2|,move container to }\
|
||
|
workspace number {1|1..10}
|
||
|
|
||
|
# reload/exit
|
||
|
# restarting/exiting
|
||
|
bindsym $mod+Shift+c \ # run ppi3 and reload config
|
||
|
exec ppi3 ~/.config/i3/config.ppi3 ~/.config/i3/config \
|
||
|
&& i3-msg reload
|
||
|
bindsym $mod+Shift+r restart
|
||
|
bindsym $mod+Shift+e exit
|
||
|
|
||
|
}
|
||
|
|
||
|
# dual-monitor setup
|
||
|
bindsym $mod{,+Shift}+slash {focus,move} \ # other monitor
|
||
|
output right
|
||
|
bindsym $mod+Shift+equal {{?\\}} # shoot all workspaces over to my
|
||
|
workspace number {2..10}; move \ # large monitor except 1
|
||
|
workspace to output HDMI2; {{?\\}}
|
||
|
nop
|
||
|
bindsym $mod+period move workspace to \ # toggle workspace between monitors
|
||
|
output left
|
||
|
|
||
|
###############################################################################
|
||
|
# MODES #
|
||
|
###############################################################################
|
||
|
|
||
|
mode "resize" {
|
||
|
bindsym {h,j,k,l,Left,Down,Up,Right} resize \
|
||
|
{shrink width,grow height,shrink height,grow width} $mv or $mvppt
|
||
|
bindsym Shift+{h,j,k,l,Left,Down,Up,Right} resize \
|
||
|
{shrink width,grow height,shrink height,grow width} 1px or 1ppt
|
||
|
|
||
|
bindsym {Return,Escape,space,$mod+r} mode "default"
|
||
|
}
|
||
|
bindsym $mod+r mode "resize"
|
||
|
|
||
|
###############################################################################
|
||
|
# COLORS AND APPEARANCE #
|
||
|
###############################################################################
|
||
|
|
||
|
gaps inner 12
|
||
|
gaps outer 0
|
||
|
smart_gaps on
|
||
|
|
||
|
default_border pixel 2
|
||
|
default_floating_border none
|
||
|
hide_edge_borders both
|
||
|
|
||
|
set_from_resource $color{1|0..7} color{1|0..7}
|
||
|
set_from_resource $fg foreground
|
||
|
set_from_resource $bg background
|
||
|
|
||
|
#client.focused $color2 $color2 $fg
|
||
|
#client.focused_inactive $color3 $color3 $fg
|
||
|
#client.unfocused $color3 $color3 $fg
|
||
|
#client.urgent $color2 $color2 $fg
|
||
|
#client.placeholder $color2 $color2 $fg
|
||
|
client.background $color2
|
||
|
|
||
|
###############################################################################
|
||
|
# STARTUP #
|
||
|
###############################################################################
|
||
|
|
||
|
exec --no-startup-id "setxkbmap -option caps:swapescape"
|
||
|
exec --no-startup-id "systemctl --user start ch-wall"
|
||
|
|
||
|
exec --no-startup-id "compton --config ~/.config/compton/config -b"
|
||
|
|
||
|
exec --no-startup-id "polybar top"
|
||
|
exec --no-startup-id "polybar bottom"
|
||
|
|
||
|
exec --no-startup-id "ibus-daemon --xim"
|
||
|
|