config 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. ##### i3-config / RESLOVED #######################
  2. ##### GENERAL #####################################
  3. set $mod Mod4
  4. font pango:Go Mono 8
  5. # APP VARIABLES
  6. set $browser qutebrowser
  7. set $term kitty
  8. # DIR VARIABLES
  9. set $bin ~/bin
  10. # RESIZE VARIABLES
  11. set $center move absolute position center
  12. # FLOATING
  13. floating_modifier $mod
  14. set $thick 2
  15. #border_radius 2
  16. # DEFAULT BORDER
  17. for_window [class="^.*"] border pixel $thick
  18. for_window [title="^.*"] border pixel $thick
  19. # APPLICATION BORDERS
  20. for_window [class="Emacs"] border pixel $thick
  21. for_window [class="st"] border pixel $thick
  22. # FLOATING APPLICATIONS
  23. #for_window [class="Orca"] floating enable
  24. # GAP VARIABLES
  25. set $inner 10
  26. set $outer 14
  27. # SET GAPS
  28. gaps inner $inner
  29. gaps outer $outer
  30. # SET BACKGROUND
  31. exec feh --bg-scale ~/var/inbox/ng_photos/`ls -Ar ~/var/inbox/ng_photos | tail -n 1`
  32. # START POLYBAR
  33. exec_always --no-startup-id ~/.config/polybar/launch.sh
  34. # CUSTOM BINDINGS
  35. #bindsym $mod+Return exec --no-startup-id kitty
  36. #bindsym $mod+shift+Return exec --no-startup-id qutebrowser
  37. #bindsym $mod+shift+space exec --no-startup-id rofi-pass --insert
  38. #bindsym $mod+m exec --no-startup-id surf play.unbl.ink/iris
  39. #bindsym $mod+shift+m exec --no-startup-id surf https://15five-dev.atlassian.net/secure/Dashboard.jspa
  40. #bindsym $mod+i exec --no-startup-id surf https://15five.15five.com/report/current/
  41. #bindsym $mod+g exec --no-startup-id surf https://github.com/15five/fifteen5/pulls?utf8=%E2%9C%93&q=is%3Aopen+is%3Apr+label%3Abackend+-reviewed-by%3Apowellc
  42. #bindsym Print exec --no-startup-id gnome-screenshot
  43. #bindsym $mod+Delete exec --no-startup-id "i3lock-fancy"
  44. #bindsym $mod+End exec --no-startup-id "i3lock-fancy" && systemctl suspend
  45. # SCRATCHPAD
  46. bindsym $mod+Return exec $term
  47. #bindsym $mod+BackSpace scratchpad show
  48. #bindsym $mod+Shift+BackSpace floating enable, move position 48 px 48 px, move scratchpad
  49. #bindsym $mod+Ctrl+BackSpace exec $term -e tmux new-session -A -s scratch
  50. # KILL
  51. bindsym $mod+Shift+q kill
  52. bindsym $mod+Ctrl+x exec rofi-exit
  53. # RELOAD
  54. bindsym $mod+Shift+BackSpace reload
  55. # RESTART
  56. bindsym $mod+Shift+r restart
  57. bindsym $mod+w layout toggle split
  58. bindsym $mod+Ctrl+w layout stacked
  59. bindsym $mod+Shift+w layout tabbed
  60. title_align center
  61. ##### MOVEMENT ####################################
  62. # FOCUS
  63. bindsym $mod+h focus left
  64. bindsym $mod+j focus down
  65. bindsym $mod+k focus up
  66. bindsym $mod+l focus right
  67. bindsym $mod+Left focus left
  68. bindsym $mod+Down focus down
  69. bindsym $mod+Up focus up
  70. bindsym $mod+Right focus right
  71. # MOVE
  72. bindsym $mod+Ctrl+h move left
  73. bindsym $mod+Ctrl+j move down
  74. bindsym $mod+Ctrl+k move up
  75. bindsym $mod+Ctrl+l move right
  76. bindsym $mod+Ctrl+Left move left
  77. bindsym $mod+Ctrl+Down move down
  78. bindsym $mod+Ctrl+Up move up
  79. bindsym $mod+Ctrl+Right move right
  80. # RESIZE
  81. bindsym $mod+Shift+h resize shrink width 10px or 10 ppt
  82. bindsym $mod+Shift+j resize shrink height 10px or 10 ppt
  83. bindsym $mod+Shift+k resize grow height 10px or 10 ppt
  84. bindsym $mod+Shift+l resize grow width 10px or 10 ppt
  85. bindsym $mod+Shift+Left resize shrink width 10px or 10 ppt
  86. bindsym $mod+Shift+Down resize shrink height 10px or 10 ppt
  87. bindsym $mod+Shift+Up resize grow height 10px or 10 ppt
  88. bindsym $mod+Shift+Right resize grow width 10px or 10 ppt
  89. bindsym $mod+Shift+Ctrl+h resize shrink width 1px or 1 ppt
  90. bindsym $mod+Shift+Ctrl+j resize shrink height 1px or 1 ppt
  91. bindsym $mod+Shift+Ctrl+k resize grow height 1px or 1 ppt
  92. bindsym $mod+Shift+Ctrl+l resize grow width 1px or 1 ppt
  93. bindsym $mod+Shift+Ctrl+Left resize shrink width 1px or 1 ppt
  94. bindsym $mod+Shift+Ctrl+Down resize shrink height 1px or 1 ppt
  95. bindsym $mod+Shift+Ctrl+Up resize grow height 1px or 1 ppt
  96. bindsym $mod+Shift+Ctrl+Right resize grow width 1px or 1 ppt
  97. # VERTICAL SPLIT
  98. bindsym $mod+v split v
  99. # HORIZONTAL SPLIT
  100. bindsym $mod+b split h
  101. # FULLSCREEN
  102. bindsym $mod+f fullscreen toggle
  103. # TOGGLE FLOATING
  104. #bindsym $mod+escape floating toggle; $center
  105. # MODE TOGGLE
  106. bindsym $mod+Shift+space focus mode_toggle
  107. # PAPER MODE
  108. bindsym $mod+Ctrl+space floating toggle; resize set 700px 975px; $center
  109. # CENTER FLOATING
  110. bindsym $mod+c $center
  111. ##### WORKSPACES ##################################
  112. # WORKSPACES
  113. set $ws1 number 1
  114. set $ws2 number 2
  115. set $ws3 number 3
  116. set $ws4 number 4
  117. set $ws5 number 5
  118. set $ws6 number 6
  119. set $ws7 number 7
  120. set $ws8 number 8
  121. set $ws9 number 9
  122. #set $ws10 "10"
  123. # SWITCH TO WORKSPACE
  124. bindsym $mod+1 workspace $ws1
  125. bindsym $mod+2 workspace $ws2
  126. bindsym $mod+3 workspace $ws3
  127. bindsym $mod+4 workspace $ws4
  128. bindsym $mod+5 workspace $ws5
  129. bindsym $mod+6 workspace $ws6
  130. bindsym $mod+7 workspace $ws7
  131. bindsym $mod+8 workspace $ws8
  132. bindsym $mod+9 workspace $ws9
  133. bindsym $mod+Mod2+KP_1 workspace $ws1
  134. bindsym $mod+Mod2+KP_2 workspace $ws2
  135. bindsym $mod+Mod2+KP_3 workspace $ws3
  136. bindsym $mod+Mod2+KP_4 workspace $ws4
  137. bindsym $mod+Mod2+KP_5 workspace $ws5
  138. bindsym $mod+Mod2+KP_6 workspace $ws6
  139. bindsym $mod+Mod2+KP_7 workspace $ws7
  140. bindsym $mod+Mod2+KP_8 workspace $ws8
  141. bindsym $mod+Mod2+KP_9 workspace $ws9
  142. # MOVE WINDOW TO WORKSPACE
  143. bindsym $mod+Shift+1 move container to workspace $ws1
  144. bindsym $mod+Shift+2 move container to workspace $ws2
  145. bindsym $mod+Shift+3 move container to workspace $ws3
  146. bindsym $mod+Shift+4 move container to workspace $ws4
  147. bindsym $mod+Shift+5 move container to workspace $ws5
  148. bindsym $mod+Shift+6 move container to workspace $ws6
  149. bindsym $mod+Shift+7 move container to workspace $ws7
  150. bindsym $mod+Shift+8 move container to workspace $ws8
  151. bindsym $mod+Shift+9 move container to workspace $ws9
  152. bindsym $mod+Ctrl+Mod2+KP_1 move container to workspace $ws1
  153. bindsym $mod+Ctrl+Mod2+KP_2 move container to workspace $ws2
  154. bindsym $mod+Ctrl+Mod2+KP_3 move container to workspace $ws3
  155. bindsym $mod+Ctrl+Mod2+KP_4 move container to workspace $ws4
  156. bindsym $mod+Ctrl+Mod2+KP_5 move container to workspace $ws5
  157. bindsym $mod+Ctrl+Mod2+KP_6 move container to workspace $ws6
  158. bindsym $mod+Ctrl+Mod2+KP_7 move container to workspace $ws7
  159. bindsym $mod+Ctrl+Mod2+KP_8 move container to workspace $ws8
  160. bindsym $mod+Ctrl+Mod2+KP_9 move container to workspace $ws9
  161. ##### COLORS #######################################
  162. # XRESOURCES
  163. set $fg "#000066"
  164. set $bg "#666666"
  165. set $tx "#FFFFFF"
  166. set $ltx "#CCCCCC"
  167. # CLASS BORDER BACK TEXT INDICATOR
  168. client.focused $fg $fg $tx $fg
  169. client.focused_inactive $fg $fg $fg $fg
  170. client.unfocused $bg $bg $ltx $bg
  171. client.urgent $bg $bg $bg $bg
  172. client.placeholder $bg $bg $bg $bg
  173. ##### TOOLS ########################################
  174. # SCREENSHOT
  175. set $shots ~/var/images
  176. bindsym $mod+Print exec maim --hidecursor $shots/$(date +%s).png
  177. bindsym $mod+Ctrl+Print exec maim -s $shots/$(date +%s).png
  178. bindsym $mod+Shift+Print exec feh $(last $shots)
  179. # CAST
  180. set $casts ~/videos/casts
  181. bindsym $mod+F12 exec cast
  182. bindsym $mod+Ctrl+F12 exec cast -s
  183. #bindsym $mod+Shift+F12 exec
  184. bindsym $mod+Ctrl+F11 exec anypaste -x -s -p streamable $(last $casts)
  185. bindsym $mod+Shift+F11 exec ffplay -loop 0 $(last $casts)
  186. # MEDIA CONTROLS
  187. bindsym $mod+slash exec amixer sset Master toggle
  188. bindsym $mod+comma exec amixer sset Master 5%-
  189. bindsym $mod+period exec amixer sset Master 5%+
  190. bindsym $mod+Shift+slash exec amixer set Capture toggle
  191. bindsym $mod+Shift+comma exec amixer set Capture 5%-
  192. bindsym $mod+Shift+period exec amixer set Capture 5%+
  193. bindsym XF86AudioRaiseVolume exec amixer sset Master 5%+
  194. bindsym XF86AudioLowerVolume exec amixer sset Master 5%-
  195. bindsym XF86AudioMute exec amixer sset Master toggle
  196. bindsym XF86AudioMicMute exec amixer sset Capture toggle
  197. # Sreen brightness controls
  198. bindsym XF86MonBrightnessUp exec ~/.config/i3/bright.sh -u # increase screen brightness
  199. bindsym XF86MonBrightnessDown exec ~/.config/i3/bright.sh -d # decrease screen brightness
  200. bindsym XF86Search exec ~/.config/i3/bright.sh 1 # decrease screen brightness
  201. # ROFI
  202. bindsym $mod+Tab exec rofi -show window -theme list -display-window ""
  203. bindsym $mod+space exec rofi -show run -theme list
  204. #bindsym $mod+Shift+d exec
  205. # BACKGROUND
  206. #exec_always hsetroot -add "#c79081" -add "#dfa579" -gradient 0
  207. exec_always hsetroot -add "#DAD299" -add "#B0DAB9" -gradient 0
  208. #exec_always hsetroot -solid "#c79081"
  209. ##### APP BINDS ###################################
  210. bindsym $mod+n exec $browser
  211. bindsym $mod+Ctrl+n exec rofi-search "$browser --new-window"
  212. bindsym $mod+Shift+n exec rofi-web "$browser --new-window"
  213. #bindsym $mod+y exec
  214. #bindsym $mod+Ctrl+y exec
  215. #bindsym $mod+Shift+y exec
  216. #bindsym $mod+u exec dolphin-emu
  217. #bindsym $mod+Ctrl+u exec
  218. #bindsym $mod+Shift+u exec
  219. bindsym $mod+i exec emacsclient -c
  220. bindsym $mod+Ctrl+i exec pkill emacs && emacs --daemon && emacsclient -c
  221. bindsym $mod+Shift+i exec emacs -ib 16
  222. bindsym $mod+o exec rofi-now
  223. bindsym $mod+Ctrl+o exec rofi-vol
  224. bindsym $mod+Shift+o exec rofi-bat
  225. bindsym $mod+m exec surf https://play.unbl.ink/iris
  226. bindsym $mod+Shift+p exec surf https://15five-dev.atlassian.net/secure/Dashboard.jspa
  227. ##### LAUNCH ######################################
  228. # STARTUP
  229. exec --no-startup-id emacs --daemon
  230. exec --no-startup-id unclutter -grab
  231. # RELOAD
  232. exec_always --no-startup-id ~/code/compton/build/src/compton
  233. #exec_always --no-startup-id compton
  234. exec_always --no-startup-id dunst
  235. exec_always xrdb --merge ~/.Xresoureces
  236. #exec_always xrandr --auto --output eDP-1 --below HDMI-1 --auto
  237. # Setup Russian layout siwtching with Alt+Shift
  238. exec --no-startup-id xrdb ~/.Xresources
  239. ## Volume control
  240. # Path to volume control, without trailing slash
  241. set $volumepath ~/.config/i3/i3-volume