Guest User

Untitled

a guest
Nov 17th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.25 KB | None | 0 0
  1. #########################################
  2. ### KEY DEFINITIONS ####
  3. #########################################
  4. ## $Mod = Super key or Mod4 ##
  5. ## Mod1 = ALT key ##
  6. ## Control = CTRL key ##
  7. ## Shift = SHIFT key ##
  8. ## Escape = ESCAPE key ##
  9. ## Return = ENTER or RETURN key ##
  10. ## Pause = PAUSE key ##
  11. ## Print = PRINT key ##
  12. ## Tab = TAB key ##
  13. #########################################
  14. ####################################################################################################
  15. ################# Style settings #################
  16. ####################################################################################################
  17.  
  18. # Window colors
  19. set $border-color #292929
  20. set $background-color #292929
  21. set $inactive-color #D7D7D7
  22. set $text-color #898989
  23. set $urgent-color #494949
  24. set $active-color #595959
  25.  
  26. # class background border text indicator
  27. client.focused $border-color $active-color $text-color $inactive-color
  28. client.unfocused $border-color $border-color $text-color $border-color
  29. client.focused_inactive $border-color $border-color $text-color $border-color
  30. client.urgent $border-color $urgent-color $urgent-color $border-color
  31.  
  32. # border
  33. for_window [class="^.*"] border pixel 4
  34.  
  35. # gaps
  36. gaps inner 0
  37. gaps outer 0
  38.  
  39. ####################################################################################################
  40. ################# Define variables #################
  41. ####################################################################################################
  42.  
  43. #set Super or Alt key
  44. set $mod Mod4
  45. #set $mod Mod1
  46.  
  47. # vim directional keys
  48. set $up l
  49. set $down k
  50. set $left j
  51. set $right semicolon
  52.  
  53. ####################################################################################################
  54. ################# Define Workspaces and screens #################
  55. ####################################################################################################
  56.  
  57. # monitors
  58. set $firstMonitor DVI-D-0
  59. set $secondMonitor HDMI-A-0
  60.  
  61. # workspace assignment
  62. workspace 1 output $firstMonitor
  63. workspace 2 output $firstMonitor
  64. workspace 3 output $firstMonitor
  65. workspace 4 output $firstMonitor
  66. workspace 5 output $secondMonitor
  67. workspace 6 output $secondMonitor
  68. workspace 7 output $secondMonitor
  69. workspace 8 output $secondMonitor
  70. workspace 9 output $firstMonitor
  71. workspace 10 output $secondMonitor
  72.  
  73. # switch to workspace
  74. bindsym $mod+1 workspace 1
  75. bindsym $mod+2 workspace 2
  76. bindsym $mod+3 workspace 3
  77. bindsym $mod+4 workspace 4
  78. bindsym $mod+5 workspace 5
  79. bindsym $mod+6 workspace 6
  80. bindsym $mod+7 workspace 7
  81. bindsym $mod+8 workspace 8
  82. bindsym $mod+9 workspace 9
  83. bindsym $mod+0 workspace 10
  84.  
  85. # move focused container to workspace
  86. bindsym $mod+Shift+1 move container to workspace 1; workspace 1
  87. bindsym $mod+Shift+2 move container to workspace 2; workspace 2
  88. bindsym $mod+Shift+3 move container to workspace 3; workspace 3+q
  89. bindsym $mod+Shift+4 move container to workspace 4; workspace 4
  90. bindsym $mod+Shift+5 move container to workspace 5; workspace 5
  91. bindsym $mod+Shift+6 move container to workspace 6; workspace 6
  92. bindsym $mod+Shift+7 move container to workspace 7; workspace 7
  93. bindsym $mod+Shift+8 move container to workspace 8; workspace 8+q
  94. bindsym $mod+Shift+9 move container to workspace 9; workspace 9
  95. bindsym $mod+Shift+0 move container to workspace 10; workspace 10
  96.  
  97. ####################################################################################################
  98. ################# reload configs #################
  99. ####################################################################################################
  100.  
  101. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  102. bindsym $mod+Shift+r restart
  103.  
  104. # reload the configuration file
  105. bindsym $mod+Shift+c reload
  106.  
  107. # kill focused window
  108. bindsym $mod+Shift+q kill
  109.  
  110. bindsym --release button2 kill
  111.  
  112. ####################################################################################################
  113. ################ Container/window control ##################
  114. ####################################################################################################
  115.  
  116. # Use Mouse+$mod to drag floating windows to their wanted position
  117. floating_modifier $mod
  118.  
  119. # toggle tiling / floating
  120. bindsym $mod+Shift+space floating toggle
  121.  
  122. # change focus
  123. bindsym $mod+$left focus left
  124. bindsym $mod+$down focus down
  125. bindsym $mod+$up focus up
  126. bindsym $mod+$right focus right
  127.  
  128. # alternatively, you can use the cursor keys:
  129. bindsym $mod+Left focus left
  130. bindsym $mod+Down focus down
  131. bindsym $mod+Up focus up
  132. bindsym $mod+Right focus right
  133.  
  134.  
  135. # move focused window
  136. bindsym $mod+Shift+$left move left
  137. bindsym $mod+Shift+$down move down
  138. bindsym $mod+Shift+$up move up
  139. bindsym $mod+Shift+$right move right
  140.  
  141. # alternatively, you can use the cursor keys:
  142. bindsym $mod+Shift+Left move left
  143. bindsym $mod+Shift+Down move down
  144. bindsym $mod+Shift+Up move up
  145. bindsym $mod+Shift+Right move right
  146.  
  147. # resizing
  148. bindsym mod1+Left resize shrink width 10 px or 1 ppt
  149. bindsym mod1+Down resize grow height 10 px or 1 ppt
  150. bindsym mod1+Up resize shrink height 10 px or 1 ppt
  151. bindsym mod1+Right resize grow width 10 px or 1 ppt
  152.  
  153. # next/previous workspace
  154. bindsym Mod1+Tab workspace next
  155. bindsym Mod1+Shift+Tab workspace prev
  156. bindsym $mod+Tab workspace back_and_forth
  157.  
  158. #navigate workspaces next / previous
  159. bindsym Mod1+Ctrl+Right workspace next
  160. bindsym Mod1+Ctrl+Left workspace prev
  161.  
  162. # switch to workspace with urgent window
  163. for_window [urgent=latest] focus
  164.  
  165. # default tiling orientation
  166. default_orientation horizontal
  167.  
  168. # container layout
  169. bindsym $mod+h split h
  170. bindsym $mod+v split v
  171. bindsym $mod+Shift+t layout tabbed
  172. bindsym $mod+Shift+s layout stacking
  173. bindsym $mod+Shift+h layout splith
  174. bindsym $mod+Shift+v layout splitv
  175.  
  176. # switch between tiling / floating
  177. bindsym $mod+space focus mode_toggle
  178.  
  179. # focus the parent container
  180. bindsym $mod+a focus parent
  181.  
  182. # focus the child container
  183. #bindsym $mod+d focus child
  184.  
  185. ####################################################################################################
  186. ################# Autostart applications ##################
  187. ####################################################################################################
  188.  
  189. # scripts & settings
  190. exec_always --no-startup-id $HOME/.config/i3/scripts/compositor.sh
  191. exec_always --no-startup-id launch-polybar
  192. exec_always --no-startup-id skippy-xd --start-daemon --config $HOME/.config/skippy-xd/skippy-xd.rc
  193. exec_always --no-startup-id numlockx on
  194.  
  195. # run once at startup
  196. exec --no-startup-id xfsettingsd &
  197. #exec --no-startup-id ksuperkey -e 'Super_L=Alt_L|F1'
  198. exec --no-startup-id nitrogen --restore
  199. exec --no-startup-id al-conky-session
  200. exec --no-startup-id /usr/bin/lxpolkit
  201. exec --no-startup-id parcellite
  202.  
  203. ####################################################################################################
  204. ################# application keyboard shortcuts ##################
  205. ####################################################################################################
  206.  
  207. bindsym $mod+e exec --no-startup-id al-open -edit
  208. #bindsym Control+space exec --no-startup-id rofi-apps
  209. bindsym mod1+F2 exec --no-startup-id rofi-apps
  210. bindsym $mod+t exec --no-startup-id exo-open --launch TerminalEmulator
  211. #bindsym $mod+w exec --no-startup-id exo-open --launch WebBrowser
  212. bindsym $mod+f exec --no-startup-id exo-open --launch FileManager
  213.  
  214. # good example for long command being broken into multiple lines (i3 is fine with this using "\")
  215. bindsym Print exec --no-startup-id "scrot '%S.png' \
  216. -e 'mv $f $$(xdg-user-dir PICTURES)/ArchLabs-%S-$wx$h.png \
  217. ; gpicview $$(xdg-user-dir PICTURES)/ArchLabs-%S-$wx$h.png'"
  218.  
  219. ####################################################################################################
  220. ################# application settings #################
  221. ####################################################################################################
  222.  
  223. for_window [class="qt5ct|Lxappearance|^Gpick$|Pamac|Peek|Nitrogen"] floating enable
  224. for_window [window_role="^Preferences$"] floating enable
  225.  
  226. for_window [class="Termite|^Thunar|Geany|Firefox|Vialdi-stable"] focus
  227.  
  228. # Assign Applications to specific workspace
  229. # get class with xprop
  230. assign [class="Firefox"] → 2
  231. assign [class="Vivaldi-stable"] → 2
  232. assign [class="Thunar"] → 3
  233. assign [class="^Gimp"] → 4
  234. assign [class="Geany"] → 5
  235. assign [class="Subl3"] → 5
  236.  
  237.  
  238.  
  239. ####################################################################################################
  240. ################# audio settings #################
  241. ####################################################################################################
  242.  
  243. bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
  244. bindsym XF86AudioNext exec --no-startup-id playerctl next
  245. bindsym XF86AudioPrev exec --no-startup-id playerctl previous
  246. bindsym XF86AudioStop exec --no-startup-id playerctl stop
  247. bindsym XF86AudioRaiseVolume exec --no-startup-id pamixer -i 2
  248. bindsym XF86AudioLowerVolume exec --no-startup-id pamixer -d 2
  249. bindsym XF86AudioMute exec --no-startup-id pamixer -t
  250. bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 10 # increase screen brightness
  251. bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 10 # decrease screen brightness
  252.  
  253. ####################################################################################################
  254. ################# border control #################
  255. ####################################################################################################
  256.  
  257. hide_edge_borders both
  258. bindsym $mod+shift+b exec --no-startup-id i3-msg border toggle
  259.  
  260. #changing border style
  261. bindsym $mod+n border normal
  262. bindsym $mod+y border 1pixel
  263. bindsym $mod+u border none
  264.  
  265. new_window normal
  266. new_float normal
  267. popup_during_fullscreen smart
  268.  
  269.  
  270. ####################################################################################################
  271. ################# logout #################
  272. ####################################################################################################
  273.  
  274. bindsym $mod+X mode "$mode_system"
  275.  
  276. set $mode_system Q ➤  W ➤  E ➤  R ➤ 
  277. mode "$mode_system" {
  278. bindsym q exec --no-startup-id i3lock-fancy, mode "default"
  279. bindsym w exec --no-startup-id ~/.config/i3/scripts/i3exit.sh logout, mode "default"
  280. bindsym e exec --no-startup-id ~/.config/i3/scripts/i3exit.sh reboot, mode "default"
  281. bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit.sh shutdown, mode "default"
  282. bindsym Return mode "default"
  283. bindsym Escape mode "default"
  284. }
  285.  
  286. ####################################################################################################
  287. ################# i3 gaps change #################
  288. ####################################################################################################
  289.  
  290. set $mode_gaps Gap Size  + | - 
  291. bindsym $mod+Shift+g mode "$mode_gaps"
  292. mode "$mode_gaps" {
  293. bindsym plus gaps inner all plus 2
  294. bindsym minus gaps inner all minus 2
  295. bindsym Return mode "default"
  296. bindsym Escape mode "default"
  297. }
  298.  
  299. focus_follows_mouse no
  300.  
  301. for_window [window_role="pop-up"] floating enable
  302.  
  303. for_window [class="keepassxc"] floating enable
  304. for_window [class="keepassxc"] resize set 640 480
  305. for_window [class="keepassxc"] border normal
  306.  
  307. for_window [class="Thunderbird"] floating enable
  308. for_window [class="Thunderbird"] resize set 640 480
  309. for_window [class="Thunderbird"] border normal
  310.  
  311. for_window [class="Nixnote2"] floating enable
  312. for_window [class="Nixnote2"] resize set 640 480
  313. for_window [class="Nixnote2"] border normal
  314.  
  315.  
  316. for_window [class="Gigolo"] floating enable
  317. for_window [class="Gigolo"] resize set 640 480
  318. for_window [class="Gigolo"] border normal
Add Comment
Please, Sign In to add comment