config 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. #font pango:Fira Code 12, FontAwesome 12, FiraCode Nerd Font 12
  2. font Unifont, 12
  3. focus_on_window_activation urgent
  4. focus_follows_mouse no
  5. mouse_warping none
  6. floating_minimum_size 100 x 100
  7. floating_maximum_size 1920 x 1080
  8. # class border bground text indicator child_border
  9. client.focused #FF5555 #6272A4 #F8F8F2 #6272A4 #FF5555
  10. client.focused_inactive #44475A #44475A #F8F8F2 #44475A #44475A
  11. client.unfocused #282A36 #282A36 #BFBFBF #282A36 #282A36
  12. client.urgent #44475A #FF5555 #F8F8F2 #FF5555 #FF5555
  13. client.placeholder #282A36 #282A36 #F8F8F2 #282A36 #282A36
  14. client.background #F8F8F2
  15. exec --no-startup-id ~/.screenlayout/monitor.sh
  16. exec --no-startup-id pipewire
  17. exec --no-startup-id pipewire-pulse
  18. exec --no-startup-id wireplumber
  19. exec --no-startup-id pactl load-module module-combine-sink
  20. #exec --no-startup-id dunst --config ~/.config/dunst/dunstrc
  21. #exec --no-startup-id ~/.config/i3/scripts/delayedautostart.sh
  22. for_window [class="Alacritty"] focus
  23. for_window [all] border pixel 2
  24. for_window [all] title_window_icon on
  25. # set floating (nontiling)for apps needing it
  26. for_window [class="Yad" instance="yad"] floating enable
  27. for_window [class="com..*"] floating enable
  28. for_window [title="floatthiswindow"] floating enable
  29. for_window [class="Galculator" instance="galculator"] floating enable
  30. for_window [class="Blueberry.py" instance="blueberry.py"] floating enable
  31. for_window [class="Xsane" instance="xsane"] floating enable
  32. for_window [class="Pavucontrol" instance="pavucontrol"] floating enable
  33. for_window [class="qt5ct" instance="qt5ct"] floating enable
  34. for_window [class="Blueberry.py" instance="blueberry.py"] floating enable
  35. for_window [class="Bluetooth-sendto" instance="bluetooth-sendto"] floating enable
  36. for_window [class="Pamac-manager"] floating enable
  37. for_window [class="Xfce4.*settings"] floating enable
  38. for_window [title="PlayOnLinux configuration"] floating enable
  39. for_window [title="PlayOnLinux"] floating enable
  40. assign [instance="startKitty"] $ws1
  41. assign [instance="startEmacs"] $ws2
  42. assign [class="^[Ss]team.*"] $ws5
  43. assign [class="airshipper"] $ws5
  44. assign [class="^Minecraft.*"] $ws5
  45. assign [class="^MultiMc.*"] $ws5
  46. set $mod Mod4
  47. # Use Mouse+$mod to drag floating windows to their wanted position
  48. floating_modifier $mod
  49. bindsym $mod+Return exec xrdb -load ~/.config/X11/Xresources; exec terminal
  50. # kill focused window
  51. bindsym $mod+Shift+c kill
  52. set $ws1 "1:CMD"
  53. set $ws2 "2:WORK"
  54. set $ws3 "3:WWW"
  55. set $ws4 "4:FILE"
  56. set $ws5 "5:GAMES"
  57. set $ws6 "6"
  58. set $ws7 "7"
  59. set $ws8 "8"
  60. set $ws9 "9:CHAT"
  61. set $ws10 "10:KEY"
  62. # switch to workspace
  63. bindsym $mod+1 workspace $ws1
  64. bindsym $mod+2 workspace $ws2
  65. bindsym $mod+3 workspace $ws3
  66. bindsym $mod+4 workspace $ws4
  67. bindsym $mod+5 workspace $ws5
  68. bindsym $mod+6 workspace $ws6
  69. bindsym $mod+7 workspace $ws7
  70. bindsym $mod+8 workspace $ws8
  71. bindsym $mod+9 workspace $ws9
  72. bindsym $mod+0 workspace $ws10
  73. # move focused container to workspace
  74. bindsym $mod+Shift+1 move container to workspace $ws1
  75. bindsym $mod+Shift+2 move container to workspace $ws2
  76. bindsym $mod+Shift+3 move container to workspace $ws3
  77. bindsym $mod+Shift+4 move container to workspace $ws4
  78. bindsym $mod+Shift+5 move container to workspace $ws5
  79. bindsym $mod+Shift+6 move container to workspace $ws6
  80. bindsym $mod+Shift+7 move container to workspace $ws7
  81. bindsym $mod+Shift+8 move container to workspace $ws8
  82. bindsym $mod+Shift+9 move container to workspace $ws9
  83. bindsym $mod+Shift+0 move container to workspace $ws10
  84. bindsym Print exec "flameshot full"
  85. bindsym Shift+Print exec "flameshot gui"
  86. bindsym Control+Print exec "flameshot screen"
  87. bindsym $mod+h focus left
  88. bindsym $mod+j focus down
  89. bindsym $mod+k focus up
  90. bindsym $mod+l focus right
  91. bindsym $mod+Mod1+h focus output left
  92. bindsym $mod+Mod1+j focus output down
  93. bindsym $mod+Mod1+k focus output up
  94. bindsym $mod+Mod1+l focus output right
  95. bindsym $mod+Shift+h move left
  96. bindsym $mod+Shift+j move down
  97. bindsym $mod+Shift+k move up
  98. bindsym $mod+Shift+l move right
  99. bindsym $mod+Mod1+Shift+h move output left; focus output left
  100. bindsym $mod+Mod1+Shift+j move output down; focus output down
  101. bindsym $mod+Mod1+Shift+k move output up; focus output up
  102. bindsym $mod+Mod1+Shift+l move output right; focus output right
  103. bindsym $mod+Mod1+Control+h move workspace to output left
  104. bindsym $mod+Mod1+Control+j move workspace to output down
  105. bindsym $mod+Mod1+Control+k move workspace to output up
  106. bindsym $mod+Mod1+Control+l move workspace to output right
  107. # Swap workspace between screens
  108. #bindsym Mod4+Shift+Control+j exec ~/.config/i3/scripts/display_swap
  109. bindsym $mod+Ctrl+h resize shrink width 10 px or 10 ppt
  110. bindsym $mod+Ctrl+k resize grow height 10 px or 10 ppt
  111. bindsym $mod+Ctrl+j resize shrink height 10 px or 10 ppt
  112. bindsym $mod+Ctrl+l resize grow width 10 px or 10 ppt
  113. bindsym $mod+Shift+s split toggle
  114. # Change focus between tiling / floating windows
  115. bindsym $mod+space focus mode_toggle
  116. # focus the parent container
  117. bindsym $mod+a focus parent
  118. bindsym $mod+t layout tabbed
  119. bindsym $mod+v layout toggle split
  120. bindsym $mod+f floating toggle
  121. bindsym $mod+m fullscreen
  122. set $rofi "r - Apps | c - Calc"
  123. bindsym $mod+r exec dmenu_run -b
  124. mode $rofi {
  125. bindsym r exec rofi -modi drun -show drun \
  126. -location 6 -m -1 -display-drun "Apps: " \
  127. -show-icons; mode "default"
  128. bindsym c exec rofi -modi calc -show calc \
  129. -location 6 -m -1; mode "default"
  130. bindsym Return mode "default"
  131. bindsym Escape mode "default"
  132. }
  133. set $system "p - Power Off | r - Reboot | s - Suspend | h - Hibernate | \
  134. l - Lock | R - Reload I3 | C-r - Restart I3 | L - Logout"
  135. bindsym $mod+s mode $system
  136. mode $system {
  137. bindsym p exec "i3-nagbar -t warning -m 'Power off?' \
  138. -B 'Yup' 'systemctl poweroff'"; mode "default"
  139. bindsym r exec "i3-nagbar -t warning -m 'Restart?' \
  140. -B 'Yup' 'systemctl reboot'"; mode "default"
  141. bindsym s exec systemctl suspend; mode "default"
  142. bindsym h exec systemctl hibernate; mode "default"
  143. bindsym l exec i3lock -c000000; mode "default"
  144. bindsym Shift+r reload; mode "default"
  145. bindsym Ctrl+r restart; mode "default"
  146. bindsym Shift+l exit; mode "default"
  147. bindsym Return mode "default"
  148. bindsym Escape mode "default"
  149. }
  150. bar {
  151. #font pango:Fira Code 11, FontAwesome 11
  152. font Unifont 11
  153. tray_output primary
  154. tray_padding 0
  155. status_command i3blocks -c ~/.config/i3/blocks.conf
  156. position bottom
  157. strip_workspace_numbers yes
  158. colors {
  159. background #2E303F
  160. statusline #F8F8F2
  161. separator #44475A
  162. focused_workspace #44475A #44475A #F8F8F2
  163. active_workspace #282A36 #44475A #F8F8F2
  164. inactive_workspace #282A36 #282A36 #BFBFBF
  165. urgent_workspace #FF5555 #FF5555 #F8F8F2
  166. binding_mode #FF5555 #FF5555 #F8F8F2
  167. }
  168. }