My dotfiles. Period.

config 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. #------------------------------------------------------------------------#
  2. ## Basically basic ##
  3. #------------------------------------------------------------------------#
  4. set $spn PRETTY=notify
  5. set $mod Mod4
  6. floating_modifier $mod
  7. mouse_warping none
  8. hide_edge_borders vertical
  9. font pango:DejaVu Sans Mono 11
  10. # change focus
  11. bindsym $mod+h focus left
  12. bindsym $mod+j focus down
  13. bindsym $mod+k focus up
  14. bindsym $mod+l focus right
  15. # alternatively, you can use the cursor keys:
  16. bindsym $mod+Left focus left
  17. bindsym $mod+Down focus down
  18. bindsym $mod+Up focus up
  19. bindsym $mod+Right focus right
  20. # move focused window
  21. bindsym $mod+Shift+h move left
  22. bindsym $mod+Shift+j move down
  23. bindsym $mod+Shift+k move up
  24. bindsym $mod+Shift+l move right
  25. # alternatively, you can use the cursor keys:
  26. bindsym $mod+Shift+Left move left
  27. bindsym $mod+Shift+Down move down
  28. bindsym $mod+Shift+Up move up
  29. bindsym $mod+Shift+Right move right
  30. # split in horizontal orientation
  31. bindsym $mod+g split h
  32. # split in vertical orientation
  33. bindsym $mod+v split v
  34. # enter fullscreen mode for the focused container
  35. bindsym $mod+f fullscreen
  36. # change container layout (stacked, tabbed, toggle split)
  37. bindsym $mod+s layout stacking
  38. bindsym $mod+w layout tabbed
  39. bindsym $mod+e layout toggle split
  40. # toggle tiling / floating
  41. bindsym $mod+Shift+space floating toggle
  42. # change focus between tiling / floating windows
  43. bindsym $mod+space focus mode_toggle
  44. # focus the parent container
  45. bindsym $mod+a focus parent
  46. bindsym $mod+Shift+a focus child
  47. # assign workspace names
  48. set $w1 1
  49. set $w2 2
  50. set $w3 3
  51. set $w4 4
  52. set $w5 5
  53. set $w6 6
  54. set $w7 7
  55. set $w8 8
  56. set $w9 9
  57. set $w0 10
  58. # switch to workspace
  59. bindsym $mod+1 workspace $w1
  60. bindsym $mod+2 workspace $w2
  61. bindsym $mod+3 workspace $w3
  62. bindsym $mod+4 workspace $w4
  63. bindsym $mod+5 workspace $w5
  64. bindsym $mod+6 workspace $w6
  65. bindsym $mod+7 workspace $w7
  66. bindsym $mod+8 workspace $w8
  67. bindsym $mod+9 workspace $w9
  68. bindsym $mod+0 workspace $w0
  69. bindsym $mod+Page_Up workspace prev_on_output
  70. bindsym $mod+Page_Down workspace next_on_output
  71. # move focused container to workspace
  72. bindsym $mod+Shift+1 move container to workspace $w1
  73. bindsym $mod+Shift+2 move container to workspace $w2
  74. bindsym $mod+Shift+3 move container to workspace $w3
  75. bindsym $mod+Shift+4 move container to workspace $w4
  76. bindsym $mod+Shift+5 move container to workspace $w5
  77. bindsym $mod+Shift+6 move container to workspace $w6
  78. bindsym $mod+Shift+7 move container to workspace $w7
  79. bindsym $mod+Shift+8 move container to workspace $w8
  80. bindsym $mod+Shift+9 move container to workspace $w9
  81. bindsym $mod+Shift+0 move container to workspace $w0
  82. bindsym $mod+Shift+Page_Up move container to workspace prev_on_output
  83. bindsym $mod+Shift+Page_Down move container to workspace next_on_output
  84. bindsym $mod+Shift+Tab move scratchpad
  85. bindsym $mod+Tab scratchpad show
  86. bindsym $mod+Shift+r restart
  87. #------------------------------------------------------------------------#
  88. ## Maybe Modes ##
  89. #------------------------------------------------------------------------#
  90. bindsym $mod+backslash mode "mark"
  91. mode "mark" {
  92. #      
  93. #        
  94. set $neutral "<span foreground='#999999'></span> %title"
  95. set $runn "<span foreground='cyan'></span> %title"
  96. set $pass "<span foreground='lime'></span> %title"
  97. set $warn "<span foreground='orange'></span> %title"
  98. set $fail "<span foreground='#992222'></span> %title"
  99. set $strike "<s>%title</s>"
  100. set $unders "<u>%title</u>"
  101. set $italic "<i>%title</i>"
  102. set $normal "%title"
  103. set $list "<span foreground='#999999'></span> %title"
  104. set $item "<span foreground='#999999'></span> %title"
  105. set $favorite "<span foreground='red'></span> %title"
  106. bindsym m exec i3-winmark mark ; mode "default"
  107. bindsym u exec i3-winmark unmark ; mode "default"
  108. bindsym g exec i3-winmark goto ; mode "default"
  109. bindsym Page_Up [workspace=__focused__] \
  110. title_format $neutral; mode "default"
  111. bindsym Page_Down [workspace=__focused__] \
  112. title_format $normal ; mode "default"
  113. bindsym p title_format $pass ; mode "default"
  114. bindsym bracketleft title_format $warn ; mode "default"
  115. bindsym bracketright title_format $fail ; mode "default"
  116. bindsym apostrophe title_format $runn ; mode "default"
  117. bindsym semicolon title_format $neutral; mode "default"
  118. bindsym comma title_format $favorite ; mode "default"
  119. bindsym period title_format $item ; mode "default"
  120. bindsym slash title_format $list ; mode "default"
  121. bindsym BackSpace title_format $strike ; mode "default"
  122. bindsym equal title_format $unders ; mode "default"
  123. bindsym minus title_format $italic ; mode "default"
  124. bindsym space title_format $normal ; mode "default"
  125. bindsym backslash title_format $normal ; mode "default"
  126. bindsym $mod+backslash mode "default"
  127. bindsym Escape mode "default"
  128. bindsym Return mode "default"
  129. }
  130. bindsym $mod+r mode "resize"
  131. mode "resize" {
  132. bindsym Left resize shrink width 200 px or 12 ppt
  133. bindsym Down resize grow height 200 px or 12 ppt
  134. bindsym Up resize shrink height 200 px or 12 ppt
  135. bindsym Right resize grow width 200 px or 12 ppt
  136. bindsym Shift+Left resize shrink width 25 px or 2 ppt
  137. bindsym Shift+Down resize grow height 25 px or 2 ppt
  138. bindsym Shift+Up resize shrink height 25 px or 2 ppt
  139. bindsym Shift+Right resize grow width 25 px or 2 ppt
  140. bindsym $mod+r mode "default"
  141. bindsym Return mode "default"
  142. bindsym Escape mode "default"
  143. }
  144. bar {
  145. status_command i3status
  146. bindsym button2 exec thunar
  147. bindsym button3 exec "$spn xclose"
  148. separator_symbol "•"
  149. # other suggestions:
  150. # ‧•┇╻╹╹╿═╎╏◆◾║︙⎪∣∕⟘⟙∙∼⦀⦑⦒⦚⧸⧹▓▒░⧻⧺┆˘͡͡ːˌ˷|・፧።
  151. }
  152. bindsym Caps_Lock mode "caps"
  153. bindsym Shift+Caps_Lock mode "caps"
  154. bindsym Ctrl+Caps_Lock mode "caps"
  155. bindsym $mod+Caps_Lock mode "caps"
  156. mode "caps" {
  157. bindsym Caps_Lock mode "default"
  158. bindsym Shift+Caps_Lock mode "default"
  159. bindsym Ctrl+Caps_Lock mode "default"
  160. bindsym $mod+Caps_Lock mode "default"
  161. }
  162. #------------------------------------------------------------------------#
  163. ## Openers ##
  164. #------------------------------------------------------------------------#
  165. bindsym $mod+Return exec "urxvt"
  166. bindsym $mod+Shift+Return exec "xfce4-terminal"
  167. bindsym $mod+Home exec "$spn bmo menu home"
  168. bindsym $mod+Shift+Home exec "thunar"
  169. bindsym $mod+p exec "$spn bmo menu run"
  170. bindsym $mod+Shift+p exec "$spn bmo menu run_hist"
  171. #------------------------------------------------------------------------#
  172. ## WWW magic mind readers ##
  173. #------------------------------------------------------------------------#
  174. bindsym $mod+b exec "$spn bmo wish -c -1 -a"
  175. bindsym $mod+c exec "$spn bmo wish -c -1 -a -B"
  176. bindsym $mod+Shift+b exec "$spn bmo wish -c"
  177. bindsym $mod+Shift+c exec "$spn bmo wish -c -B"
  178. bindsym $mod+i exec "$spn bmo menu uris"
  179. bindsym $mod+Shift+i exec "$spn bmo menu www_hist"
  180. bindsym $mod+q exec "$spn bmo wish -c -q g"
  181. bindsym $mod+Shift+q exec "$spn bmo wish -c -Q"
  182. bindsym $mod+t exec "acclive"
  183. #------------------------------------------------------------------------#
  184. ## Killers ##
  185. #------------------------------------------------------------------------#
  186. bindsym $mod+Delete kill
  187. bindsym $mod+Shift+Delete exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit' 'i3-msg exit'"
  188. #------------------------------------------------------------------------#
  189. ## Desktop states ##
  190. #------------------------------------------------------------------------#
  191. bindsym $mod+Escape exec "$spn bmo iam afk"
  192. bindsym $mod+Shift+Escape exec "$spn bmo iam gone"
  193. bindsym $mod+m exec "$spn bmo menu status"
  194. bindsym $mod+Shift+m exec "i3-dmenu-desktop --dmenu='bmo dmenu'"
  195. bindsym $mod+o exec "$spn bmo menu context"
  196. #------------------------------------------------------------------------#
  197. ## Desktop-ey other stuff ##
  198. #------------------------------------------------------------------------#
  199. bindsym $mod+n exec "$spn bmo kb next"
  200. bindsym $mod+Shift+n exec "$spn bmo kb home"
  201. bindsym $mod+Insert exec "$spn bmo clip save"
  202. bindsym $mod+Shift+Insert exec "$spn bmo clip open"
  203. bindsym $mod+d exec "xbacklight -dec 49"
  204. bindsym $mod+Shift+d exec "xbacklight -inc 5"
  205. bindsym XF86AudioRaiseVolume exec "$spn bmo au up"
  206. bindsym XF86AudioLowerVolume exec "$spn bmo au down"
  207. bindsym XF86AudioMute exec "$spn bmo au flip"
  208. #------------------------------------------------------------------------#
  209. ## Typing macros wow ##
  210. #------------------------------------------------------------------------#
  211. bindsym --release $mod+Ctrl+apostrophe exec "xdotool .i3/macros/apostrophe.xdotool"
  212. bindsym --release $mod+Ctrl+asterisk exec "xdotool .i3/macros/asterisk.xdotool"
  213. bindsym --release $mod+Ctrl+slash exec "xdotool .i3/macros/slash.xdotool"
  214. bindsym --release $mod+Ctrl+comma exec "xdotool .i3/macros/comma.xdotool"
  215. bindsym --release $mod+Ctrl+semicolon exec "xdotool .i3/macros/semicolon.xdotool"
  216. bindsym --release $mod+Ctrl+period exec "xdotool .i3/macros/period.xdotool"
  217. bindsym --release $mod+Ctrl+9 exec "xdotool .i3/macros/9.xdotool"
  218. bindsym --release $mod+Ctrl+grave exec "xdotool .i3/macros/grave.xdotool"
  219. bindsym --release $mod+Ctrl+bracketleft exec "xdotool .i3/macros/bracketleft.xdotool"
  220. bindsym --release $mod+Ctrl+bracketright exec "xdotool .i3/macros/bracketright.xdotool"
  221. #------------------------------------------------------------------------#
  222. ## Less smart apps ##
  223. #------------------------------------------------------------------------#
  224. for_window [class="Shutter"] floating enable
  225. for_window [class="Orage"] floating enable
  226. #------------------------------------------------------------------------#
  227. ## autoexec.bat ##
  228. #------------------------------------------------------------------------#
  229. exec "newfeh"
  230. exec "dunst"
  231. exec "psi-plus"
  232. exec "dropbox start"
  233. exec "urxvt -e weechat"
  234. exec "nm-applet"
  235. exec "shutter --min_at_startup"
  236. exec "QSyncthingTray"