A collection of scripts and configurations for Bash (and others)
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

410 lines
14KB

  1. # i3 config file (v4)
  2. # Please see http://i3wm.org/docs/userguide.html for a complete reference!
  3. # Set mod key (Mod1=<Alt>, Mod4=<Super>)
  4. set $mod Mod4
  5. # set default desktop layout (default is tiling)
  6. # workspace_layout tabbed <stacking|tabbed>
  7. # Configure border style <normal|1pixel|pixel xx|none|pixel>
  8. new_window pixel 1
  9. new_float normal
  10. # Hide borders
  11. hide_edge_borders none
  12. # change borders
  13. bindsym $mod+u border none
  14. bindsym $mod+y border pixel 1
  15. bindsym $mod+n border normal
  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:URWGothic-Book 11
  19. # Use Mouse+$mod to drag floating windows
  20. floating_modifier $mod
  21. # start a terminal
  22. bindsym $mod+Return exec terminal
  23. # kill focused window
  24. bindsym $mod+Shift+q kill
  25. # start program launcher
  26. bindsym $mod+d exec --no-startup-id $HOME/.local/sbin/dmenu_wrapper #dmenu_run #dmenu_recency
  27. # launch categorized menu
  28. bindsym $mod+z exec --no-startup-id morc_menu
  29. ################################################################################################
  30. ## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ##
  31. ################################################################################################
  32. exec --no-startup-id volumeicon
  33. bindsym $mod+Ctrl+m exec terminal -e 'alsamixer'
  34. #exec --no-startup-id pulseaudio
  35. #exec --no-startup-id pa-applet
  36. #bindsym $mod+Ctrl+m exec pavucontrol
  37. ################################################################################################
  38. # Screen brightness controls
  39. # bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'"
  40. # bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'"
  41. # Start Applications
  42. bindsym $mod+Ctrl+b exec terminal -e 'bmenu'
  43. bindsym $mod+F2 exec palemoon
  44. bindsym $mod+Ctrl+w exec firefox
  45. bindsym $mod+Ctrl+f exec pcmanfm
  46. # bindsym $mod+F3 exec ranger
  47. #bindsym $mod+Shift+Ctrl+f exec gksu pcmanfm
  48. bindsym $mod+F5 exec terminal -e 'mocp'
  49. bindsym $mod+t exec --no-startup-id pkill compton
  50. bindsym $mod+Ctrl+t exec --no-startup-id compton -b
  51. bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'"
  52. bindsym Print exec --no-startup-id i3-scrot
  53. bindsym $mod+Print --release exec --no-startup-id i3-scrot -w
  54. bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s
  55. bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf
  56. bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
  57. # focus_follows_mouse no
  58. # change focus
  59. bindsym $mod+j focus left
  60. bindsym $mod+k focus down
  61. bindsym $mod+l focus up
  62. bindsym $mod+semicolon focus right
  63. # alternatively, you can use the cursor keys:
  64. bindsym $mod+Left focus left
  65. bindsym $mod+Down focus down
  66. bindsym $mod+Up focus up
  67. bindsym $mod+Right focus right
  68. # move focused window
  69. bindsym $mod+Shift+j move left
  70. bindsym $mod+Shift+k move down
  71. bindsym $mod+Shift+l move up
  72. bindsym $mod+Shift+semicolon move right
  73. # alternatively, you can use the cursor keys:
  74. bindsym $mod+Shift+Left move left
  75. bindsym $mod+Shift+Down move down
  76. bindsym $mod+Shift+Up move up
  77. bindsym $mod+Shift+Right move right
  78. # workspace back and forth (with/without active container)
  79. workspace_auto_back_and_forth yes
  80. bindsym $mod+b workspace back_and_forth
  81. bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth
  82. # split orientation
  83. bindsym $mod+h split h;exec notify-send 'tile horizontally'
  84. bindsym $mod+v split v;exec notify-send 'tile vertically'
  85. bindsym $mod+q split toggle
  86. # toggle fullscreen mode for the focused container
  87. bindsym $mod+f fullscreen toggle
  88. # change container layout (stacked, tabbed, toggle split)
  89. bindsym $mod+s layout stacking
  90. bindsym $mod+w layout tabbed
  91. bindsym $mod+e layout toggle split
  92. # toggle tiling / floating
  93. bindsym $mod+Shift+space floating toggle
  94. # change focus between tiling / floating windows
  95. bindsym $mod+space focus mode_toggle
  96. # toggle sticky
  97. bindsym $mod+Shift+s sticky toggle
  98. # focus the parent container
  99. bindsym $mod+a focus parent
  100. # move the currently focused window to the scratchpad
  101. bindsym $mod+Shift+minus move scratchpad
  102. # Show the next scratchpad window or hide the focused scratchpad window.
  103. # If there are multiple scratchpad windows, this command cycles through them.
  104. bindsym $mod+minus scratchpad show
  105. #navigate workspaces next / previous
  106. bindsym $mod+Ctrl+Right workspace next
  107. bindsym $mod+Ctrl+Left workspace prev
  108. # Define workspace names
  109. set $ws1 "1: Dev 1"
  110. set $ws2 "2: Dev 2"
  111. set $ws3 "3: Media"
  112. set $ws4 "4: Web 1"
  113. set $ws5 "5: Web 2"
  114. set $ws6 "6: Misc 1"
  115. set $ws7 "7: Misc 2"
  116. set $ws8 "8: System 1"
  117. set $ws9 "9: System 2"
  118. set $ws0 "10: System 3"
  119. # switch to workspace
  120. bindsym $mod+1 workspace $ws1
  121. bindsym $mod+2 workspace $ws2
  122. bindsym $mod+3 workspace $ws3
  123. bindsym $mod+4 workspace $ws4
  124. bindsym $mod+5 workspace $ws5
  125. bindsym $mod+6 workspace $ws6
  126. bindsym $mod+7 workspace $ws7
  127. bindsym $mod+8 workspace $ws8
  128. bindsym $mod+9 workspace $ws9
  129. bindsym $mod+0 workspace $ws0
  130. # move focused container to workspace
  131. bindsym $mod+Shift+1 move container to workspace $ws1
  132. bindsym $mod+Shift+2 move container to workspace $ws2
  133. bindsym $mod+Shift+3 move container to workspace $ws3
  134. bindsym $mod+Shift+4 move container to workspace $ws4
  135. bindsym $mod+Shift+5 move container to workspace $ws5
  136. bindsym $mod+Shift+6 move container to workspace $ws6
  137. bindsym $mod+Shift+7 move container to workspace $ws7
  138. bindsym $mod+Shift+8 move container to workspace $ws8
  139. bindsym $mod+Shift+9 move container to workspace $ws9
  140. bindsym $mod+Shift+0 move container to workspace $ws0
  141. # Open applications on specific workspaces
  142. # assign [class="Thunderbird"] $ws1
  143. # assign [class="Pale moon"] $ws2
  144. # assign [class="Pcmanfm"] $ws3
  145. # assign [class="Skype"] $ws5
  146. # Open specific applications in floating mode
  147. for_window [title="alsamixer"] floating enable border pixel 1
  148. for_window [class="calamares"] floating enable border normal
  149. for_window [class="Clipgrab"] floating enable
  150. for_window [title="File Transfer*"] floating enable
  151. for_window [class="Galculator"] floating enable border pixel 1
  152. for_window [class="GParted"] floating enable border normal
  153. for_window [title="i3_help"] floating enable sticky enable border normal
  154. for_window [class="Lightdm-settings"] floating enable
  155. for_window [class="Lxappearance"] floating enable sticky enable border normal
  156. for_window [class="Manjaro-hello"] floating enable
  157. for_window [class="Manjaro Settings Manager"] floating enable border normal
  158. for_window [title="MuseScore: Play Panel"] floating enable
  159. for_window [class="Nitrogen"] floating enable sticky enable border normal
  160. for_window [class="Oblogout"] fullscreen enable
  161. for_window [class="octopi"] floating enable
  162. for_window [title="About Pale Moon"] floating enable
  163. for_window [class="Pamac-manager"] floating enable
  164. for_window [class="Pavucontrol"] floating enable
  165. for_window [class="qt5ct"] floating enable sticky enable border normal
  166. for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal
  167. for_window [class="Simple-scan"] floating enable border normal
  168. for_window [class="(?i)System-config-printer.py"] floating enable border normal
  169. for_window [class="Skype"] floating enable border normal
  170. for_window [class="Timeset-gui"] floating enable border normal
  171. for_window [class="(?i)virtualbox"] floating enable border normal
  172. for_window [class="Xfburn"] floating enable
  173. # Assign windows to their respective workspaces.
  174. assign [class="Chromium|Firefox"] $ws4
  175. assign [class="Gimp"] $ws3
  176. assign [class="mpv|Vlc"] $ws3
  177. # switch to workspace with urgent window automatically
  178. for_window [urgent=latest] focus
  179. # reload the configuration file
  180. bindsym $mod+Shift+c reload
  181. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  182. bindsym $mod+Shift+r restart
  183. # exit i3 (logs you out of your X session)
  184. 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'"
  185. # Set shut down, restart and locking features
  186. bindsym $mod+grave mode "$mode_system"
  187. set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown
  188. mode "$mode_system" {
  189. bindsym l exec --no-startup-id i3exit lock, mode "default"
  190. bindsym s exec --no-startup-id i3exit suspend, mode "default"
  191. bindsym u exec --no-startup-id i3exit switch_user, mode "default"
  192. bindsym e exec --no-startup-id i3exit logout, mode "default"
  193. bindsym h exec --no-startup-id i3exit hibernate, mode "default"
  194. bindsym r exec --no-startup-id i3exit reboot, mode "default"
  195. bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default"
  196. # exit system mode: "Enter" or "Escape"
  197. bindsym Return mode "default"
  198. bindsym Escape mode "default"
  199. }
  200. # Resize window (you can also use the mouse for that)
  201. bindsym $mod+r mode "resize"
  202. mode "resize" {
  203. # These bindings trigger as soon as you enter the resize mode
  204. # Pressing left will shrink the window’s width.
  205. # Pressing right will grow the window’s width.
  206. # Pressing up will shrink the window’s height.
  207. # Pressing down will grow the window’s height.
  208. bindsym j resize shrink width 5 px or 5 ppt
  209. bindsym k resize grow height 5 px or 5 ppt
  210. bindsym l resize shrink height 5 px or 5 ppt
  211. bindsym semicolon resize grow width 5 px or 5 ppt
  212. # same bindings, but for the arrow keys
  213. bindsym Left resize shrink width 10 px or 10 ppt
  214. bindsym Down resize grow height 10 px or 10 ppt
  215. bindsym Up resize shrink height 10 px or 10 ppt
  216. bindsym Right resize grow width 10 px or 10 ppt
  217. # exit resize mode: Enter or Escape
  218. bindsym Return mode "default"
  219. bindsym Escape mode "default"
  220. }
  221. # Rotate Wallpaper!
  222. bindsym $mod+Ctrl+r exec "wal --backend colorthief -a 180 -i ~/Pictures/Wallpaper/TFTL/"
  223. # Lock screen
  224. bindsym $mod+Ctrl+z exec --no-startup-id blurlock
  225. # Autostart applications
  226. exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
  227. #exec --no-startup-id nitrogen --restore; sleep 1; compton -b
  228. # # Restore wallpaper and themes.
  229. exec --no-startup-id wal -R &
  230. #exec --no-startup-id manjaro-hello
  231. exec --no-startup-id nm-applet
  232. exec --no-startup-id xfce4-power-manager
  233. exec --no-startup-id pamac-tray
  234. exec --no-startup-id clipit
  235. # exec --no-startup-id blueman-applet
  236. # exec_always --no-startup-id sbxkb
  237. #exec --no-startup-id start_conky_maia
  238. # exec --no-startup-id start_conky_green
  239. exec --no-startup-id xautolock -time 10 -locker blurlock
  240. exec_always --no-startup-id ff-theme-util
  241. exec_always --no-startup-id fix_xcursor
  242. exec_always --no-startup-id blueberry
  243. # Polybar
  244. exec_always --no-startup-id $HOME/.config/polybar/launch.sh
  245. # # Enable pCloud storage.
  246. exec --no-startup-id ~/Applications/pcloud/pcloud &
  247. # Start i3bar to display a workspace bar (plus the system information i3status if available)
  248. #bar {
  249. # i3bar_command i3bar
  250. # status_command i3status
  251. # position bottom
  252. ## please set your primary output first. Example: 'xrandr --output eDP1 --primary'
  253. # tray_output primary
  254. # tray_output eDP1
  255. # bindsym button4 nop
  256. # bindsym button5 nop
  257. # font xft:URWGothic-Book 11
  258. # strip_workspace_numbers yes
  259. # colors {
  260. # background #222D31
  261. # statusline #F9FAF9
  262. # separator #454947
  263. # border backgr. text
  264. # focused_workspace #F9FAF9 #16a085 #292F34
  265. # active_workspace #595B5B #353836 #FDF6E3
  266. # inactive_workspace #595B5B #222D31 #EEE8D5
  267. # binding_mode #16a085 #2C2C2C #F9FAF9
  268. # urgent_workspace #16a085 #FDF6E3 #E5201D
  269. # }
  270. #}
  271. # hide/unhide i3status bar
  272. bindsym $mod+m bar mode toggle
  273. # Set colors from Xresources
  274. # # Change 'color7' and 'color2' to whatever colors you want i3 to use
  275. # # from the generated scheme.
  276. # # NOTE: The '#f0f0f0' in the lines below is the color i3 will use if
  277. # # it fails to get colors from Xresources.
  278. set_from_resource $fg i3wm.color7 #f0f0f0
  279. set_from_resource $bg i3wm.color2 #f0f0f0
  280. #
  281. # # class border backgr. text indicator child_border
  282. client.focused $bg $bg $fg $bg #$bg
  283. client.focused_inactive $bg $bg $fg $bg #$bg
  284. client.unfocused $bg $bg $fg $bg #$bg
  285. client.urgent $bg $bg $fg $bg #$bg
  286. client.placeholder $bg $bg $fg $bg #$bg
  287. client.background $bg
  288. #############################
  289. ### settings for i3-gaps: ###
  290. #############################
  291. # Set inner/outer gaps
  292. gaps inner 0
  293. gaps outer 0
  294. # Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size.
  295. # gaps inner|outer current|all set|plus|minus <px>
  296. # gaps inner all set 10
  297. # gaps outer all plus 5
  298. # Smart gaps (gaps used if only more than one container on the workspace)
  299. smart_gaps on
  300. # Smart borders (draw borders around container only if it is not the only container on this workspace)
  301. # on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0)
  302. smart_borders no_gaps
  303. # Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces.
  304. set $mode_gaps Gaps: (o) outer, (i) inner
  305. set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
  306. set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
  307. bindsym $mod+Shift+g mode "$mode_gaps"
  308. mode "$mode_gaps" {
  309. bindsym o mode "$mode_gaps_outer"
  310. bindsym i mode "$mode_gaps_inner"
  311. bindsym Return mode "default"
  312. bindsym Escape mode "default"
  313. }
  314. mode "$mode_gaps_inner" {
  315. bindsym plus gaps inner current plus 5
  316. bindsym minus gaps inner current minus 5
  317. bindsym 0 gaps inner current set 0
  318. bindsym Shift+plus gaps inner all plus 5
  319. bindsym Shift+minus gaps inner all minus 5
  320. bindsym Shift+0 gaps inner all set 0
  321. bindsym Return mode "default"
  322. bindsym Escape mode "default"
  323. }
  324. mode "$mode_gaps_outer" {
  325. bindsym plus gaps outer current plus 5
  326. bindsym minus gaps outer current minus 5
  327. bindsym 0 gaps outer current set 0
  328. bindsym Shift+plus gaps outer all plus 5
  329. bindsym Shift+minus gaps outer all minus 5
  330. bindsym Shift+0 gaps outer all set 0
  331. bindsym Return mode "default"
  332. bindsym Escape mode "default"
  333. }