1
0
mirror of https://github.com/Foltik/dotfiles synced 2024-12-01 14:55:16 -05:00
dotfiles/lain/.config/i3/config.ppi3

123 lines
4.1 KiB
Plaintext
Raw Normal View History

2018-12-01 13:32:46 -05:00
###############################################################################
# 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"