Guest User

i3-config

a guest
Jul 11th, 2019
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 8.07 KB | None | 0 0
  1. # This file has been auto-generated by i3-config-wizard(1).
  2. # It will not be overwritten, so edit it as you like.
  3. #
  4. # Should you change your keyboard layout some time, delete
  5. # this file and re-run i3-config-wizard(1).
  6. #
  7.  
  8. # i3 config file (v4)
  9. #
  10. # Please see https://i3wm.org/docs/userguide.html for a complete reference!
  11.  
  12. set $mod Mod4
  13. set $term urxvt
  14. set $browser firefox
  15.  
  16. # Font for window titles. Will also be used by the bar unless a different font
  17. # is used in the bar {} block below.
  18. font xft:DejaVu Sans Mono 10px
  19.  
  20. # This font is widely installed, provides lots of unicode glyphs, right-to-left
  21. # text rendering and scalability on retina/hidpi displays (thanks to pango).
  22. #font pango:DejaVu Sans Mono 8
  23.  
  24. # Before i3 v4.8, we used to recommend this one as the default:
  25. # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
  26. # The font above is very space-efficient, that is, it looks good, sharp and
  27. # clear in small sizes. However, its unicode glyph coverage is limited, the old
  28. # X core fonts rendering does not support right-to-left and this being a bitmap
  29. # font, it doesn’t scale on retina/hidpi displays.
  30.  
  31. # Use Mouse+$mod to drag floating windows to their wanted position
  32. floating_modifier $mod
  33.  
  34. # start a terminal
  35. bindsym $mod+Return exec $term
  36.  
  37. # kill focused window
  38. bindsym $mod+q kill
  39.  
  40. # start rofi (a program launcher)
  41. bindsym $mod+d exec rofi -show run
  42. # There also is the (new) i3-dmenu-desktop which only displays applications
  43. # shipping a .desktop file. It is a wrapper around dmenu, so you need that
  44. # installed.
  45. # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
  46.  
  47. # change focus
  48. bindsym $mod+j focus left
  49. bindsym $mod+k focus down
  50. bindsym $mod+l focus up
  51. bindsym $mod+semicolon focus right
  52.  
  53. # alternatively, you can use the cursor keys:
  54. bindsym $mod+Left focus left
  55. bindsym $mod+Down focus down
  56. bindsym $mod+Up focus up
  57. bindsym $mod+Right focus right
  58.  
  59. # move focused window
  60. bindsym $mod+Shift+j move left
  61. bindsym $mod+Shift+k move down
  62. bindsym $mod+Shift+l move up
  63. bindsym $mod+Shift+semicolon move right
  64.  
  65. # alternatively, you can use the cursor keys:
  66. bindsym $mod+Shift+Left move left
  67. bindsym $mod+Shift+Down move down
  68. bindsym $mod+Shift+Up move up
  69. bindsym $mod+Shift+Right move right
  70.  
  71. # split in horizontal orientation
  72. #bindsym $mod+h split h
  73.  
  74. # split in vertical orientation
  75. #
  76. #bindsym $mod+v split v
  77.  
  78. # enter fullscreen mode for the focused container
  79. bindsym $mod+f fullscreen toggle
  80.  
  81.  
  82. ####
  83. # THESE SETTINGS ARE CANCER
  84. ####
  85. # change container layout (stacked, tabbed, toggle split)
  86. #bindsym $mod+s layout stacking
  87. #bindsym $mod+Shift+w layout tabbed
  88. #bindsym $mod+e layout toggle split
  89.  
  90. # toggle tiling / floating
  91. bindsym $mod+space floating toggle
  92.  
  93. # change focus between tiling / floating windows
  94. bindsym $mod+Shift+space focus mode_toggle
  95.  
  96. # focus the parent container
  97. bindsym $mod+a focus parent
  98.  
  99. # focus the child container
  100. #bindsym $mod+d focus child
  101.  
  102. # Define names for default workspaces for which we configure key bindings later on.
  103. # We use variables to avoid repeating the names in multiple places.
  104. set $ws1 "1"
  105. set $ws2 "2"
  106. set $ws3 "3"
  107. set $ws4 "4"
  108. set $ws5 "5"
  109. set $ws6 "6"
  110. set $ws7 "7"
  111. set $ws8 "8"
  112. set $ws9 "9"
  113. set $ws10 "10"
  114.  
  115. # switch to workspace
  116. bindsym $mod+1 workspace $ws1
  117. bindsym $mod+2 workspace $ws2
  118. bindsym $mod+3 workspace $ws3
  119. bindsym $mod+4 workspace $ws4
  120. bindsym $mod+5 workspace $ws5
  121. bindsym $mod+6 workspace $ws6
  122. bindsym $mod+7 workspace $ws7
  123. bindsym $mod+8 workspace $ws8
  124. bindsym $mod+9 workspace $ws9
  125. bindsym $mod+0 workspace $ws10
  126.  
  127. # move focused container to workspace
  128. bindsym $mod+Shift+1 move container to workspace $ws1
  129. bindsym $mod+Shift+2 move container to workspace $ws2
  130. bindsym $mod+Shift+3 move container to workspace $ws3
  131. bindsym $mod+Shift+4 move container to workspace $ws4
  132. bindsym $mod+Shift+5 move container to workspace $ws5
  133. bindsym $mod+Shift+6 move container to workspace $ws6
  134. bindsym $mod+Shift+7 move container to workspace $ws7
  135. bindsym $mod+Shift+8 move container to workspace $ws8
  136. bindsym $mod+Shift+9 move container to workspace $ws9
  137. bindsym $mod+Shift+0 move container to workspace $ws10
  138.  
  139. # reload the configuration file
  140. bindsym $mod+Shift+c reload
  141. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  142. bindsym $mod+Shift+r restart
  143. # exit i3 (logs you out of your X session)
  144. bindsym $mod+Shift+e 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' 'i3-msg exit'"
  145.  
  146. # resize window (you can also use the mouse for that)
  147. mode "resize" {
  148.         # These bindings trigger as soon as you enter the resize mode
  149.  
  150.         # Pressing left will shrink the window’s width.
  151.         # Pressing right will grow the window’s width.
  152.         # Pressing up will shrink the window’s height.
  153.         # Pressing down will grow the window’s height.
  154.         bindsym j resize shrink width 10 px or 10 ppt
  155.         bindsym k resize grow height 10 px or 10 ppt
  156.         bindsym l resize shrink height 10 px or 10 ppt
  157.         bindsym semicolon resize grow width 10 px or 10 ppt
  158.  
  159.         # same bindings, but for the arrow keys
  160.         bindsym Left resize shrink width 10 px or 10 ppt
  161.         bindsym Down resize grow height 10 px or 10 ppt
  162.         bindsym Up resize shrink height 10 px or 10 ppt
  163.         bindsym Right resize grow width 10 px or 10 ppt
  164.  
  165.         # back to normal: Enter or Escape or $mod+r
  166.         bindsym Return mode "default"
  167.         bindsym Escape mode "default"
  168.         bindsym $mod+r mode "default"
  169. }
  170.  
  171. bindsym $mod+r mode "resize"
  172.  
  173. #Compositor -- compton
  174. exec_always --no-startup-id ~/.config/compton/compton.sh
  175.  
  176. # Custom bar -- polybar
  177. exec_always --no-startup-id ~/.config/polybar/polybar.sh
  178.  
  179. # Custom song change notification script
  180. exec_always --no-startup-id ~/Scripts/song_notify/prepareNotify.sh &
  181.  
  182. # Remove that stupid title bar
  183. new_window 1pixel
  184.  
  185. # Keymaps for opening vertical or horizontal terminals
  186. bindsym $mod+apostrophe     split horizontal ;; exec $term
  187. bindsym $mod+slash      split vertical ;; exec $term
  188.  
  189. # GAPS
  190. gaps inner 10
  191. gaps outer 5
  192.  
  193. bindsym $mod+g gaps inner all set 10; gaps outer all set 5
  194.  
  195. #############
  196. # Media keys
  197. #############
  198.  
  199. # Volume script
  200. bindsym $mod+minus exec --no-startup-id ~/.config/dunstVolumeScripts/volume.sh down
  201. bindsym $mod+plus exec --no-startup-id ~/.config/dunstVolumeScripts/volume.sh up
  202. bindsym $mod+m exec --no-startup-id ~/.config/dunstVolumeScripts/volume.sh mute
  203.  
  204. # CMUS
  205. #bindsym $mod+m exec --no-startup-id $term -e cmus          # PLAYER START
  206. #bindsym $mod+p exec --no-startup-id cmus-remote -u         # PLAY/PAUSE
  207. #bindsym $mod+period exec --no-startup-id cmus-remote -n        # NEXT SONG
  208. #bindsym $mod+comma exec --no-startup-id cmus-remote -r         # PREV SONG
  209. #bindsym $mod+bracketleft exec --no-startup-id cmus-remote -k -10   # REWIND 10 SECONDS
  210. #bindsym $mod+bracketright exec --no-startup-id cmus-remote -k +10  # FORWARD 10 SECONDS
  211.  
  212. ######################
  213. # MPD + NCMPCPP
  214. ######################
  215. bindsym $mod+Shift+m        exec --no-startup-id $term -e ncmpcpp   # PLAYER START
  216. bindsym $mod+p          exec --no-startup-id mpc toggle     # PLAY/PAUSE
  217. bindsym $mod+period     exec --no-startup-id mpc next       # NEXT SONG
  218. bindsym $mod+comma      exec --no-startup-id mpc prev       # PREV SONG
  219. bindsym $mod+bracketleft    exec --no-startup-id mpc seek -10   # REWIND 10 SECONDS
  220. bindsym $mod+bracketright   exec --no-startup-id mpc seek +10   # FORWARD 10 SECONDS
  221.  
  222.  
  223.  
  224. # This is for forcing the song change popup, just to see the current song
  225. bindsym $mod+o          exec --no-startup-id Scripts/song_notify/popup.sh
  226.  
  227.  
  228. # Scroll through workspaces
  229. bindsym --whole-window $mod+button5 workspace next_on_output
  230. bindsym --whole-window $mod+button4 workspace prev_on_output
  231. bindsym $mod+Tab workspace back_and_forth
  232.  
  233. # scrot
  234. bindsym Print exec --no-startup-id scrot
  235.  
  236.  
  237. # Default some stuff to floating
  238. for_window [class="feh"] floating enable
  239. for_window [class="mpv"] floating enable
  240.  
  241. # Colors
  242. client.focused #555555 #555555 #ffffff #2e9ef4     #336067
  243.  
  244.  
  245. # Open browser
  246. bindsym $mod+w exec --no-startup-id $browser
Advertisement
Add Comment
Please, Sign In to add comment