Advertisement
T4ng10r

i3 config file

Aug 22nd, 2017
914
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.59 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 http://i3wm.org/docs/userguide.html for a complete reference!
  11.  
  12. set $mod Mod4
  13.  
  14. # Font for window titles. Will also be used by the bar unless a different font
  15. # is used in the bar {} block below.
  16. font pango:monospace 8
  17.  
  18. # This font is widely installed, provides lots of unicode glyphs, right-to-left
  19. # text rendering and scalability on retina/hidpi displays (thanks to pango).
  20. #font pango:DejaVu Sans Mono 8
  21.  
  22. # Before i3 v4.8, we used to recommend this one as the default:
  23. # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
  24. # The font above is very space-efficient, that is, it looks good, sharp and
  25. # clear in small sizes. However, its unicode glyph coverage is limited, the old
  26. # X core fonts rendering does not support right-to-left and this being a bitmap
  27. # font, it doesn’t scale on retina/hidpi displays.
  28.  
  29. # Use Mouse+$mod to drag floating windows to their wanted position
  30. floating_modifier $mod
  31.  
  32. # start a terminal
  33. #bindsym $mod+Return exec env SHELL=/usr/bin/tmux xterm
  34. bindsym $mod+Return exec xterm -e tmux attach
  35.  
  36. # kill focused window
  37. bindsym $mod+Shift+q kill
  38.  
  39. # start dmenu (a program launcher)
  40. #bindsym $mod+d exec dmenu_run
  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.  
  46. # change focus
  47. bindsym $mod+j focus left
  48. bindsym $mod+k focus down
  49. bindsym $mod+l focus up
  50. bindsym $mod+semicolon focus right
  51.  
  52. # alternatively, you can use the cursor keys:
  53. bindsym $mod+Left focus left
  54. bindsym $mod+Down focus down
  55. bindsym $mod+Up focus up
  56. bindsym $mod+Right focus right
  57.  
  58. # move focused window
  59. bindsym $mod+Shift+j move left
  60. bindsym $mod+Shift+k move down
  61. bindsym $mod+Shift+l move up
  62. bindsym $mod+Shift+semicolon move right
  63.  
  64. # alternatively, you can use the cursor keys:
  65. bindsym $mod+Shift+Left move left
  66. bindsym $mod+Shift+Down move down
  67. bindsym $mod+Shift+Up move up
  68. bindsym $mod+Shift+Right move right
  69.  
  70. # split in horizontal orientation
  71. bindsym $mod+- split h
  72.  
  73. # split in vertical orientation
  74. bindsym $mod+\ split v
  75.  
  76. # enter fullscreen mode for the focused container
  77. bindsym $mod+f fullscreen toggle
  78.  
  79. # change container layout (stacked, tabbed, toggle split)
  80. bindsym $mod+s layout stacking
  81. bindsym $mod+w layout tabbed
  82. bindsym $mod+e layout toggle split
  83.  
  84. # toggle tiling / floating
  85. bindsym $mod+Shift+space floating toggle
  86.  
  87. # change focus between tiling / floating windows
  88. bindsym $mod+space focus mode_toggle
  89.  
  90. # focus the parent container
  91. bindsym $mod+a focus parent
  92.  
  93. # focus the child container
  94. #bindsym $mod+d focus chilA
  95.  
  96. set $tag1 "1: mail"
  97. set $tag2 "2: www"
  98. set $tag3 "3: term"
  99. set $tag4 "4: dev"
  100. set $tag5 "5: settings"
  101. set $tag6 "6: music"
  102. set $tag7 "7: rain"
  103. set $tag8 "8: docs"
  104.  
  105. workspace $tag1 output HDMI2
  106. workspace $tag2 output HDMI2
  107. workspace $tag3 output HDMI2
  108. workspace $tag4 output HDMI2
  109. workspace $tag5 output HDMI2
  110. workspace $tag6 output HDMI1
  111. workspace $tag7 output HDMI1
  112. workspace $tag8 output HDMI1
  113. workspace 9 output eDP1
  114. workspace 10 output eDP1
  115.  
  116. # switch to workspace
  117. bindsym $mod+1 workspace $tag1
  118. bindsym $mod+2 workspace $tag2
  119. bindsym $mod+3 workspace $tag3
  120. bindsym $mod+4 workspace $tag4
  121. bindsym $mod+5 workspace $tag5
  122. bindsym $mod+6 workspace $tag6
  123. bindsym $mod+7 workspace $tag7
  124. bindsym $mod+8 workspace $tag8
  125. bindsym $mod+9 workspace 9
  126. bindsym $mod+0 workspace 10
  127.  
  128. # move focused container to workspace
  129. bindsym $mod+Shift+1 move container to workspace $tag1
  130. bindsym $mod+Shift+2 move container to workspace $tag2
  131. bindsym $mod+Shift+3 move container to workspace $tag3
  132. bindsym $mod+Shift+4 move container to workspace $tag4
  133. bindsym $mod+Shift+5 move container to workspace $tag5
  134. bindsym $mod+Shift+6 move container to workspace $tag6
  135. bindsym $mod+Shift+7 move container to workspace $tag7
  136. bindsym $mod+Shift+8 move container to workspace $tag8
  137. bindsym $mod+Shift+9 move container to workspace 9
  138. bindsym $mod+Shift+0 move container to workspace 10
  139.  
  140. # reload the configuration file
  141. bindsym $mod+Shift+c reload
  142. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  143. bindsym $mod+Shift+r restart
  144. # exit i3 (logs you out of your X session)
  145. # 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'"
  146. bindsym $mod+Shift+e exec i3-msg exit
  147.  
  148. # resize window (you can also use the mouse for that)
  149. mode "resize" {
  150. # These bindings trigger as soon as you enter the resize mode
  151.  
  152. # Pressing left will shrink the window’s width.
  153. # Pressing right will grow the window’s width.
  154. # Pressing up will shrink the window’s height.
  155. # Pressing down will grow the window’s height.
  156. bindsym j resize shrink width 10 px or 10 ppt
  157. bindsym k resize grow height 10 px or 10 ppt
  158. bindsym l resize shrink height 10 px or 10 ppt
  159. bindsym semicolon resize grow width 10 px or 10 ppt
  160.  
  161. # same bindings, but for the arrow keys
  162. bindsym Left resize shrink width 10 px or 10 ppt
  163. bindsym Down resize grow height 10 px or 10 ppt
  164. bindsym Up resize shrink height 10 px or 10 ppt
  165. bindsym Right resize grow width 10 px or 10 ppt
  166.  
  167. # back to normal: Enter or Escape
  168. bindsym Return mode "default"
  169. bindsym Escape mode "default"
  170. }
  171.  
  172. bindsym $mod+r mode "resize"
  173. bindsym $mod+q exec iceweasel
  174. bindsym $mod+Shift+w exec icedove
  175. bindsym $mod+p exec /usr/bin/displays
  176. bindsym XF86Display exec mkdir ~/screenshots; exec scrot ~/screenshots/%Y-%m-%d_%H-%M-%S.png -e "mv $f ~/screenshots/"; exec notify-send -t 1 "screenshot taken"
  177. bindsym $mod+Control+Mod1+Right exec "rotate_primary_screen right"
  178. bindsym $mod+Control+Mod1+Up exec "rotate_primary_screen normal"
  179. bindsym Control+$mod+l exec xscreensaver-command --lock
  180.  
  181.  
  182. # Pulse Audio controls
  183. bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume
  184. bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume
  185. bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound
  186.  
  187. # # Sreen brightness controls
  188. #bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
  189. #bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
  190.  
  191. # # Touchpad controls
  192. #bindsym XF86TouchpadToggle exec /some/path/toggletouchpad.sh # toggle touchpad
  193.  
  194. # Change screen brightness
  195. bindsym XF86MonBrightnessUp exec xbacklight -inc 10
  196. bindsym XF86MonBrightnessDown exec xbacklight -dec 10
  197.  
  198. # # Media player controls
  199. bindsym XF86AudioPlay exec playerctl play-pause; exec notify-send -t 1 "Play/Pause"
  200. bindsym XF86AudioPause exec playerctl pause; exec notify-send -t 1 "Pause"
  201. bindsym XF86AudioNext exec playerctl next; exec notify-send -t 1 "Play next track"
  202. bindsym XF86AudioPrev exec playerctl previous; exec notify-send -t 1 "Play previous track"
  203. bindsym XF86AudioStop exec playerctl stop; exec notify-send -t 1 "Stop"
  204. bindsym XF86Tools exec --no-startup-id spotify-client
  205.  
  206.  
  207. bindsym XF86Calculator exec --no-startup-id
  208. bindsym 113 exec amixer -q sset Master toggle
  209. bindsym 114 exec amixer sset Master 5%-
  210. bindsym 115 exec amixer sset Master 5%+
  211.  
  212.  
  213. set $mode_tools (s) screenshot, (t) filemanager, (n) nixnote2, (d) dev Thunderbird
  214. mode "$mode_tools" {
  215. bindsym s exec "scrot ~/screenshots/Screenshot%Y-%m-%d%H:%M:%S.png", mode "default"
  216. bindsym t exec thunar, mode "default"
  217. bindsym n exec --no-startup-id nixnote2, mode "default"
  218. bindsym d exec --no-startup-id icedove --no-remote -P dev, mode "default"
  219.  
  220. # back to normal: Enter or Escape
  221. bindsym Return mode "default"
  222. bindsym Escape mode "default"
  223. }
  224. bindsym $mod+o mode "$mode_tools"
  225.  
  226.  
  227. set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
  228. mode "$mode_system" {
  229. bindsym l exec --no-startup-id i3exit lock, mode "default"
  230. bindsym e exec --no-startup-id i3exit logout, mode "default"
  231. bindsym s exec --no-startup-id i3exit suspend, mode "default"
  232. bindsym h exec --no-startup-id i3exit hibernate, mode "default"
  233. bindsym r exec --no-startup-id i3exit reboot, mode "default"
  234. bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default"
  235.  
  236. # back to normal: Enter or Escape
  237. bindsym Return mode "default"
  238. bindsym Escape mode "default"
  239. }
  240. bindsym $mod+Pause mode "$mode_system"
  241.  
  242. # Start i3bar to display a workspace bar (plus the system information i3status
  243. # finds out, if available)
  244. bar {
  245. font pango:DejaVu Sans Mono 10
  246. status_command i3status
  247. tray_output primary
  248. }
  249.  
  250. exec i3-msg workspace $tag2 #triggers i3
  251.  
  252. for_window [workspace=$tag1] layout stacking
  253. for_window [workspace=$tag2] layout tabbed
  254. for_window [workspace=$tag3] layout tabbed
  255. for_window [workspace=$tag4] layout tabbed
  256. for_window [workspace=$tag5] layout tabbed
  257. for_window [workspace=$tag8] layout splith
  258. for_window [class="Spotify"] move to workspace $tag6
  259. for_window [class="TeamViz" title="Countdown"] sticky enable, floating enable, move position 1430 75
  260. for_window [class="TeamViz" title="TeamViz"] sticky disable, floating disable
  261. for_window [class="QtQmlViewer"] floating enabled
  262. for_window [window_role="pop-up"] floating enable
  263. for_window [window_role="task_dialog"] floating enable
  264. for_window [class="QtCreator"] move to workspace $tag4
  265. for_window [class="jetbrains-pycharm-ce"] move to workspace $tag4
  266. for_window [class="jetbrains-idea-ce"] move to workspace $tag4
  267. for_window [class="jetbrains-rubymine"] move to workspace $tag4
  268. for_window [class="Java" title="XMind"] move to workspace $tag4
  269. for_window [class="XMind"] move to workspace $tag4
  270. #this is for Add ToDo dialog
  271. for_window [title=".*Lista zada.*" class="Rainlendar2"] move to workspace $tag7, sticky disable, floating enable, resize set 570px 500px
  272. # this is for ToDo lists
  273. for_window [class="Rainlendar2"] move to workspace $tag7, sticky disable, floating enable
  274. for_window [class="kcalc"] floating enable, sticky disable
  275. for_window [title="User Settings" class="nixnote2" ] resize set 600px 700px
  276. for_window [class="Anki" ] move to workspace $tag2, floating enable, sticky enable
  277. for_window [class="Tilda"] move to workspace $tag3, floating disable
  278. for_window [class="XTerm"] move to workspace $tag3
  279. for_window [class="Firefox"] move to workspace $tag2
  280. for_window [class="Iceweasel"] move to workspace $tag2
  281. for_window [instance="StarFire-Client"] floating enable
  282. for_window [class="Opera"] move to workspace $tag8
  283. for_window [class="Ristretto"] move to workspace $tag8
  284.  
  285. assign [class="Icedove"] $tag1
  286. assign [class="Thunderbird"] $tag1
  287. assign [class="Evolution"] $tag1
  288. assign [class="Psi-plus" instance="tabs"] $tag1
  289. assign [class="Psi-plus"] $tag1
  290. assign [class="Pidgin"] $tag1
  291. assign [class="Linphone"] $tag2
  292. assign [class="Iceweasel"] $tag2
  293. assign [class="Google-chrome"] $tag2
  294. assign [instance="Evernote.exe" ] $tag2
  295. assign [class="Nixnote2"] $tag2
  296. assign [class="nixnote2"] $tag2
  297. assign [class="konsole"] $tag3
  298. assign [class="Xfce4-terminal"] $tag3
  299. assign [class="XTerm"] $tag3
  300. assign [class="TeamViz" title="TeamViz"] $tag5
  301. assign [class="Lxtask"] $tag5
  302. assign [class="Xfce4-taskmanager"] $tag5
  303. assign [class="Rainlendar2"] $tag7
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement