Little_hobbit

myi3config

Jun 25th, 2020
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 15.82 KB | None | 0 0
  1. # i3 config file (v4)
  2. # Please see http://i3wm.org/docs/userguide.html for a complete reference!
  3.  
  4. # Set mod key (Mod1=<Alt>, Mod4=<Super>)
  5. set $mod Mod4
  6.  
  7. # set default desktop layout (default is tiling)
  8. # workspace_layout tabbed <stacking|tabbed>
  9.  
  10. # Configure border style <normal|1pixel|pixel xx|none|pixel>
  11. default_border pixel 2
  12. default_floating_border pixel 2
  13.  
  14. # Hide borders
  15. hide_edge_borders smart
  16.  
  17. # change borders
  18. bindsym $mod+u border none
  19. bindsym $mod+y border pixel 1
  20. bindsym $mod+n border normal
  21.  
  22. # Font for window titles. Will also be used by the bar unless a different font
  23. # is used in the bar {} block below.
  24. # font xft:URWGothic-Book 11
  25. font pango:DejaVu Sans Mono, Awesome 12
  26.  
  27. # Use Mouse+$mod to drag floating windows
  28. floating_modifier $mod
  29.  
  30. # start a terminal
  31. bindsym $mod+Return exec urxvt
  32.  
  33. # kill focused window
  34. bindsym $mod+Shift+q kill
  35.  
  36. # start program launcher
  37. bindsym $mod+d exec --no-startup-id dmenu_recency
  38.  
  39. # launch categorized menu
  40. bindsym $mod+z exec --no-startup-id morc_menu
  41.  
  42. ################################################################################################
  43. ## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ##
  44. ################################################################################################
  45.  
  46. exec --no-startup-id volumeicon
  47. bindsym $mod+Ctrl+m exec terminal -e 'alsamixer'
  48. #exec --no-startup-id pulseaudio
  49. #exec --no-startup-id pa-applet
  50. #bindsym $mod+Ctrl+m exec pavucontrol
  51.  
  52. ################################################################################################
  53.  
  54. # Screen brightness controls
  55. # bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'"
  56. # bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'"
  57.  
  58. # Start Applications
  59. bindsym $mod+Ctrl+b exec terminal -e 'bmenu'
  60. bindsym $mod+F2 exec firefox
  61. bindsym $mod+F3 exec pcmanfm
  62. # bindsym $mod+F3 exec ranger
  63. bindsym $mod+Shift+F3 exec pcmanfm_pkexec
  64. bindsym $mod+F5 exec terminal -e 'mocp'
  65. bindsym $mod+t exec --no-startup-id pkill compton
  66. bindsym $mod+Ctrl+t exec --no-startup-id compton -b
  67. bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'"
  68. bindsym Print exec --no-startup-id i3-scrot
  69. bindsym $mod+Print --release exec --no-startup-id i3-scrot -w
  70. bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s
  71. bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf
  72. bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
  73.  
  74. focus_follows_mouse no
  75.  
  76. # change focus
  77. bindsym $mod+j focus left
  78. bindsym $mod+k focus down
  79. bindsym $mod+l focus up
  80. bindsym $mod+semicolon focus right
  81.  
  82. # alternatively, you can use the cursor keys:
  83. bindsym $mod+Left focus left
  84. bindsym $mod+Down focus down
  85. bindsym $mod+Up focus up
  86. bindsym $mod+Right focus right
  87.  
  88. # move focused window
  89. bindsym $mod+Shift+j move left
  90. bindsym $mod+Shift+k move down
  91. bindsym $mod+Shift+l move up
  92. bindsym $mod+Shift+semicolon move right
  93.  
  94. # alternatively, you can use the cursor keys:
  95. bindsym $mod+Shift+Left move left
  96. bindsym $mod+Shift+Down move down
  97. bindsym $mod+Shift+Up move up
  98. bindsym $mod+Shift+Right move right
  99.  
  100. # workspace back and forth (with/without active container)
  101. workspace_auto_back_and_forth yes
  102. bindsym $mod+b workspace back_and_forth
  103. bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth
  104.  
  105. # split orientation
  106. bindsym $mod+h split h;exec notify-send 'tile horizontally'
  107. bindsym $mod+v split v;exec notify-send 'tile vertically'
  108. bindsym $mod+q split toggle
  109.  
  110. # toggle fullscreen mode for the focused container
  111. bindsym $mod+f fullscreen toggle
  112.  
  113. # change container layout (stacked, tabbed, toggle split)
  114. bindsym $mod+s layout stacking
  115. bindsym $mod+w layout tabbed
  116. bindsym $mod+e layout toggle split
  117.  
  118. # toggle tiling / floating
  119. bindsym $mod+Shift+space floating toggle
  120.  
  121. # change focus between tiling / floating windows
  122. bindsym $mod+space focus mode_toggle
  123.  
  124. # toggle sticky
  125. bindsym $mod+Shift+s sticky toggle
  126.  
  127. # focus the parent container
  128. bindsym $mod+a focus parent
  129.  
  130. # move the currently focused window to the scratchpad
  131. bindsym $mod+Shift+minus move scratchpad
  132.  
  133. # Show the next scratchpad window or hide the focused scratchpad window.
  134. # If there are multiple scratchpad windows, this command cycles through them.
  135. bindsym $mod+minus scratchpad show
  136.  
  137. #navigate workspaces next / previous
  138. bindsym $mod+Ctrl+Right workspace next
  139. bindsym $mod+Ctrl+Left workspace prev
  140.  
  141. # Workspace names
  142. # to display names or symbols instead of plain workspace numbers you can use
  143. # something like: set $ws1 1:mail
  144. #                 set $ws2 2:
  145. set $ws1 1
  146. set $ws2 2
  147. set $ws3 3
  148. set $ws4 4
  149. set $ws5 5
  150. set $ws6 6
  151. set $ws7 7
  152. set $ws8 8
  153.  
  154. # switch to workspace
  155. bindsym $mod+1 workspace $ws1
  156. bindsym $mod+2 workspace $ws2
  157. bindsym $mod+3 workspace $ws3
  158. bindsym $mod+4 workspace $ws4
  159. bindsym $mod+5 workspace $ws5
  160. bindsym $mod+6 workspace $ws6
  161. bindsym $mod+7 workspace $ws7
  162. bindsym $mod+8 workspace $ws8
  163.  
  164. # Move focused container to workspace
  165. bindsym $mod+Ctrl+1 move container to workspace $ws1
  166. bindsym $mod+Ctrl+2 move container to workspace $ws2
  167. bindsym $mod+Ctrl+3 move container to workspace $ws3
  168. bindsym $mod+Ctrl+4 move container to workspace $ws4
  169. bindsym $mod+Ctrl+5 move container to workspace $ws5
  170. bindsym $mod+Ctrl+6 move container to workspace $ws6
  171. bindsym $mod+Ctrl+7 move container to workspace $ws7
  172. bindsym $mod+Ctrl+8 move container to workspace $ws8
  173.  
  174. # Move to workspace with focused container
  175. bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
  176. bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
  177. bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
  178. bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
  179. bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
  180. bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
  181. bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
  182. bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8  
  183.  
  184. # Open applications on specific workspaces
  185. assign [class="Thunderbird"] $ws3
  186. assign [class="clion"] $ws1
  187. # assign [class="Pale moon"] $ws2
  188. # assign [class="Pcmanfm"] $ws3
  189. # assign [class="Skype"] $ws5
  190.  
  191. # Open specific applications in floating mode
  192. # for_window [title="alsamixer"] floating enable border pixel 1
  193. for_window [class="calamares"] floating enable border normal
  194. for_window [class="Clipgrab"] floating enable
  195. for_window [title="File Transfer*"] floating enable
  196. for_window [class="fpakman"] floating enable
  197. for_window [class="Galculator"] floating enable border pixel 1
  198. for_window [class="GParted"] floating enable border normal
  199. for_window [title="i3_help"] floating enable sticky enable border normal
  200. for_window [class="Lightdm-settings"] floating enable
  201. for_window [class="Lxappearance"] floating enable sticky enable border normal
  202. for_window [class="Manjaro-hello"] floating enable
  203. for_window [class="Manjaro Settings Manager"] floating enable border normal
  204. for_window [title="MuseScore: Play Panel"] floating enable
  205. for_window [class="Nitrogen"] floating enable sticky enable border normal
  206. for_window [class="Oblogout"] fullscreen enable
  207. for_window [class="octopi"] floating enable
  208. for_window [title="About Pale Moon"] floating enable
  209. for_window [class="Pamac-manager"] floating enable
  210. for_window [class="Pavucontrol"] floating enable
  211. for_window [class="qt5ct"] floating enable sticky enable border normal
  212. for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal
  213. for_window [class="Simple-scan"] floating enable border normal
  214. for_window [class="(?i)System-config-printer.py"] floating enable border normal
  215. for_window [class="Skype"] floating enable border normal
  216. for_window [class="Timeset-gui"] floating enable border normal
  217. for_window [class="(?i)virtualbox"] floating enable border normal
  218. for_window [class="Xfburn"] floating enable
  219.  
  220. # switch to workspace with urgent window automatically
  221. for_window [urgent=latest] focus
  222.  
  223. # reload the configuration file
  224. bindsym $mod+Shift+c reload
  225.  
  226. # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  227. bindsym $mod+Shift+r restart
  228.  
  229. # exit i3 (logs you out of your X session)
  230. 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'"
  231.  
  232. # Set shut down, restart and locking features
  233. bindsym $mod+0 mode "$mode_system"
  234. set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown
  235. mode "$mode_system" {
  236.     bindsym l exec --no-startup-id i3exit lock, mode "default"
  237.     bindsym s exec --no-startup-id i3exit suspend, mode "default"
  238.     bindsym u exec --no-startup-id i3exit switch_user, mode "default"
  239.     bindsym e exec --no-startup-id i3exit logout, mode "default"
  240.     bindsym h exec --no-startup-id i3exit hibernate, mode "default"
  241.     bindsym r exec --no-startup-id i3exit reboot, mode "default"
  242.     bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default"
  243.  
  244.     # exit system mode: "Enter" or "Escape"
  245.     bindsym Return mode "default"
  246.     bindsym Escape mode "default"
  247. }
  248.  
  249. # Resize window (you can also use the mouse for that)
  250. bindsym $mod+r mode "resize"
  251. mode "resize" {
  252.         # These bindings trigger as soon as you enter the resize mode
  253.         # Pressing left will shrink the window’s width.
  254.         # Pressing right will grow the window’s width.
  255.         # Pressing up will shrink the window’s height.
  256.         # Pressing down will grow the window’s height.
  257.         bindsym j resize shrink width 5 px or 5 ppt
  258.         bindsym k resize grow height 5 px or 5 ppt
  259.         bindsym l resize shrink height 5 px or 5 ppt
  260.         bindsym semicolon resize grow width 5 px or 5 ppt
  261.  
  262.         # same bindings, but for the arrow keys
  263.         bindsym Left resize shrink width 10 px or 10 ppt
  264.         bindsym Down resize grow height 10 px or 10 ppt
  265.         bindsym Up resize shrink height 10 px or 10 ppt
  266.         bindsym Right resize grow width 10 px or 10 ppt
  267.  
  268.         # exit resize mode: Enter or Escape
  269.         bindsym Return mode "default"
  270.         bindsym Escape mode "default"
  271. }
  272.  
  273. # Lock screen
  274. bindsym $mod+9 exec --no-startup-id blurlock
  275.  
  276. # Autostart applications
  277. exec_always --no-startup-id picom --experimental-backends -b
  278. exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
  279. exec --no-startup-id nitrogen --restore; sleep 1;
  280. #exec --no-startup-id manjaro-hello
  281. exec --no-startup-id nm-applet
  282. exec --no-startup-id xfce4-power-manager
  283. exec --no-startup-id pamac-tray
  284. exec --no-startup-id clipit
  285. exec_always --no-startup-id "setxkbmap -model pc105 -layout us,ru -variant qwerty -option grp:alt_shift_toggle"
  286. # exec --no-startup-id blueman-applet
  287. # exec_always --no-startup-id sbxkb
  288. # exec --no-startup-id start_conky_maia
  289.  #exec --no-startup-id start_conky_green
  290. exec --no-startup-id xautolock -time 10 -locker blurlock
  291. exec_always --no-startup-id ff-theme-util
  292. exec_always --no-startup-id fix_xcursor
  293.  
  294. # Color palette used for the terminal ( ~/.Xresources file )
  295. # Colors are gathered based on the documentation:
  296. # https://i3wm.org/docs/userguide.html#xresources
  297. # Change the variable name at the place you want to match the color
  298. # of your terminal like this:
  299. # [example]
  300. # If you want your bar to have the same background color as your
  301. # terminal background change the line 362 from:
  302. # background #14191D
  303. # to:
  304. # background $term_background
  305. # Same logic applied to everything else.
  306. set_from_resource $term_background background
  307. set_from_resource $term_foreground foreground
  308. set_from_resource $term_color0     color0
  309. set_from_resource $term_color1     color1
  310. set_from_resource $term_color2     color2
  311. set_from_resource $term_color3     color3
  312. set_from_resource $term_color4     color4
  313. set_from_resource $term_color5     color5
  314. set_from_resource $term_color6     color6
  315. set_from_resource $term_color7     color7
  316. set_from_resource $term_color8     color8
  317. set_from_resource $term_color9     color9
  318. set_from_resource $term_color10    color10
  319. set_from_resource $term_color11    color11
  320. set_from_resource $term_color12    color12
  321. set_from_resource $term_color13    color13
  322. set_from_resource $term_color14    color14
  323. set_from_resource $term_color15    color15
  324.  
  325. # Start i3bar to display a workspace bar (plus the system information i3status if available)
  326. bar {
  327.     i3bar_command i3bar
  328.     status_command i3status
  329.     position bottom
  330.  
  331. ## please set your primary output first. Example: 'xrandr --output eDP1 --primary'
  332. #   tray_output primary
  333. #   tray_output eDP1
  334.  
  335.     bindsym button4 nop
  336.     bindsym button5 nop
  337. #   font xft:URWGothic-Book 11
  338.     # strip_workspace_numbers yes
  339.     font pango:DejaVu Sans Mono, Awesome 10
  340.  
  341.     colors {
  342.         background #1f1f1f
  343.         statusline #F9FAF9
  344.         separator  #454947
  345.  
  346. #                      border  backgr. text
  347.         focused_workspace  #F9FAF9 #16a085 #292F34
  348.         active_workspace   #595B5B #353836 #FDF6E3
  349.         inactive_workspace #595B5B #222D31 #EEE8D5
  350.         binding_mode       #16a085 #2C2C2C #F9FAF9
  351.         urgent_workspace   #16a085 #FDF6E3 #E5201D
  352.     }
  353. }
  354.  
  355. # hide/unhide i3status bar
  356. bindsym $mod+m bar mode toggle
  357.  
  358. # Theme colors
  359. # class                   border  backgr. text    indic.   child_border
  360.   client.focused          #556064 #90A6AD #80FFF9 #FDF6E3
  361.   client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948
  362.   client.unfocused        #2F3D44 #2F3D44 #1ABC9C #454948
  363.   client.urgent           #CB4B16 #FDF6E3 #1ABC9C #268BD2
  364.   client.placeholder      #000000 #0c0c0c #ffffff #000000
  365.  
  366.   client.background       #2B2C2B
  367.  
  368. #############################
  369. ### settings for i3-gaps: ###
  370. #############################
  371.  
  372. # Set inner/outer gaps
  373. gaps inner 10
  374. gaps outer -2
  375.  
  376. # Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size.
  377. # gaps inner|outer current|all set|plus|minus <px>
  378. # gaps inner all set 10
  379. # gaps outer all plus 5
  380.  
  381. # Smart gaps (gaps used if only more than one container on the workspace)
  382. smart_gaps on
  383.  
  384. # Smart borders (draw borders around container only if it is not the only container on this workspace)
  385. # on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0)
  386. smart_borders on
  387.  
  388. # 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.
  389. set $mode_gaps Gaps: (o) outer, (i) inner
  390. set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
  391. set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
  392. bindsym $mod+Shift+g mode "$mode_gaps"
  393.  
  394. mode "$mode_gaps" {
  395.         bindsym o      mode "$mode_gaps_outer"
  396.         bindsym i      mode "$mode_gaps_inner"
  397.         bindsym Return mode "default"
  398.         bindsym Escape mode "default"
  399. }
  400. mode "$mode_gaps_inner" {
  401.         bindsym plus  gaps inner current plus 5
  402.         bindsym minus gaps inner current minus 5
  403.         bindsym 0     gaps inner current set 0
  404.  
  405.         bindsym Shift+plus  gaps inner all plus 5
  406.         bindsym Shift+minus gaps inner all minus 5
  407.         bindsym Shift+0     gaps inner all set 0
  408.  
  409.         bindsym Return mode "default"
  410.         bindsym Escape mode "default"
  411. }
  412. mode "$mode_gaps_outer" {
  413.         bindsym plus  gaps outer current plus 5
  414.         bindsym minus gaps outer current minus 5
  415.         bindsym 0     gaps outer current set 0
  416.  
  417.         bindsym Shift+plus  gaps outer all plus 5
  418.         bindsym Shift+minus gaps outer all minus 5
  419.         bindsym Shift+0     gaps outer all set 0
  420.  
  421.         bindsym Return mode "default"
  422.         bindsym Escape mode "default"
  423. }
Add Comment
Please, Sign In to add comment