My dotfiles. Period.

config 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420
  1. #------------------------------------------------------------------------#
  2. ## Some colors have names ##
  3. #------------------------------------------------------------------------#
  4. set $aos_ui_blck #000020
  5. set $aos_ui_orng #f08000
  6. set $aos_ui_blue #0050a0
  7. set $aos_ui_whit #f0f0f0
  8. set $aos_cr_blck #000000
  9. set $aos_cr_dorg #d02020
  10. set $aos_cr_lorg #f0c0a0
  11. set $greenish_black #1d1d1b
  12. set $greenish_red #ecba82
  13. set $greenish_green #2e933c
  14. set $greenish_dgrn #297045
  15. set $greenish_blue #83a598
  16. set $greenish_white #ebdbb2
  17. set $transparent #0000000F
  18. #------------------------------------------------------------------------#
  19. ## Basically basic ##
  20. #------------------------------------------------------------------------#
  21. set $spn PRETTY=notify
  22. set $mod Mod4
  23. floating_modifier $mod
  24. mouse_warping none
  25. hide_edge_borders vertical
  26. font pango:Inconsolata 12
  27. # change focus
  28. bindsym $mod+h focus left
  29. bindsym $mod+j focus down
  30. bindsym $mod+k focus up
  31. bindsym $mod+l focus right
  32. # alternatively, you can use the cursor keys:
  33. bindsym $mod+Left focus left
  34. bindsym $mod+Down focus down
  35. bindsym $mod+Up focus up
  36. bindsym $mod+Right focus right
  37. # change output focus
  38. bindsym $mod+Ctrl+h focus output left
  39. bindsym $mod+Ctrl+j focus output down
  40. bindsym $mod+Ctrl+k focus output up
  41. bindsym $mod+Ctrl+l focus output right
  42. # alternatively, you can use the cursor keys:
  43. bindsym $mod+Ctrl+Left focus output left
  44. bindsym $mod+Ctrl+Down focus output down
  45. bindsym $mod+Ctrl+Up focus output up
  46. bindsym $mod+Ctrl+Right focus output right
  47. # move focused window
  48. bindsym $mod+Shift+h move left
  49. bindsym $mod+Shift+j move down
  50. bindsym $mod+Shift+k move up
  51. bindsym $mod+Shift+l move right
  52. # alternatively, you can use the cursor keys:
  53. bindsym $mod+Shift+Left move left
  54. bindsym $mod+Shift+Down move down
  55. bindsym $mod+Shift+Up move up
  56. bindsym $mod+Shift+Right move right
  57. # split in horizontal orientation
  58. bindsym $mod+g split h
  59. # split in vertical orientation
  60. bindsym $mod+v split v
  61. # enter fullscreen mode for the focused container
  62. bindsym $mod+f fullscreen
  63. # change container layout (stacked, tabbed, toggle split)
  64. bindsym $mod+s layout stacking
  65. bindsym $mod+w layout tabbed
  66. bindsym $mod+e layout toggle split
  67. # toggle tiling / floating
  68. bindsym $mod+Shift+space floating toggle
  69. # change focus between tiling / floating windows
  70. bindsym $mod+space focus mode_toggle
  71. # focus the parent container
  72. bindsym $mod+a focus parent
  73. bindsym $mod+Shift+a focus child
  74. # assign workspace names
  75. set $w1 1
  76. set $w2 2
  77. set $w3 3
  78. set $w4 4
  79. set $w5 5
  80. set $w6 6
  81. set $w7 7
  82. set $w8 8
  83. set $w9 9
  84. set $w0 10
  85. # switch to workspace
  86. bindsym $mod+1 workspace $w1
  87. bindsym $mod+2 workspace $w2
  88. bindsym $mod+3 workspace $w3
  89. bindsym $mod+4 workspace $w4
  90. bindsym $mod+5 workspace $w5
  91. bindsym $mod+6 workspace $w6
  92. bindsym $mod+7 workspace $w7
  93. bindsym $mod+8 workspace $w8
  94. bindsym $mod+9 workspace $w9
  95. bindsym $mod+0 workspace $w0
  96. bindsym $mod+Page_Up workspace prev_on_output
  97. bindsym $mod+Page_Down workspace next_on_output
  98. # move focused container to workspace
  99. bindsym $mod+Shift+1 move container to workspace $w1
  100. bindsym $mod+Shift+2 move container to workspace $w2
  101. bindsym $mod+Shift+3 move container to workspace $w3
  102. bindsym $mod+Shift+4 move container to workspace $w4
  103. bindsym $mod+Shift+5 move container to workspace $w5
  104. bindsym $mod+Shift+6 move container to workspace $w6
  105. bindsym $mod+Shift+7 move container to workspace $w7
  106. bindsym $mod+Shift+8 move container to workspace $w8
  107. bindsym $mod+Shift+9 move container to workspace $w9
  108. bindsym $mod+Shift+0 move container to workspace $w0
  109. bindsym $mod+Shift+Page_Up move container to workspace prev_on_output
  110. bindsym $mod+Shift+Page_Down move container to workspace next_on_output
  111. bindsym $mod+Shift+Tab move scratchpad
  112. bindsym $mod+Tab scratchpad show
  113. bindsym $mod+Shift+r restart
  114. #------------------------------------------------------------------------#
  115. ## Maybe Modes ##
  116. #------------------------------------------------------------------------#
  117. bindsym $mod+backslash mode "mark"
  118. mode "mark" {
  119. #      
  120. #        
  121. # ⓿ ❶ ❷ ❸ ❹ ❺ ❻ ❼ ❽ ❾
  122. set $neutral "<span></span> %title"
  123. set $runn "<span foreground='cyan'></span> %title"
  124. set $pass "<span foreground='lime'></span> %title"
  125. set $warn "<span foreground='orange'></span> %title"
  126. set $fail "<span foreground='#992222'></span> %title"
  127. set $num1 "❶ %title"
  128. set $num2 "❷ %title"
  129. set $num3 "❸ %title"
  130. set $num4 "❹ %title"
  131. set $num5 "❺ %title"
  132. set $num6 "❻ %title"
  133. set $num7 "❼ %title"
  134. set $num8 "❽ %title"
  135. set $num9 "❾ %title"
  136. set $num0 "⓿ %title"
  137. # Ⓐ Ⓑ Ⓒ Ⓓ Ⓔ Ⓕ Ⓖ Ⓗ Ⓘ Ⓙ Ⓚ Ⓛ Ⓜ Ⓝ Ⓞ Ⓟ Ⓠ Ⓡ Ⓢ Ⓣ Ⓤ Ⓥ Ⓦ Ⓧ Ⓨ Ⓩ
  138. # ⓐ ⓑ ⓒ ⓓ ⓔ ⓕ ⓖ ⓗ ⓘ ⓙ ⓚ ⓛ ⓜ ⓝ ⓞ ⓟ ⓠ ⓡ ⓢ ⓣ ⓤ ⓥ ⓦ ⓧ ⓨ ⓩ
  139. set $letterA "Ⓐ %title"
  140. set $letterB "Ⓑ %title"
  141. set $letterC "Ⓒ %title"
  142. set $letterD "Ⓓ %title"
  143. set $letterE "Ⓔ %title"
  144. set $letterF "Ⓕ %title"
  145. set $letterG "Ⓖ %title"
  146. set $letterH "Ⓗ %title"
  147. set $letterI "Ⓘ %title"
  148. set $letterJ "Ⓙ %title"
  149. set $letterK "Ⓚ %title"
  150. set $letterL "Ⓛ %title"
  151. set $letterM "Ⓜ %title"
  152. set $letterN "Ⓝ %title"
  153. set $letterO "Ⓞ %title"
  154. set $letterP "Ⓟ %title"
  155. set $letterQ "Ⓠ %title"
  156. set $letterR "Ⓡ %title"
  157. set $letterS "Ⓢ %title"
  158. set $letterT "Ⓣ %title"
  159. set $letterU "Ⓤ %title"
  160. set $letterV "Ⓥ %title"
  161. set $letterW "Ⓦ %title"
  162. set $letterX "Ⓧ %title"
  163. set $letterY "Ⓨ %title"
  164. set $letterZ "Ⓩ %title"
  165. set $strike "<s>%title</s>"
  166. set $unders "<u>%title</u>"
  167. set $italic "<i>%title</i>"
  168. set $normal "%title"
  169. set $list "<span></span> %title"
  170. set $item "<span></span> %title"
  171. set $favorite "<span></span> %title"
  172. set $watcher "<span foreground='black'>| |</span> %title"
  173. set $ewatcher "<span foreground='black'>|</span><span foreground='#ee0000'> </span><span foreground='black'>|</span> %title"
  174. set $gwatcher "<span foreground='black'>|</span><span foreground='#00aa00'> </span><span foreground='black'>|</span> %title"
  175. bindsym Page_Up [workspace=__focused__] \
  176. title_format $neutral; mode "default"
  177. bindsym Page_Down [workspace=__focused__] \
  178. title_format $normal ; mode "default"
  179. bindsym p title_format $pass ; mode "default"
  180. bindsym bracketleft title_format $warn ; mode "default"
  181. bindsym bracketright title_format $fail ; mode "default"
  182. bindsym apostrophe title_format $runn ; mode "default"
  183. bindsym semicolon title_format $neutral; mode "default"
  184. bindsym w title_format $watcher ; mode "default"
  185. bindsym e title_format $ewatcher ; mode "default"
  186. bindsym g title_format $gwatcher ; mode "default"
  187. bindsym comma title_format $favorite ; mode "default"
  188. bindsym period title_format $item ; mode "default"
  189. bindsym slash title_format $list ; mode "default"
  190. bindsym BackSpace title_format $strike ; mode "default"
  191. bindsym equal title_format $unders ; mode "default"
  192. bindsym minus title_format $italic ; mode "default"
  193. bindsym space title_format $normal ; mode "default"
  194. bindsym backslash title_format $normal ; mode "default"
  195. bindsym 1 title_format $num1; mode "default"
  196. bindsym 2 title_format $num2; mode "default"
  197. bindsym 3 title_format $num3; mode "default"
  198. bindsym 4 title_format $num4; mode "default"
  199. bindsym 5 title_format $num5; mode "default"
  200. bindsym 6 title_format $num6; mode "default"
  201. bindsym 7 title_format $num7; mode "default"
  202. bindsym 8 title_format $num8; mode "default"
  203. bindsym 9 title_format $num9; mode "default"
  204. bindsym 0 title_format $num0; mode "default"
  205. bindsym Shift+a title_format $letterA; mode "default"
  206. bindsym Shift+b title_format $letterB; mode "default"
  207. bindsym Shift+c title_format $letterC; mode "default"
  208. bindsym Shift+d title_format $letterD; mode "default"
  209. bindsym Shift+e title_format $letterE; mode "default"
  210. bindsym Shift+f title_format $letterF; mode "default"
  211. bindsym Shift+g title_format $letterG; mode "default"
  212. bindsym Shift+h title_format $letterH; mode "default"
  213. bindsym Shift+i title_format $letterI; mode "default"
  214. bindsym Shift+j title_format $letterJ; mode "default"
  215. bindsym Shift+k title_format $letterK; mode "default"
  216. bindsym Shift+l title_format $letterL; mode "default"
  217. bindsym Shift+m title_format $letterM; mode "default"
  218. bindsym Shift+n title_format $letterN; mode "default"
  219. bindsym Shift+o title_format $letterO; mode "default"
  220. bindsym Shift+p title_format $letterP; mode "default"
  221. bindsym Shift+q title_format $letterQ; mode "default"
  222. bindsym Shift+r title_format $letterR; mode "default"
  223. bindsym Shift+s title_format $letterS; mode "default"
  224. bindsym Shift+t title_format $letterT; mode "default"
  225. bindsym Shift+u title_format $letterU; mode "default"
  226. bindsym Shift+v title_format $letterV; mode "default"
  227. bindsym Shift+w title_format $letterW; mode "default"
  228. bindsym Shift+x title_format $letterX; mode "default"
  229. bindsym Shift+y title_format $letterY; mode "default"
  230. bindsym Shift+z title_format $letterZ; mode "default"
  231. bindsym $mod+backslash mode "default"
  232. bindsym Escape mode "default"
  233. bindsym Return mode "default"
  234. }
  235. bindsym $mod+r mode "resize"
  236. mode "resize" {
  237. bindsym Left resize shrink width 200 px or 12 ppt
  238. bindsym Down resize grow height 200 px or 12 ppt
  239. bindsym Up resize shrink height 200 px or 12 ppt
  240. bindsym Right resize grow width 200 px or 12 ppt
  241. bindsym Shift+Left resize shrink width 25 px or 2 ppt
  242. bindsym Shift+Down resize grow height 25 px or 2 ppt
  243. bindsym Shift+Up resize shrink height 25 px or 2 ppt
  244. bindsym Shift+Right resize grow width 25 px or 2 ppt
  245. bindsym $mod+r mode "default"
  246. bindsym Return mode "default"
  247. bindsym Escape mode "default"
  248. }
  249. bar {
  250. id clementine
  251. status_command "~/.i3/bin/cstatus"
  252. workspace_buttons no
  253. tray_output none
  254. mode hide
  255. hidden_state hide
  256. modifier none
  257. output eDP-1
  258. }
  259. bar {
  260. id main
  261. status_command "~/.i3/bin/i3staplus"
  262. bindsym button2 exec thunar
  263. bindsym button3 exec "$spn xclose"
  264. separator_symbol "•"
  265. # other suggestions:
  266. # ‧•┇╻╹╹╿═╎╏◆◾║︙⎪∣∕⟘⟙∙∼⦀⦑⦒⦚⧸⧹▓▒░⧻⧺┆˘͡͡ːˌ˷|・፧።
  267. }
  268. bindsym Caps_Lock mode "caps"
  269. bindsym Shift+Caps_Lock mode "caps"
  270. bindsym Ctrl+Caps_Lock mode "caps"
  271. bindsym $mod+Caps_Lock mode "caps"
  272. mode "caps" {
  273. bindsym Caps_Lock mode "default"
  274. bindsym Shift+Caps_Lock mode "default"
  275. bindsym Ctrl+Caps_Lock mode "default"
  276. bindsym $mod+Caps_Lock mode "default"
  277. }
  278. #------------------------------------------------------------------------#
  279. ## Openers ##
  280. #------------------------------------------------------------------------#
  281. bindsym $mod+Return exec "urxvt"
  282. bindsym $mod+Shift+Return exec "xfce4-terminal"
  283. bindsym $mod+Home exec "$spn bmo menu home"
  284. bindsym $mod+Shift+Home exec "thunar"
  285. bindsym $mod+p exec "$spn bmo menu run"
  286. bindsym $mod+Shift+p exec "$spn bmo menu run_hist"
  287. #------------------------------------------------------------------------#
  288. ## WWW magic mind readers ##
  289. #------------------------------------------------------------------------#
  290. bindsym $mod+b exec "$spn bmo wish -c -1 -a"
  291. bindsym $mod+c exec "$spn bmo wish -c -1 -a -B"
  292. bindsym $mod+Shift+b exec "$spn bmo wish -c"
  293. bindsym $mod+Shift+c exec "$spn bmo wish -c -B"
  294. bindsym $mod+i exec "$spn bmo menu uris"
  295. bindsym $mod+Shift+i exec "$spn bmo menu www_hist"
  296. bindsym $mod+q exec "$spn bmo wish -c -q g"
  297. bindsym $mod+Shift+q exec "$spn bmo wish -c -Q"
  298. bindsym $mod+t exec "acclive"
  299. #------------------------------------------------------------------------#
  300. ## Killers ##
  301. #------------------------------------------------------------------------#
  302. bindsym $mod+Delete kill
  303. 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'"
  304. #------------------------------------------------------------------------#
  305. ## Desktop states ##
  306. #------------------------------------------------------------------------#
  307. bindsym $mod+Escape exec "$spn bmo iam afk"
  308. bindsym $mod+Shift+Escape exec "$spn bmo iam gone"
  309. bindsym $mod+m exec "$spn bmo menu status"
  310. bindsym $mod+Shift+m exec "i3-dmenu-desktop --dmenu='bmo dmenu'"
  311. bindsym $mod+o exec "$spn bmo menu context"
  312. bindsym $mod+Print exec "newfeh"
  313. bindsym $mod+grave exec "$spn bmo menu windows"
  314. #------------------------------------------------------------------------#
  315. ## Desktop-ey other stuff ##
  316. #------------------------------------------------------------------------#
  317. bindsym $mod+n exec "$spn bmo kb home"
  318. bindsym $mod+Shift+n exec "$spn bmo kb next"
  319. bindsym $mod+Insert exec "$spn bmo clip save"
  320. bindsym $mod+Shift+Insert exec "$spn bmo clip open"
  321. bindsym $mod+d exec "xbacklight -dec 49"
  322. bindsym $mod+Shift+d exec "xbacklight -inc 5"
  323. bindsym XF86AudioRaiseVolume exec "$spn bmo au up"
  324. bindsym XF86AudioLowerVolume exec "$spn bmo au down"
  325. bindsym XF86AudioMute exec "$spn bmo au flip"
  326. #------------------------------------------------------------------------#
  327. ## Typing macros wow ##
  328. #------------------------------------------------------------------------#
  329. bindsym --release $mod+Ctrl+apostrophe exec "xdotool .i3/macros/apostrophe.xdotool"
  330. bindsym --release $mod+Ctrl+asterisk exec "xdotool .i3/macros/asterisk.xdotool"
  331. bindsym --release $mod+Ctrl+slash exec "xdotool .i3/macros/slash.xdotool"
  332. bindsym --release $mod+Ctrl+comma exec "xdotool .i3/macros/comma.xdotool"
  333. bindsym --release $mod+Ctrl+semicolon exec "xdotool .i3/macros/semicolon.xdotool"
  334. bindsym --release $mod+Ctrl+period exec "xdotool .i3/macros/period.xdotool"
  335. bindsym --release $mod+Ctrl+9 exec "xdotool .i3/macros/9.xdotool"
  336. bindsym --release $mod+Ctrl+grave exec "xdotool .i3/macros/grave.xdotool"
  337. bindsym --release $mod+Ctrl+bracketleft exec "xdotool .i3/macros/bracketleft.xdotool"
  338. bindsym --release $mod+Ctrl+bracketright exec "xdotool .i3/macros/bracketright.xdotool"
  339. #------------------------------------------------------------------------#
  340. ## Less smart apps ##
  341. #------------------------------------------------------------------------#
  342. for_window [class="Shutter"] floating enable
  343. for_window [class="Orage"] floating enable
  344. #------------------------------------------------------------------------#
  345. ## autoexec.bat ##
  346. #------------------------------------------------------------------------#
  347. exec "newfeh"
  348. exec "dunst"
  349. exec "psi-plus"
  350. exec "dropbox start"
  351. exec "urxvt -e weechat"
  352. exec "nm-applet"
  353. exec "shutter --min_at_startup"
  354. exec "/opt/keybase/Keybase"