You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

334 lines
12 KiB

  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 somewhen, delete
  5. # this file and re-run i3-config-wizard(1).
  6. #
  7. # i3 config file (v4)
  8. #
  9. # Please see http://i3wm.org/docs/userguide.html for a complete reference!
  10. set $mod Mod4
  11. set $mod2 Mod1
  12. set $right DVI-D-0
  13. set $left DVI-I-1
  14. # Font for window titles. Will also be used by the bar unless a different font
  15. # is used in the bar {} block below. ISO 10646 = Unicode
  16. #font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
  17. font pango:DejaVu Sans Mono 11
  18. # The font above is very space-efficient, that is, it looks good, sharp and
  19. # clear in small sizes. However, if you need a lot of unicode glyphs or
  20. # right-to-left text rendering, you should instead use pango for rendering and
  21. # chose a FreeType font, such as:
  22. # font pango:DejaVu Sans Mono 10
  23. # Use Mouse+$mod to drag floating windows to their wanted position
  24. floating_modifier $mod
  25. # start a terminal
  26. # bindsym $mod+Return exec i3-sensible-terminal
  27. bindsym $mod+Return exec alacritty -e fish
  28. # keepassxc
  29. bindsym $mod+k exec keepmenu
  30. # kill focused window
  31. bindsym $mod+$mod2+q kill
  32. # start dmenu (a program launcher)
  33. bindsym $mod+$mod2+w exec --no-startup-id rofi -show window
  34. bindsym $mod+d exec --no-startup-id rofi -show run
  35. bindsym $mod+$mod2+d exec --no-startup-id rofi -show drun
  36. bindsym $mod+$mod2+l exec --no-startup-id systemctl suspend
  37. # bindsym $mod+l exec --no-startup-id i3lock -c 000000
  38. # bindsym $mod+$mod2+d exec dmenu_run
  39. # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
  40. # bindsym $mod+d exec --no-startup-id xfce4-popup-whiskermenu
  41. # There also is the (new) i3-dmenu-desktop which only displays applications
  42. # shipping a .desktop file. It is a wrapper around dmenu, so you need that
  43. # installed.
  44. # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
  45. # change focus
  46. bindsym $mod+n focus left
  47. bindsym $mod+e focus down
  48. bindsym $mod+o focus up
  49. bindsym $mod+i focus right
  50. bindsym $mod+KP_Prior focus left
  51. bindsym $mod+KP_Down focus down
  52. bindsym $mod+KP_Up focus up
  53. bindsym $mod+KP_Next focus right
  54. # alternatively, you can use the cursor keys:
  55. bindsym $mod+Left focus left
  56. bindsym $mod+Down focus down
  57. bindsym $mod+Up focus up
  58. bindsym $mod+Right focus right
  59. # alternatively, you can use the cursor keys:
  60. bindsym $mod+$mod2+Left move left
  61. bindsym $mod+$mod2+Down move down
  62. bindsym $mod+$mod2+Up move up
  63. bindsym $mod+$mod2+Right move right
  64. bindsym $mod+$mod2+n move left
  65. bindsym $mod+$mod2+e move down
  66. bindsym $mod+$mod2+o move up
  67. bindsym $mod+$mod2+i move right
  68. bindsym $mod+$mod2+KP_Prior move left
  69. bindsym $mod+$mod2+KP_Down move down
  70. bindsym $mod+$mod2+KP_Up move up
  71. bindsym $mod+$mod2+KP_Next move right
  72. # split in horizontal orientation
  73. bindsym $mod+h split v
  74. # split in vertical orientation
  75. bindsym $mod+v split h
  76. # enter fullscreen mode for the focused container
  77. bindsym $mod+f fullscreen
  78. # change container layout (stacked, tabbed, toggle split)
  79. bindsym $mod+s layout stacking
  80. bindsym $mod+w layout tabbed
  81. bindsym $mod+t layout toggle split
  82. # toggle tiling / floating
  83. bindsym $mod+$mod2+space floating toggle
  84. # change focus between tiling / floating windows
  85. bindsym $mod+space focus mode_toggle
  86. # focus the parent container
  87. bindsym $mod+a focus parent
  88. # focus the child container
  89. #bindsym $mod+d focus child
  90. # workspace layout
  91. workspace_layout tabbed
  92. # program specific workspaces
  93. assign [class="Steam"] number 10
  94. #assign [class="Firefox"] 2
  95. #assign [class="Thunderbird"] 1
  96. assign [class="Pidgin"] number 2
  97. assign [class="Mumble"] number 2
  98. # workspace to monitor mapping
  99. workspace 1 output $left
  100. workspace 2 output $right
  101. workspace 3 output $left
  102. workspace 4 output $right
  103. workspace 5 output $left
  104. workspace 6 output $right
  105. workspace 7 output $left
  106. workspace 8 output $right
  107. workspace 9 output $left
  108. workspace 10 output $right
  109. # workspace cycling
  110. # bindsym $mod+Tab workspace next
  111. # bindsym $mod+$mod2+Tab workspace prev
  112. bindsym $mod+Tab [con_mark=_prevFocus0] focus
  113. bindsym $mod+$mod2+Tab [con_mark=_prevFocus2] focus
  114. # switch to workspace
  115. bindsym $mod+1 workspace number 1
  116. bindsym $mod+2 workspace number 2
  117. bindsym $mod+3 workspace number 3
  118. bindsym $mod+4 workspace number 4
  119. bindsym $mod+5 workspace number 5
  120. bindsym $mod+6 workspace number 6
  121. bindsym $mod+7 workspace number 7
  122. bindsym $mod+8 workspace number 8
  123. bindsym $mod+9 workspace number 9
  124. bindsym $mod+0 workspace number 10
  125. bindsym $mod+KP_1 workspace number 1
  126. bindsym $mod+KP_2 workspace number 2
  127. bindsym $mod+KP_3 workspace number 3
  128. bindsym $mod+KP_4 workspace number 4
  129. bindsym $mod+KP_5 workspace number 5
  130. bindsym $mod+KP_6 workspace number 6
  131. bindsym $mod+KP_7 workspace number 7
  132. bindsym $mod+KP_8 workspace number 8
  133. bindsym $mod+KP_9 workspace number 9
  134. bindsym $mod+KP_0 workspace number 10
  135. workspace_auto_back_and_forth yes
  136. # move focused container to workspace
  137. bindsym $mod+$mod2+1 move container to workspace number 1
  138. bindsym $mod+$mod2+2 move container to workspace number 2
  139. bindsym $mod+$mod2+3 move container to workspace number 3
  140. bindsym $mod+$mod2+4 move container to workspace number 4
  141. bindsym $mod+$mod2+5 move container to workspace number 5
  142. bindsym $mod+$mod2+6 move container to workspace number 6
  143. bindsym $mod+$mod2+7 move container to workspace number 7
  144. bindsym $mod+$mod2+8 move container to workspace number 8
  145. bindsym $mod+$mod2+9 move container to workspace number 9
  146. bindsym $mod+$mod2+0 move container to workspace number 10
  147. bindsym $mod+$mod2+KP_1 move container to workspace number 1
  148. bindsym $mod+$mod2+KP_2 move container to workspace number 2
  149. bindsym $mod+$mod2+KP_3 move container to workspace number 3
  150. bindsym $mod+$mod2+KP_4 move container to workspace number 4
  151. bindsym $mod+$mod2+KP_5 move container to workspace number 5
  152. bindsym $mod+$mod2+KP_6 move container to workspace number 6
  153. bindsym $mod+$mod2+KP_7 move container to workspace number 7
  154. bindsym $mod+$mod2+KP_8 move container to workspace number 8
  155. bindsym $mod+$mod2+KP_9 move container to workspace number 9
  156. bindsym $mod+$mod2+KP_0 move container to workspace number 10
  157. # reload the configuration file
  158. bindsym $mod+$mod2+c reload
  159. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  160. bindsym $mod+$mod2+r restart
  161. # exit i3 (logs you out of your X session)
  162. bindsym $mod+$mod2+x 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'"
  163. # programs
  164. #bindsym $mod+$mod2+f exec firefox
  165. #bindsym $mod+$mod2+t exec thunderbird
  166. #bindsym $mod+$mod2+g exec gmusicbrowser
  167. #bindsym $mod+$mod2+p exec pidgin
  168. bindsym $mod+BackSpace exec spacefm
  169. bindsym $mod+plus exec gvim
  170. # focus binding
  171. bindsym $mod+$mod2+f [class="Torbrowser" instance="Navigator"] focus
  172. bindsym $mod+$mod2+t [class="Thunderbird" instance="Mail"] focus
  173. bindsym $mod+$mod2+g [class="Gmusicbrowser"] focus
  174. bindsym $mod+$mod2+p [class="Pidgin" window_role="conversation"] focus
  175. bindsym $mod+$mod2+s [class="Terminator" instance="Terminator-root"] focus
  176. bindsym $mod+$mod2+m [class="Mumble" instance="mumble"] focus
  177. bindcode 180 [class="Terminator" instance="Terminator-root"] focus
  178. # sound
  179. #bindcode 122 exec --no-startup-id amixer sset Master 3-
  180. #bindcode 123 exec --no-startup-id amixer sset Master 3+
  181. #bindcode 121 exec --no-startup-id amixer sset Master toggle
  182. #bindsym $mod+$mod2+KP_Begin [class="Firefox"] focus
  183. #bindsym $mod+$mod2+KP_Home [class="Thunderbird"] focus
  184. #bindsym $mod+$mod2+KP_Prior [class="Gmusicbrowser"] focus
  185. #bindsym $mod+$mod2+KP_Right [class="Pidgin" window_role="conversation"] focus
  186. #bindsym $mod+$mod2+KP_Insert [class="Terminator" instance="Terminator-root"] focus
  187. #bindcode 41 [class="Firefox" instance="Navigator"] focus
  188. # force floating for these
  189. for_window [class="Xfrun4"] floating enable
  190. for_window [class="Xfce4-appfinder"] floating enable
  191. for_window [class="Terminator" title="Terminator Preferences"] floating enable
  192. for_window [class="MPlayer"] floating enable
  193. for_window [class="Gtk-youtube-viewer"] floating enable
  194. for_window [class="Firefox" title="Firefox Preferences"] floating enable
  195. for_window [class="Firefox" title="Certificate Manager"] floating enable
  196. for_window [class="Pornview"] floating enable
  197. for_window [class="FTL"] floating enable
  198. for_window [class="Pnmixer" title="PNMixer Preferences"] floating enable
  199. for_window [class="Xfce4-mixer" instance="xfce4-mixer"] floating enable
  200. for_window [class="Xfce4-notes"] floating enable
  201. for_window [class="scummvm"] floating enable
  202. for_window [class="dosbox"] floating enable
  203. for_window [class="zsnes"] floating enable
  204. for_window [title="ePSXe - Enhanced PSX emulator"] floating enable
  205. for_window [class="Mupen64plus"] floating enable
  206. for_window [class="Wine" instance="explorer.exe"] floating enable
  207. for_window [class="freesynd"] floating enable
  208. for_window [class="ja2"] floating enable
  209. for_window [class="Allegro" title="kq"] floating enable
  210. for_window [class="love" title="Mari0"] floating enable
  211. for_window [class="meandmyshadow"] floating enable
  212. for_window [class="XMahjongg"] floating enable
  213. for_window [class="supertux"] floating enable
  214. for_window [class="Gvbam"] floating enable
  215. for_window [class="Gmusicbrowser"] floating enable
  216. for_window [class="File-roller"] floating enable
  217. for_window [class="Bitmessagemain.py"] floating enable
  218. for_window [class="Gnome-manual-duplex"] floating enable
  219. for_window [class="GParted"] floating enable
  220. for_window [class="openmw"] floating enable
  221. for_window [class="Omwlauncher"] floating enable
  222. for_window [class="Xdialog"] floating enable
  223. for_window [class="Mumble"] floating enable
  224. for_window [class="^mpv.*$"] floating enable
  225. for_window [class="Skype"] floating enable
  226. for_window [class="utox"] floating enable
  227. for_window [class="Transmission-gtk"] floating enable
  228. for_window [class="keepassxc"] floating enable
  229. # scratchpad
  230. # Make the currently focused window a scratchpad
  231. bindsym $mod+$mod2+minus move scratchpad
  232. # Show the first scratchpad window
  233. bindsym $mod+minus scratchpad show
  234. # focus follow
  235. focus_follows_mouse yes
  236. mouse_warping output
  237. # remap f1-f12
  238. #keycode
  239. # resize window (you can also use the mouse for that)
  240. mode "resize" {
  241. # These bindings trigger as soon as you enter the resize mode
  242. # Pressing left will shrink the window’s width.
  243. # Pressing right will grow the window’s width.
  244. # Pressing up will shrink the window’s height.
  245. # Pressing down will grow the window’s height.
  246. bindsym j resize shrink width 10 px or 10 ppt
  247. bindsym k resize grow height 10 px or 10 ppt
  248. bindsym l resize shrink height 10 px or 10 ppt
  249. bindsym odiaeresis resize grow width 10 px or 10 ppt
  250. # same bindings, but for the arrow keys
  251. bindsym Right resize shrink width 10 px or 10 ppt
  252. bindsym Up resize grow height 10 px or 10 ppt
  253. bindsym Down resize shrink height 10 px or 10 ppt
  254. bindsym Left resize grow width 10 px or 10 ppt
  255. # back to normal: Enter or Escape
  256. bindsym Return mode "default"
  257. bindsym Escape mode "default"
  258. }
  259. bindsym $mod+r mode "resize"
  260. # Start i3bar to display a workspace bar (plus the system information i3status
  261. # finds out, if available)
  262. #bar {
  263. # tray_output $left
  264. #
  265. # status_command i3status --config ~/.config/i3/i3status.config
  266. ## | dzen2 -fg white -ta r -w 1290 fn "-misc-fixed-medium-r-normal--13-120-75-75-C-70-iso8859-1"
  267. #
  268. # font pango:DejaVu Sans Mono 12
  269. #}
  270. mode "num" {
  271. bindsym Num_Lock mode "default"
  272. }
  273. #bindsym Num_Lock mode "num"
  274. # exec_always --no-startup-id ~/.config/polybar/autoname_workspaces.py --norenumber_workspaces --icon_list_format mathematician
  275. exec_always --no-startup-id autoname_workspaces -i superscript
  276. exec_always --no-startup-id ~/.config/polybar/launch.sh
  277. exec --no-startup-id ~/.config/i3/focus
  278. # exec xrandr --output DVI-I-1 --auto --right-of DVI-D-0
  279. exec picom --config ~/.config/picom.config