blob: f38f203cf4dac34424a663d73aff9491a8a8ff28 (
plain) (
tree)
|
|
## i3 config file (v4)
##
## Please see https://i3wm.org/docs/userguide.html for a complete reference!
## GENERAL
font pango:sans-serif 13
set $locker xautolock -locknow
set $mod Mod1
set $sigaudio pkill -75 i3blocks
## WORKSPACES
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
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
## BORDERS
default_border pixel 2
default_floating_border pixel 2
hide_edge_borders smart
title_align center
workspace_auto_back_and_forth yes
## COLORS
# base colors -- set by WPG
set $coloract "{active}"
set $colorin "{inactive}"
set_from_resource $color0 i3wm.color0 "{color0}"
set_from_resource $color15 i3wm.color15 "{color15}"
set_from_resource $color8 i3wm.color8 "{color8}"
set_from_resource $coloru i3wm.color2 "{color2}"
set_from_resource $split i3wm.color10 "{color10}"
# class border backgr text indicator child_border
client.background $color0
client.focused $coloract $coloract $color15 $split $coloract
client.focused_inactive $coloract $coloract $color15 $split $colorin
client.placeholder $color0 $color8 $color15 $color0 $color8
client.unfocused $colorin $colorin $color15 $split $colorin
client.urgent $coloru $coloru $color15 $coloru $coloru
## WINDOW CONTROL
# movement
floating_modifier $mod
set $down j
set $left h
set $right l
set $up k
# change focus
bindsym $mod+$down focus down
bindsym $mod+$left focus left
bindsym $mod+$right focus right
bindsym $mod+$up focus up
# move focused window
bindsym $mod+shift+$down move down
bindsym $mod+shift+$left move left
bindsym $mod+shift+$right move right
bindsym $mod+shift+$up move up
# resize
bindsym $mod+i resize grow height 100 or 10
bindsym $mod+o resize grow width 100 or 10
bindsym $mod+u resize shrink height 100 or 10
bindsym $mod+y resize shrink width 100 or 10
## LAYOUT
# split direction
bindsym $mod+q split toggle
# fullscreen mode
bindsym $mod+f fullscreen toggle
# container layout
bindsym $mod+shift+w layout toggle tabbed stacking
bindsym $mod+shift+e layout toggle split
# toggle tiling / floating / sticky
bindsym $mod+shift+space floating toggle
bindsym $mod+s sticky toggle
bindsym $mod+shift+s floating toggle; sticky toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
## SHORTCUTS
bindsym $mod+shift+F1 exec firefox /usr/local/share/doc/freebsd/handbook/book.html
bindsym $mod+F2 exec firefox
bindsym $mod+shift+F2 exec firefox --private-window
bindsym $mod+F3 exec alacritty -e zsh -i -c "vifm ~ ~/downloads"
bindsym $mod+F4 exec alacritty -t "Reading Email" -e zsh -i -c mutt && mbsync -c ~/.config/mbsync/mbsyncrc -a && pkill -77 i3blocks
bindsym $mod+F5 exec alacritty -t "Reading News" -e zsh -i -c newsboat && pkill -78 i3blocks
bindsym $mod+F6 exec --no-startup-id url_handler.sh
bindsym $mod+F7 exec --no-startup-id dict.sh
bindsym $mod+F8 exec "pkill pwcview || exec pwcview -f 30 -s sif"
bindsym $mod+shift+F8 exec --no-startup-id toggle-screencast.sh
bindsym $mod+F9 exec --no-startup-id abraham-porter.sh
bindsym $mod+shift+F9 exec --no-startup-id "killall picom || exec picom"
#bindsym $mod+F10 exec
#bindsym $mod+F11 exec
bindsym $mod+shift+F11 exec xautolock -toggle
bindsym $mod+shift+F12 exec alacritty -e zsh -i -c mixertui && pkill -75 i3blocks
bindsym $mod+Return split horizontal; exec alacritty
bindsym $mod+shift+Return split vertical; exec alacritty
bindsym $mod+shift+Insert exec $locker
bindsym $mod+a exec rofi -show run
bindsym $mod+shift+q kill
bindsym --release Print exec scrot -z -e 'mkdir -p ~/pictures/screenshots && mv $f ~/pictures/screenshots/'
bindsym --release shift+Print exec scrot -sfz -e 'mkdir -p ~/pictures/screenshots && mv $f ~/pictures/screenshots/'
bindsym --release $mod+Print exec scrot -sfz -e 'mkdir -p ~/pictures/screenshots && mv $f ~/pictures/screenshots/'
bindsym Mod4+p exec nvidia-settings
bindsym XF86AudioLowerVolume exec --no-startup-id mixer vol -5 && $sigaudio
bindsym XF86AudioMute exec --no-startup-id mixer vol 0 && $sigaudio
bindsym XF86AudioRaiseVolume exec --no-startup-id mixer vol +5 && $sigaudio
# scratchpad terminal
bindsym $mod+shift+p move scratchpad
bindsym $mod+p scratchpad show
# 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
set $mode_system l e s r shift+s
mode "$mode_system" {{
bindsym e exit
bindsym l exec --no-startup-id $locker, mode "default"
bindsym s exec --no-startup-id $locker ; exec --no-startup-id sleep 2 && doas acpiconf -s3, mode "default"
bindsym r exec doas reboot
bindsym shift+s exec doas poweroff
bindsym Return mode "default"
bindsym q mode "default"
bindsym Escape mode "default"
}}
set $mode_volume j k m
mode "$mode_volume" {{
bindsym j exec mixer vol -5 && $sigaudio
bindsym m exec mixer vol 0 && $sigaudio
bindsym k exec mixer vol +5 && $sigaudio
bindsym Return mode "default"
bindsym q mode "default"
bindsym Escape mode "default"
}}
set $mode_help Help/Handbook Browser Files Email News YouTube Dictionary Dock/Compositor Ports Webcam/Screencast AutoLock-Toggle Mixer
mode "$mode_help" {{
bindsym Return mode "default"
bindsym q mode "default"
bindsym Escape mode "default"
}}
bindsym $mod+Insert mode "$mode_system"
bindsym $mod+F1 mode "$mode_help"
bindsym $mod+F12 mode "$mode_volume"
## BARS
bar {{
modifier Mod1
strip_workspace_numbers yes
position bottom
status_command i3blocks 2>/var/log/xinit/i3blocks.log
colors {{
background $color8
statusline $color15
separator $colorin
# class border background foreground
focused_workspace $color15 $coloract $color15
active_workspace $color15 $coloract $color15
inactive_workspace $split $colorin $color15
urgent_workspace $coloru $coloru $color15
}}
}}
## DEFAULT PLACEMENT
for_window [class = "Wpg"] floating enable
for_window [title = "Reading Email"] floating enable
for_window [title = "Reading News"] floating enable
for_window [title = "Streaming from YouTube"] floating enable; sticky enable
for_window [title = "pwcview"] border pixel 1; floating enable; sticky enable; move position 1598px 808px
for_window [title = "sxiv"] floating enable
## STARTUP
exec firefox
|