159 lines
5.1 KiB
Plaintext
159 lines
5.1 KiB
Plaintext
# vim: filetype=i3config
|
|
|
|
# this config is based on github.com:LukeSmithxyz/voidrice 884dcbdc4792eed95e558af84491eb3100d314a2
|
|
|
|
# This config file will use environmental variables such as $BROWSER and $TERMINAL.
|
|
# You can set these variables in ~/.profile or ~/.bash_profile if you have it as below:
|
|
#
|
|
# export TERMINAL="st"
|
|
|
|
|
|
# set modifier key, Mod4 is super (windows), Mod1 = Alt key
|
|
set $mod Mod4
|
|
|
|
# power options
|
|
set $shutdown shutdown -h now
|
|
set $reboot reboot
|
|
set $hibernate sudo -A systemctl suspend
|
|
|
|
# #---Gaps---# #
|
|
for_window [class="^.*"] border pixel 2
|
|
gaps inner $inner_gaps
|
|
gaps outer $outer_gaps
|
|
# Smart gaps (gaps used only if more than one container on the workspace)
|
|
#smart_gaps on
|
|
smart_borders on
|
|
|
|
|
|
# #---Dropdown Windows---# #
|
|
# Scratchpad binds
|
|
bindsym $mod+p [class="bitwarden"] scratchpad show; move position center
|
|
# General dropdown window traits. The order can matter.
|
|
# sticky allows windows to stay visible even when switching workspaces
|
|
for_window [instance="dropdown_*"] sticky enable
|
|
# Specific dropdown window traits
|
|
for_window [instance="dropdown_tmux"] resize set 625 450
|
|
for_window [instance="dropdown_tmux"] border pixel 3
|
|
# start scratchpads
|
|
exec --no-startup-id bitwarden-desktop
|
|
for_window [class="bitwarden"] move scratchpad
|
|
|
|
|
|
# #--- i3 keybinds ---# #
|
|
bindsym $mod+h focus left
|
|
bindsym $mod+j focus down
|
|
bindsym $mod+k focus up
|
|
bindsym $mod+l focus right
|
|
bindsym $mod+Shift+u exec --no-startup-id i3resize left
|
|
bindsym $mod+Shift+i exec --no-startup-id i3resize down
|
|
bindsym $mod+Shift+o exec --no-startup-id i3resize up
|
|
bindsym $mod+Shift+p exec --no-startup-id i3resize right
|
|
bindsym $mod+Shift+r exec --no-startup-id winresize
|
|
bindsym $mod+f fullscreen toggle
|
|
bindsym $mod+Shift+f mode "$freeze" ;; exec --no-startup-id notify-send "Distraction-free mode activated." "Press Super+Shift+f to return."
|
|
# bindsym $mod+h split h;exec notify-send 'tile horizontally'
|
|
# bindsym $mod+v split v;exec notify-send 'tile vertically'
|
|
|
|
# No focus on mouse over
|
|
focus_follows_mouse no
|
|
|
|
# #---Arrow Keys---# #
|
|
bindsym $mod+Left focus left
|
|
bindsym $mod+Shift+Left move left
|
|
bindsym $mod+Ctrl+Left move workspace to output left
|
|
bindsym $mod+Down focus down
|
|
bindsym $mod+Shift+Down move down
|
|
bindsym $mod+Ctrl+Down move workspace to output down
|
|
bindsym $mod+Up focus up
|
|
bindsym $mod+Shift+Up move up
|
|
bindsym $mod+Ctrl+Up move workspace to output up
|
|
bindsym $mod+Right focus right
|
|
bindsym $mod+Shift+Right move right
|
|
bindsym $mod+Ctrl+Right move workspace to output right
|
|
|
|
# #---Workspaces---# #
|
|
# prior and next ar PgUp and PgDown
|
|
bindsym $mod+Prior workspace prev
|
|
bindsym $mod+Shift+Prior move container to workspace prev
|
|
bindsym $mod+Next workspace next
|
|
bindsym $mod+Shift+Next move container to workspace next
|
|
bindsym $mod+Tab workspace back_and_forth
|
|
|
|
|
|
# move focused container to workspace
|
|
bindsym $mod+Shift+1 move container to workspace $ws1
|
|
bindsym $mod+Shift+2 move container to workspace $ws2
|
|
bindsym $mod+Shift+3 move container to workspace $ws3
|
|
bindsym $mod+Shift+4 move container to workspace $ws4
|
|
bindsym $mod+Shift+5 move container to workspace $ws5
|
|
bindsym $mod+Shift+6 move container to workspace $ws6
|
|
bindsym $mod+Shift+7 move container to workspace $ws7
|
|
bindsym $mod+Shift+8 move container to workspace $ws8
|
|
bindsym $mod+Shift+9 move container to workspace $ws9
|
|
bindsym $mod+Shift+0 move container to workspace $ws10
|
|
|
|
|
|
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"
|
|
|
|
# switch to workspace
|
|
bindsym $mod+1 workspace $ws1
|
|
bindsym $mod+2 workspace $ws2
|
|
bindsym $mod+3 workspace $ws3
|
|
bindsym $mod+4 workspace $ws4
|
|
bindsym $mod+5 workspace $ws5
|
|
bindsym $mod+6 workspace $ws6
|
|
bindsym $mod+7 workspace $ws7
|
|
bindsym $mod+8 workspace $ws8
|
|
bindsym $mod+9 workspace $ws9
|
|
bindsym $mod+0 workspace $ws10
|
|
|
|
|
|
# #--- Keyboard shortcuts ---# #
|
|
bindsym $mod+d exec --no-startup-id dmenu_run
|
|
bindsym $mod+Return exec $term
|
|
bindsym $mod+w exec --no-startup-id $BROWSER
|
|
# Show selection:
|
|
bindsym $mod+Insert exec --no-startup-id showclip
|
|
|
|
bindsym $mod+Shift+Return exec --no-startup-id samedir
|
|
|
|
bindsym $mod+q [con_id="__focused__" instance="^(?!dropdown_).*$"] kill
|
|
bindsym $mod+Shift+q [con_id="__focused__" instance="^(?!dropdown_).*$"] exec --no-startup-id kill -9 `xdotool getwindowfocus getwindowpid`
|
|
|
|
|
|
|
|
|
|
# #--- Colors ---# #
|
|
set $black #272822
|
|
set $white #FFFFFF
|
|
set $pink #F92672
|
|
set $blue #66D9EF
|
|
set $green #A6E22E
|
|
set $orange #FD971F
|
|
set $yellow #E6DB74
|
|
set $purple #AE81FF
|
|
# class border bg. text indicator child_border
|
|
client.focused $black $black $green $blue $blue
|
|
client.focused_inactive $black $black $blue $black $black
|
|
client.unfocused $black $black $white $black $black
|
|
client.background #f1232
|
|
|
|
# #--- EXTERNAL PROGRAMS---# #
|
|
# set background picture
|
|
exec --no-startup-id nitrogen --set-zoom-fill $HOME/.config/i3/bg.png
|
|
# start xfce bar
|
|
exec --no-startup-id xfce4-panel --disable-wm-check
|
|
# try to start tray tools / applets manually
|
|
exec --no-startup-id nm-applet
|
|
exec --no-startup-id blueman-applet
|
|
|