config 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. # i3 config file (v4)
  2. #
  3. # Please see https://i3wm.org/docs/userguide.html for a complete reference!
  4. # TODO get the system tray on all monitors
  5. # TODO monitor hotswapping
  6. set $mod Mod4
  7. # Font for window titles. Will also be used by the bar unless a different font
  8. # is used in the bar {} block below.
  9. font pango:monospace 8
  10. # This font is widely installed, provides lots of unicode glyphs, right-to-left
  11. # text rendering and scalability on retina/hidpi displays (thanks to pango).
  12. #font pango:DejaVu Sans Mono 8
  13. # Before i3 v4.8, we used to recommend this one as the default:
  14. # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
  15. # The font above is very space-efficient, that is, it looks good, sharp and
  16. # clear in small sizes. However, its unicode glyph coverage is limited, the old
  17. # X core fonts rendering does not support right-to-left and this being a bitmap
  18. # font, it doesn’t scale on retina/hidpi displays.
  19. # Use Mouse+$mod to drag floating windows to their wanted position
  20. floating_modifier $mod
  21. # start a terminal
  22. bindsym $mod+Return exec gnome-terminal
  23. # kill focused window
  24. bindsym $mod+Shift+q kill
  25. # start dmenu (a program launcher)
  26. bindsym $mod+d exec dmenu_run
  27. # There also is the (new) i3-dmenu-desktop which only displays applications
  28. # shipping a .desktop file. It is a wrapper around dmenu, so you need that
  29. # installed.
  30. # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
  31. # change focus
  32. bindsym $mod+h focus left
  33. bindsym $mod+j focus down
  34. bindsym $mod+k focus up
  35. bindsym $mod+l focus right
  36. # alternatively, you can use the cursor keys:
  37. bindsym $mod+Left focus left
  38. bindsym $mod+Down focus down
  39. bindsym $mod+Up focus up
  40. bindsym $mod+Right focus right
  41. # move focused window
  42. bindsym $mod+Shift+h move left
  43. bindsym $mod+Shift+j move down
  44. bindsym $mod+Shift+k move up
  45. bindsym $mod+Shift+l move right
  46. # alternatively, you can use the cursor keys:
  47. bindsym $mod+Shift+Left move left
  48. bindsym $mod+Shift+Down move down
  49. bindsym $mod+Shift+Up move up
  50. bindsym $mod+Shift+Right move right
  51. # split in horizontal orientation
  52. bindsym $mod+g split h
  53. # split in vertical orientation
  54. bindsym $mod+v split v
  55. # enter fullscreen mode for the focused container
  56. bindsym $mod+f fullscreen toggle
  57. # change container layout (stacked, tabbed, toggle split)
  58. bindsym $mod+s layout stacking
  59. bindsym $mod+w layout tabbed
  60. bindsym $mod+e layout toggle split
  61. # toggle tiling / floating
  62. bindsym $mod+Shift+space floating toggle
  63. # change focus between tiling / floating windows
  64. bindsym $mod+space focus mode_toggle
  65. # focus the parent container
  66. bindsym $mod+a focus parent
  67. # focus the child container
  68. #bindsym $mod+d focus child
  69. # switch to workspace
  70. bindsym $mod+1 workspace number 1
  71. bindsym $mod+2 workspace number 2
  72. bindsym $mod+3 workspace number 3
  73. bindsym $mod+4 workspace number 4
  74. bindsym $mod+5 workspace number 5
  75. bindsym $mod+6 workspace number 6
  76. bindsym $mod+7 workspace number 7
  77. bindsym $mod+8 workspace number 8
  78. bindsym $mod+9 workspace number 9
  79. bindsym $mod+0 workspace number 10
  80. # move focused container to workspace
  81. bindsym $mod+Shift+1 move container to workspace number 1
  82. bindsym $mod+Shift+2 move container to workspace number 2
  83. bindsym $mod+Shift+3 move container to workspace number 3
  84. bindsym $mod+Shift+4 move container to workspace number 4
  85. bindsym $mod+Shift+5 move container to workspace number 5
  86. bindsym $mod+Shift+6 move container to workspace number 6
  87. bindsym $mod+Shift+7 move container to workspace number 7
  88. bindsym $mod+Shift+8 move container to workspace number 8
  89. bindsym $mod+Shift+9 move container to workspace number 9
  90. bindsym $mod+Shift+0 move container to workspace number 10
  91. # Move the current workspace to the next output
  92. # (effectively toggles when you only have two outputs)
  93. bindsym $mod+z move workspace to output left
  94. bindsym $mod+x move workspace to output right
  95. # Tag a workspace
  96. bindsym $mod+t exec ~/.config/i3/ws-rename.sh
  97. # power/lock options
  98. set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
  99. mode "$mode_system" {
  100. bindsym l exec --no-startup-id ~/.config/i3/i3exit.sh lock, mode "default"
  101. bindsym e exec --no-startup-id ~/.config/i3/i3exit.sh logout, mode "default"
  102. bindsym s exec --no-startup-id ~/.config/i3/i3exit.sh suspend, mode "default"
  103. bindsym h exec --no-startup-id ~/.config/i3/i3exit.sh hibernate, mode "default"
  104. bindsym r exec --no-startup-id ~/.config/i3/i3exit.sh reboot, mode "default"
  105. bindsym Shift+s exec --no-startup-id ~/.config/i3/i3exit.sh shutdown, mode "default"
  106. # back to normal: Enter or Escape
  107. bindsym Return mode "default"
  108. bindsym Escape mode "default"
  109. }
  110. bindsym $mod+Shift+e mode "$mode_system"
  111. # reload the configuration file
  112. bindsym $mod+Shift+c reload
  113. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  114. bindsym $mod+Shift+r restart
  115. # resize window (you can also use the mouse for that)
  116. mode "resize" {
  117. # These bindings trigger as soon as you enter the resize mode
  118. # Pressing left will shrink the window’s width.
  119. # Pressing right will grow the window’s width.
  120. # Pressing up will shrink the window’s height.
  121. # Pressing down will grow the window’s height.
  122. bindsym h resize shrink width 5 px or 5 ppt
  123. bindsym j resize grow height 5 px or 5 ppt
  124. bindsym k resize shrink height 5 px or 5 ppt
  125. bindsym l resize grow width 5 px or 5 ppt
  126. # same bindings, but for the arrow keys
  127. bindsym Left resize shrink width 10 px or 10 ppt
  128. bindsym Down resize grow height 10 px or 10 ppt
  129. bindsym Up resize shrink height 10 px or 10 ppt
  130. bindsym Right resize grow width 10 px or 10 ppt
  131. # back to normal: Enter or Escape or $mod+r
  132. bindsym Return mode "default"
  133. bindsym Escape mode "default"
  134. bindsym $mod+r mode "default"
  135. }
  136. bindsym $mod+r mode "resize"
  137. # Start i3bar to display a workspace bar (plus the system information i3status
  138. # finds out, if available)
  139. bar {
  140. status_command i3status -c ~/.config/i3/i3status
  141. }
  142. # Function keys
  143. bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume alsa_output.pci-0000_0a_00.4.analog-surround-50 +3% #increase sound volume
  144. bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume alsa_output.pci-0000_0a_00.4.analog-surround-50 -3% #decrease sound volume
  145. bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute alsa_output.pci-0000_0a_00.4.analog-surround-50 toggle # mute sound
  146. bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 5 # increase screen brightness
  147. bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 5 # decrease screen brightness
  148. bindsym XF86AudioPlay exec playerctl play-pause
  149. bindsym XF86AudioNext exec playerctl next
  150. bindsym XF86AudioPrev exec playerctl previous
  151. exec --no-startup-id pactl set-default-source alsa_output.pci-0000_0a_00.4.analog-surround-50
  152. # default screen brightness
  153. exec --no-startup-id xbacklight -set 12
  154. # System tray/background apps
  155. exec --no-startup-id nm-applet
  156. exec --no-startup-id pasystray
  157. exec --no-startup-id nextcloud
  158. exec --no-startup-id xfce4-clipman
  159. exec --no-startup-id discord
  160. exec --no-startup-id spotify
  161. exec --no-startup-id slack
  162. exec --no-startup-id compton
  163. # On launch apps
  164. exec --no-startup-id firefox
  165. exec --no-startup-id ~/.screenlayout/default.sh