Advertisement
Dobbie03

Untitled

Jul 20th, 2018
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.30 KB | None | 0 0
  1. # ArchLabs i3 config
  2.  
  3. # Xresources var value fallback
  4. set_from_resource $bg background #2c2b2c
  5. set_from_resource $fg foreground #a4a4a4
  6. set_from_resource $black color0 #19043C
  7. set_from_resource $red color1 #EE79A9
  8. set_from_resource $green color2 #8C9440
  9. set_from_resource $yellow color3 #DE935F
  10. set_from_resource $blue color4 #05C6F1
  11. set_from_resource $purple color5 #85678F
  12. set_from_resource $cyan color6 #5E8D87
  13. set_from_resource $grey color7 #3f4042
  14.  
  15. # class bd bg txt ind child_bd
  16. client.focused $grey $bg $fg $blue $grey
  17. client.unfocused $grey $bg $black $bg $bg
  18. client.focused_inactive $grey $bg $black $bg $bg
  19. client.urgent $red $bg $red $red $red
  20. client.placeholder $grey $bg $bg $bg $bg
  21. client.background $bg
  22.  
  23. # border & title.. Must be set to border pixel for gaps to work
  24. for_window [class="^.*"] border pixel 2, title_format "<b> %class >> %title </b>"
  25.  
  26. # gaps
  27. gaps inner 3
  28. gaps outer 3
  29.  
  30. # font
  31. font pango:DejaVu Sans Mono 8
  32.  
  33. # $Mod = Super or Alt?
  34. set $Mod Mod4
  35. #set $Mod Mod1
  36.  
  37. # direction keys
  38. set $up l
  39. set $down k
  40. set $left j
  41. set $right semicolon
  42.  
  43. set $WS1 "1: "
  44. set $WS2 "2: "
  45. set $WS3 "3: "
  46. set $WS4 "4: "
  47. set $WS5 "5: "
  48. set $WS6 "6: "
  49. set $WS7 "7: "
  50. set $WS8 "8: "
  51.  
  52. # monitors
  53. set $Mon1 HDMI1
  54. set $Mon2 HDMI2
  55.  
  56. #####################################################
  57. ############### Autostart ##################
  58. #####################################################
  59.  
  60. # run with reload
  61. exec_always --no-startup-id polybar -r i3-bar
  62. exec_always --no-startup-id nitrogen --restore
  63. exec_always --no-startup-id xrdb -load ~/.Xresources
  64.  
  65. # If you have a numpad you may want to enable this
  66. # exec_always --no-startup-id numlockx on
  67.  
  68. # run once
  69. exec --no-startup-id xfsettingsd
  70. exec --no-startup-id mpd-notification &
  71. exec --no-startup-id mpd
  72. exec --no-startup-id al-compositor --start
  73. exec --no-startup-id xscreensaver -no-splash
  74. # polkit, required for authentication
  75. exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
  76.  
  77. # keyring for storing saved passwords
  78. exec --no-startup-id gnome-keyring-daemon --start --components=pkcs11
  79.  
  80. # pressing super key alone simulates pressing Alt-F1
  81. exec --no-startup-id ksuperkey -e 'Super_L=Alt_L|F1' &
  82. exec --no-startup-id ksuperkey -e 'Super_R=Alt_L|F1' &
  83.  
  84. ###########################################################
  85. ############# Bindings ##################
  86. ###########################################################
  87.  
  88. # kill focused window
  89. bindsym $Mod+Shift+q kill
  90. bindsym Mod1+q kill
  91.  
  92. # launchers
  93. bindsym Control+space exec --no-startup-id ~/bin/dmenumpd
  94.  
  95. # this is needed for super key to launch rofi
  96. bindsym Mod1+F1 exec --no-startup-id rofi-apps
  97.  
  98. # core
  99. bindsym $Mod+e exec --no-startup-id geany
  100. bindsym $Mod+t exec kitty
  101. bindsym $Mod+w exec exo-open --launch WebBrowser
  102. bindsym $Mod+f exec exo-open --launch FileManager
  103. bindsym $Mod+m exec --launch sonata
  104. #bindsym $Mod+shift+m exec ~/bin/dmenumpd
  105. # logout script
  106. bindsym $Mod+x exec --no-startup-id rofr.sh -l
  107.  
  108. # Screenshot
  109. bindsym Print exec --no-startup-id "scrot '%S.png' \
  110. -e 'mv $f $$(xdg-user-dir PICTURES)/ArchLabs-%S-$wx$h.png \
  111. ; gpicview $$(xdg-user-dir PICTURES)/ArchLabs-%S-$wx$h.png'"
  112.  
  113. # audio
  114. bindsym XF86AudioPrev exec mpc prev
  115. bindsym XF86AudioNext exec mpc next
  116. bindsym XF86AudioPlay exec mpc toggle
  117. bindsym XF86AudioRaiseVolume exec --no-startup-id pamixer -i 2
  118. bindsym XF86AudioLowerVolume exec --no-startup-id pamixer -d 2
  119. bindsym XF86AudioMute exec --no-startup-id pamixer -t
  120.  
  121. # backlight
  122. bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 10
  123. bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 10
  124.  
  125. ################################################################
  126. ########### Workspace Bindings ###############
  127. ################################################################
  128.  
  129. # workspace assignment
  130. workspace $WS1 output $Mon1
  131. workspace $WS2 output $Mon1
  132. workspace $WS3 output $Mon1
  133. workspace $WS4 output $Mon1
  134. workspace $WS5 output $Mon2
  135. workspace $WS6 output $Mon2
  136. workspace $WS7 output $Mon2
  137. workspace $WS8 output $Mon2
  138.  
  139. # switch to workspace
  140. bindsym $Mod+1 workspace $WS1
  141. bindsym $Mod+2 workspace $WS2
  142. bindsym $Mod+3 workspace $WS3
  143. bindsym $Mod+4 workspace $WS4
  144. bindsym $Mod+5 workspace $WS5
  145. bindsym $Mod+6 workspace $WS6
  146. bindsym $Mod+7 workspace $WS7
  147. bindsym $Mod+8 workspace $WS8
  148.  
  149. # move focused container to workspace
  150. bindsym $Mod+Shift+1 move container to workspace $WS1; workspace $WS1
  151. bindsym $Mod+Shift+2 move container to workspace $WS2; workspace $WS2
  152. bindsym $Mod+Shift+3 move container to workspace $WS3; workspace $WS3
  153. bindsym $Mod+Shift+4 move container to workspace $WS4; workspace $WS4
  154. bindsym $Mod+Shift+5 move container to workspace $WS5; workspace $WS5
  155. bindsym $Mod+Shift+6 move container to workspace $WS6; workspace $WS6
  156. bindsym $Mod+Shift+7 move container to workspace $WS7; workspace $WS7
  157. bindsym $Mod+Shift+8 move container to workspace $WS8; workspace $WS8
  158.  
  159. ############################################################
  160. ############## Reload configs ################
  161. ############################################################
  162.  
  163. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  164. bindsym $Mod+Shift+r restart
  165.  
  166. # reload the configuration file
  167. bindsym $Mod+Shift+c reload
  168.  
  169. ########################################################
  170. ############ Container/Window control ############
  171. ########################################################
  172.  
  173. # Scratchpad, Floating
  174. bindsym $Mod+Shift+space floating toggle
  175. floating_modifier Mod1
  176.  
  177. bindsym $Mod+Shift+z move scratchpad
  178. bindsym $Mod+z scratchpad show
  179.  
  180. # change focus
  181. bindsym $Mod+$left focus left
  182. bindsym $Mod+$down focus down
  183. bindsym $Mod+$up focus up
  184. bindsym $Mod+$right focus right
  185.  
  186. # alternatively, you can use the cursor keys:
  187. bindsym $Mod+Left focus left
  188. bindsym $Mod+Down focus down
  189. bindsym $Mod+Up focus up
  190. bindsym $Mod+Right focus right
  191.  
  192. bindsym $Mod+p focus parent
  193. bindsym $Mod+c focus child
  194.  
  195. # move focused window
  196. bindsym $Mod+Shift+$left move left 10px
  197. bindsym $Mod+Shift+$down move down 10px
  198. bindsym $Mod+Shift+$up move up 10px
  199. bindsym $Mod+Shift+$right move right 10px
  200.  
  201. # alternatively, you can use the cursor keys:
  202. bindsym $Mod+Shift+Up move up 10px
  203. bindsym $Mod+Shift+Down move down 10px
  204. bindsym $Mod+Shift+Left move left 10px
  205. bindsym $Mod+Shift+Right move right 10px
  206.  
  207. # Size
  208. bindsym Mod1+Up resize shrink height 10 px or 1 ppt
  209. bindsym Mod1+Down resize grow height 10 px or 1 ppt
  210. bindsym Mod1+Left resize shrink width 10 px or 1 ppt
  211. bindsym Mod1+Right resize grow width 10 px or 1 ppt
  212.  
  213. # layout toggle, keycode 23 is Tab
  214. bindcode Mod1+23 layout toggle tabbed split
  215. bindcode $Mod+23 layout toggle splitv splith
  216.  
  217. # switch to workspace with urgent window
  218. for_window [urgent="latest"] focus
  219. focus_on_window_activation focus
  220.  
  221. # container layout
  222. bindsym $Mod+h split h
  223. bindsym $Mod+v split v
  224. bindsym $Mod+Shift+t layout tabbed
  225. bindsym $Mod+Shift+s layout stacking
  226. bindsym $Mod+Shift+h layout toggle split
  227. default_orientation horizontal
  228.  
  229. ######################################################
  230. ############### Border & Gaps ###############
  231. ######################################################
  232.  
  233. new_window normal
  234. new_float normal
  235. hide_edge_borders both
  236. popup_during_fullscreen smart
  237. bindsym $Mod+shift+b border toggle
  238.  
  239. # changing border style
  240. bindsym $Mod+n border normal
  241. bindsym $Mod+y border 1pixel
  242. bindsym $Mod+u border none
  243.  
  244. # change gaps
  245. bindsym $Mod+plus gaps inner current plus 5
  246. bindsym $Mod+minus gaps inner current minus 5
  247. bindsym $Mod+Shift+plus gaps outer current plus 5
  248. bindsym $Mod+Shift+minus gaps outer current minus 5
  249. bindsym $Mod+Control+plus gaps inner all plus 5
  250. bindsym $Mod+Control+minus gaps inner all minus 5
  251. bindsym $Mod+Control+Shift+plus gaps outer all plus 5
  252. bindsym $Mod+Control+Shift+minus gaps outer all minus 5
  253.  
  254. ###################################################
  255. ############ application settings ############
  256. ###################################################
  257.  
  258. for_window [class="(?i)(?:qt5ct|pinentry)"] floating enable, focus
  259. for_window [class="(?i)(?:termite|thunar)"] focus
  260. for_window [class="(?i)(?:geany|firefox)"] focus
  261. for_window [class="(?i)(?:sonata)"] floating enable, focus
  262. for_window [class="(?i)(?:nitrogen)"] floating enable, focus
  263. for_window [class="(?i)(?:thunar)"] floating enable, focus
  264.  
  265. # Assign Applications to specific workspace
  266. # get class with xprop
  267. assign [class="(?i)(?:firefox)"] → $WS1
  268. assign [class="(?i)(?:chromium)"] → $WS1
  269. assign [class="(?i)(?:geany)"] → $WS2
  270. assign [class="(?i)(?:gpick)"] → $WS2
  271. assign [class="(?i)(?:thunar)"] → $WS3
  272. assign [class="(?i)(?:audacious)"] → $WS4
  273. assign [class="(?i)(?:kitty)"] → $WS5
  274. assign [class="(?i)(?:deluge)"] → $WS6
  275. assign [class="(?i)(?:easytag)"] → $WS7
  276. assign [class="(?i)(?:sonata)"] → $WS7
  277.  
  278. # focus, floating, & sticky
  279. for_window [title="(?i)(?:copying|deleting|moving)"] floating enable
  280. for_window [window_role="(?i)(?:pop-up|setup)"] floating enable
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement