summaryrefslogtreecommitdiff
path: root/.config/i3
diff options
context:
space:
mode:
Diffstat (limited to '.config/i3')
-rw-r--r--.config/i3/config218
1 files changed, 218 insertions, 0 deletions
diff --git a/.config/i3/config b/.config/i3/config
new file mode 100644
index 0000000..1aec666
--- /dev/null
+++ b/.config/i3/config
@@ -0,0 +1,218 @@
+## 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 exec i3-msg 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
+
+## GAPS/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 "#7b895c"
+set $colorin "#545e3f"
+set_from_resource $color0 i3wm.color0 "#12231e"
+set_from_resource $color15 i3wm.color15 "#fffff5"
+set_from_resource $color8 i3wm.color8 "#22443a"
+set_from_resource $coloru i3wm.color2 "#6C6E57"
+set_from_resource $split i3wm.color10 "#969b64"
+
+# 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 --no-startup-id i3-filescmd.sh
+bindsym $mod+F4 exec --no-startup-id i3-mailcmd.sh
+bindsym $mod+F5 exec --no-startup-id i3-newsboatcmd.sh
+bindsym $mod+F6 exec --no-startup-id url_handler.sh
+bindsym $mod+F7 exec --no-startup-id dict.sh
+bindsym $mod+F8 exec toggle-webcam.sh
+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 toggle-compositing.sh
+#bindsym $mod+F10 exec
+#bindsym $mod+F11 exec
+bindsym $mod+Shift+F11 exec --no-startup-id xautolock -toggle
+bindsym $mod+Shift+F12 exec --no-startup-id i3-mixercmd.sh
+bindsym $mod+Return split horizontal; exec --no-startup-id alacritty
+bindsym $mod+Shift+Return split vertical; exec --no-startup-id alacritty
+bindsym $mod+Shift+Insert exec --no-startup-id $locker
+bindsym $mod+a exec --no-startup-id rofi -show run
+bindsym $mod+shift+q kill
+bindsym --release Print exec --no-startup-id i3-screeniecmd.sh
+bindsym --release shift+Print exec --no-startup-id i3-screenie_regioncmd.sh
+bindsym --release $mod+Print exec --no-startup-id i3-screenie_regioncmd.sh
+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 exec --no-startup-id i3-msg exit, mode "default"
+ 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 --no-startup-id doas reboot, mode "default"
+ bindsym shift+s exec --no-startup-id doas poweroff, mode "default"
+ 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