poetician

i3 in Linux Mint 20 | Ver 2.4

Sep 1st, 2020 (edited)
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.82 KB | None | 0 0
  1. ### Poetician Edition: https://pastebin.com/u/poetician <><><><><><><><><><><><><><>#
  2. ###<><><><> i3 version 4.18.2-229-g234d6855 (2020-09-02, branch "gaps-next" <><><><>#
  3. ### © 2009 Michael Stapelberg and contributors) <><><><><><><><><><><><><><><><><><>#
  4. ###<><><><> Installed from scripts by Erik Dubois <><><><><><><><><><><><><><><><><>#
  5. ### https://www.youtube.com/watch?v=tN_xfRug-7c <><><><><><><><><><><><><><><><><><>#
  6. ###<><><><> Documentation https://i3wm.org/docs/userguide.html <><><><><><><><><><><#
  7.  
  8. ####################################################################
  9. ######<><><><> Definitions | Preliminary Settings <><><><><><><>##
  10.  
  11. # $Mod = WINDOWS key or Super key or Mod4
  12. # Mod1 = ALT key
  13. # Control = CTRL key
  14. # Shift = SHIFT key
  15. # Escape = ESCAPE key
  16. # Return = ENTER or RETURN key
  17. # Pause = PAUSE key
  18. # Print = PRINT key
  19. # Tab = TAB key
  20.  
  21. ############ Define the $mod key variable
  22. set $mod Mod4
  23.  
  24. ############ Dual Monitor Setup
  25.  
  26. set $firstMonitor HDMI-A-0
  27. set $secondMonitor DVI-D-0
  28.  
  29. workspace 1 output $firstMonitor
  30. workspace 2 output $firstMonitor
  31. workspace 3 output $firstMonitor
  32. workspace 4 output $firstMonitor
  33. workspace 5 output $firstMonitor
  34. workspace 6 output $firstMonitor
  35. workspace 7 output $firstMonitor
  36. workspace 8 output $firstMonitor
  37. workspace 9 output $secondMonitor
  38. workspace 10 output $secondMonitor
  39. workspace 11 output $secondMonitor
  40. workspace 12 output $secondMonitor
  41. workspace 13 output $secondMonitor
  42. workspace 14 output $secondMonitor
  43.  
  44. # Use arandr for the configuration
  45. exec xrandr --no-startup-id --output HDMI-A-0 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output DVI-D-0 -mode 1920x1080 --pos 1920x0 --rotate normal
  46.  
  47. ############ Set wallpaper to load at startup
  48. exec --no-startup-id variety
  49. #exec nitrogen --restore
  50.  
  51. ############ Font for window titles
  52. font pango:Federation italic 13
  53.  
  54. ############ Title Alignment
  55. title_align center
  56.  
  57. ############ Start terminal
  58. bindsym $mod+Return exec terminator
  59. for_window [class="Terminator"] floating enable, resize set 640 600, move position 1240 440
  60.  
  61. ############ Kill focused window
  62. bindsym $mod+q kill
  63.  
  64. ############<><><><> Restart, Reload, Exit <><><><><><><><><><><><><><>#
  65.  
  66. ############ Restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
  67. bindsym $mod+Shift+r restart
  68.  
  69. ############ Reload the configuration file
  70. bindsym $mod+Shift+c reload
  71.  
  72. ############ Exit i3 (logs you out of your X session)
  73.  
  74. # Press $mod+x to exit - options in toolbar
  75. bindsym $mod+x mode "$mode_system"
  76. bindsym control+mod1+Delete mode "$mode_system"
  77.  
  78. set $mode_system System (k) lock, (l) logout, (u) suspend, (h) hibernate, (r) reboot, (s) shutdown
  79. mode "$mode_system" {
  80. bindsym k exec --no-startup-id ~/.config/i3/scripts/i3exit.sh lock, mode "default"
  81. bindsym l exec --no-startup-id ~/.config/i3/scripts/i3exit.sh logout, mode "default"
  82. bindsym u exec --no-startup-id ~/.config/i3/scripts/i3exit.sh suspend, mode "default"
  83. bindsym h exec --no-startup-id ~/.config/i3/scripts/i3exit.sh hibernate, mode "default"
  84. bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit.sh reboot, mode "default"
  85. bindsym s exec --no-startup-id ~/.config/i3/scripts/i3exit.sh shutdown, mode "default"
  86.  
  87. # back to normal: Enter or Escape
  88. bindsym Return mode "default"
  89. bindsym Escape mode "default"
  90. }
  91.  
  92. ############<><><><> Systrem Tray Applications #<><><><><><><><><><><>#
  93.  
  94. # Authentication Dialogue Agent
  95. exec --no-startup-id /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 &
  96.  
  97. # Audio
  98. exec no-startup-id pasystray
  99.  
  100. ############<><><><> Screenshots #<><><><><><><><><><><><><><><><><><><#
  101. bindsym Print exec --no-startup-id scrot ' -%Y-%m-%d-%s_$wx$h.jpg' -e 'mv $f $$(xdg-user-dir Pictures)'
  102. bindsym Control+Print exec --no-startup-id xfce4-screenshooter
  103.  
  104. ############<><><><> bar toggle, hide or show #<><><><><><><><><><><><>#
  105. bindsym $mod+b bar mode toggle
  106.  
  107. ############<><><><> Scratchpad #<><><><><><><><><><><><><><><><><><><>#
  108. bindsym Mod1+Shift+slash move scratchpad
  109. bindsym Mod1+slash scratchpad show
  110. for_window [class="Stopwatch|Terminator"] move scratchpad
  111. bindsym Mod1+period [class="Stopwatch"] scratchpad show
  112. bindsym Mod1+comma [class="Terminator"] scratchpad show
  113.  
  114. ############<><><><> Screen Locking #<><><><><><><><><><><><><><><><><>#
  115.  
  116. ############ Display the selected image to load with the lock screen, replacing the white screen
  117. bindsym $mod+shift+g exec i3lock -i ~/Images/Arco Standard/arco-login.png
  118.  
  119. ############<><><><> Application Launchers <><><><><><><><><><><><><><>#
  120.  
  121. ############ Rofi (Prefered Mode)
  122. bindsym $mod+g exec rofi -show drun -show-icons -lines 7 -columns 3 -font "Federation 11" -width 85
  123. ############ Rofi (Window Mode)
  124. bindsym $mod+F11 exec --no-startup-id rofi -show window -show-icons -font "Federation 11"
  125. ############ Rofi (Combi Mode)
  126. bindsym $mod+F12 exec --no-startup-id rofi -show combi -lines 24 -show-icons -font "Federation 11"
  127.  
  128. ########################################################################
  129. ############<><><><> Startbar <><><><><><><><><><><><><><><><><><><><>##
  130.  
  131. bar {
  132.  
  133. #height 24
  134. position top
  135. #position bottom
  136. i3bar_command i3bar -t
  137. workspace_buttons yes
  138. font pango: Federation 11
  139.  
  140. #system icons
  141. tray_output HDMI-A-0
  142.  
  143. # OPTION 1 : i3status
  144.  
  145. # type status_command i3status without the config file and
  146. # you will get the standard i3status bar
  147. # Second one is the standard statusbar with my personal settings
  148.  
  149. #status_command i3status
  150. #status_command i3status -c ~/.config/i3/i3status.conf
  151.  
  152. # OPTION 2 : i3blocks
  153.  
  154. # https://github.com/vivien/i3blocks
  155. # another way to provide text in the statusbar
  156. # put hastag in front if not installed
  157.  
  158. #status_command i3blocks
  159. #status_command i3blocks -c ~/.config/i3/i3blocks.conf
  160. #status_command i3blocks -c ~/.config/i3/i3blocks-rainbow.conf
  161. #status_command i3blocks -c ~/.config/i3/i3blocks-original.conf
  162. #status_command i3blocks -c ~/.config/i3/i3blocks-awesome.conf
  163.  
  164. # OPTION 3 : conky
  165.  
  166. # You can also replace the istatus bar with a conky
  167. # start-conky-i3statusbar.sh is started and conky will follow
  168. # documentation : https://i3wm.org/docs/user-contributed/conky-i3bar.html
  169. # conky configuration is in conky-i3statusbar
  170.  
  171. status_command ~/.config/i3/start-conky-i3statusbar.sh
  172.  
  173. # OPTION 4 : polybar
  174.  
  175. # polybar is launched elsewhere - search for the word
  176. # from the opening of the "bar {...}" till the end has to go or hashtagged out
  177. # in order for the system trayicons to show up in polybar
  178.  
  179. colors {
  180. background #6c71c480
  181. statusline #f4cd52
  182. separator #e69722
  183. # border backgr. text
  184. focused_workspace #6c71c4 #6c71c440 #ffaf00
  185. active_workspace #6c71c4 #6c71c480 #ffaf00
  186. inactive_workspace #28194840 #6c71c480 #f4cd52
  187. urgent_workspace #281948 #11093e80 #a16b1c
  188. }
  189.  
  190. }
  191.  
  192. # class border backgr. text indicator child-border
  193. client.placeholder #1a000000 #FF000000 #281948 #00000000 #281948
  194. client.background #00000080
  195. client.unfocused #1a000000 #FF000000 #FFD700 #00000000 #281948
  196. client.focused #1a000000 #FF000000 #B87333 #00000000 #6c71c4
  197. client.focused_inactive #1a000000 #FF000000 #4f433f #00000000 #ffbf00
  198. client.urgent #11093e #00000040 #a16b1c #00000000 #8446d4
  199.  
  200. ###### Colour Picker
  201.  
  202. # #4f433f Tudor Brown #704214 Sepia #d1bea8 Dark Vanilla #FAEBD7 Antique White
  203. # #c0c0c0 Silver #899a99 Pewter #b2beb5 Ash Grey
  204. # #7C0A02 Barn Red #cb410b Sinopia #ffa500 Orange #ffbf00 Amber
  205. # #cd7f32 Bronze #B87333 Copper #FFD700 Gold # #ffc87c Topaz
  206. # #568203 Avocado #2e5e5b Pine #1f3d0c Deep Forest
  207. # #556b2f Dark Olive #013220 Dark Green #006600 Pakistan
  208. # #ee82ee Violet #673147 Old Mauve #560319 Dark Scarlet
  209. # #000f89 Phthalo Blue#4c2882 Spanish Violet#6a5acd Slate Blue #4b0082 Indigo
  210. # #089635 #104022 #033317 #a16b1c #e69722 #f4cd52 #8446d4 #b6b9e1
  211.  
  212. ####################################################################
  213. #########<><><><> Workspace Settings <><><><><><><><><><><><><><><>#
  214. ###############<><><><> Workspace related keybinding settings <><>##
  215.  
  216. set $ws1 "1"
  217. assign [class="Firefox"] "1"
  218. exec firefox
  219. bindsym $mod+F1 exec --no-startup-id firefox
  220.  
  221. set $ws2 "2"
  222. assign [class="atom|Nemo"] "2"
  223. exec nemo
  224. bindsym $mod+F2 exec --no-startup-id atom;focus
  225. bindsym $mod+Shift+Return exec --no-startup-id nemo;focus
  226.  
  227. set $ws3 "3"
  228. assign [class="Cherrytree|Xfce4-dict"] "3"
  229. for_window [class="Cherrytree"] floating enable, resize set 900 1020, move position 20 40
  230. exec cherrytree
  231. bindsym $mod+F3 exec cherrytree
  232. for_window [class="Xfce4-dict"] resize set 600 1020, move position 1140 40
  233.  
  234. set $ws4 "4"
  235. assign [class="libreoffice"] "4"
  236. exec libreoffice
  237. bindsym $mod+F4 exec --no-startup-id libreoffice;focus
  238.  
  239. set $ws5 "5"
  240. assign [class="kdenlive"] "5"
  241. exec kdenlive
  242. bindsym $mod+F5 exec --no-startup-id kdenlive
  243.  
  244. set $ws6 "6"
  245. assign [class="Gimp"] "6"
  246. exec gimp
  247. bindsym $mod+F6 exec --no-startup-id gimp;focus
  248.  
  249. set $ws7 "7"
  250. assign [class="Google Earth Pro"] "7"
  251. bindsym $mod+Shift+e exec --no-startup-id google earth-bin
  252. exec googleearth-bin;focus
  253.  
  254. set $ws8 "8"
  255.  
  256. set $ws9 "9"
  257. assign [class="Meld"] "9"
  258. exec meld
  259. bindsym $mod+F9 exec --no-startup-id meld;focus
  260. bindsym control+mod1+i exec --no-startup-id nitrogen;focus
  261.  
  262. set $ws10 "10"
  263. assign [class="VirtualBox|VirtualBox Manager|VirtualBox Machine"] $ws10
  264. for_window [class="VirtualBox Manager"] floating enable, move position 2360 40, resize set 1040 1030
  265. for_window [class="VirtualBox Machine"] floating disable
  266. exec --no-startup-id virtualbox manager
  267. bindsym Mod1+0 [class="VirtualBox Manager"] scratchpad show
  268. bindsym $mod+F10 exec virtualbox manager; focus
  269.  
  270. set $ws11 "11"
  271. assign [class="Shutter"] "11"
  272.  
  273. set $ws12 "12"
  274. assign [class="Mate-control-center"] "12"
  275. bindsym $mod+Shift+m exec mate-control-center
  276.  
  277. set $ws13 "13"
  278.  
  279. set $ws14 "14"
  280. assign [class="vlc|Xscreensaver-demo"] "14"
  281. for_window [class="vlc"] floating enable, resize set 1800 160, move position 60 880
  282. bindsym $mod+Mod1+v exec --nostartup-id vlc
  283. exec vlc
  284. for_window [class="Xscreensaver-demo"] floating enable, move position 440 80
  285.  
  286. ############ App loading at startup ###
  287.  
  288. exec_always --no-startup-id xscreensaver
  289. exec --no-startup-id xscreensaver-demo
  290. exec_always compton -b -c -f
  291. exec parcellite
  292. exec redshift
  293. exec workrave
  294.  
  295. ####################################################################
  296. ###############<><><><><> Workspace Relate Settings <><><><><><><>##
  297.  
  298. ###############<><><><> Floating or tiled <><><><><><><><><><><><>##
  299. #floating enabled from some programs - find with xprop
  300.  
  301. for_window [class="Alacritty"] floating enable
  302.  
  303. for_window [class="Font-manager"] floating enable
  304. for_window [class="Gnome-calculator"] floating enable
  305. for_window [class="Gnome-disks"] floating enable
  306. for_window [class="Gucharmap"] floating enable
  307. for_window [class="Imagewriter"] floating enable
  308. for_window [class="Mate-control-center"] floating enable
  309. for_window [class="Mintinstall.py"] floating enable, move position center
  310. for_window [class="MintUpdate.py"] floating enable, move position center
  311. for_window [class="Nitrogen"] floating enable
  312. for_window [class="Pavucontrol"] floating enable
  313. for_window [class="qt5ct|Lxappearance"] floating enable
  314. for_window [class="Stopwatch"] floating enable
  315. for_window [class="Synaptic"] floating enable, resize set 840 800, move position center
  316. for_window [class="Tilda"] floating enable
  317. for_window [class="Xfce4-appfinder"] floating enable
  318. for_window [class="Xfce4-dict"] floating enable
  319. for_window [class="Xfce4-settings-manager"] floating enable
  320. for_window [class="Xfce4-taskmanager"] floating enable
  321.  
  322. #for_window [instance="gimp"] floating disable
  323. for_window [instance="script-fu"] border normal
  324. for_window [instance="variety"] floating enable
  325.  
  326. for_window [title="Copying"] floating enable
  327. for_window [title="Deleting"] floating enable
  328. for_window [title="Moving"] floating enable
  329. for_window [title="^Terminator Preferences$"] floating enable
  330.  
  331. #for_window [window_role="^gimp-toolbox-color-dialog$"] floating enable
  332. for_window [window_role="pop-up"] floating enable
  333. for_window [window_role="^Preferences$"] floating enable
  334. for_window [window_role="setup"] floating enable
  335.  
  336. ###############<><><><> Workspace Operations <><><><><><><><><><>###
  337.  
  338. ############ Define workspace variables
  339. bindsym $mod+1 workspace $ws1
  340. bindsym $mod+2 workspace $ws2
  341. bindsym $mod+3 workspace $ws3
  342. bindsym $mod+4 workspace $ws4
  343. bindsym $mod+5 workspace $ws5
  344. bindsym $mod+6 workspace $ws6
  345. bindsym $mod+7 workspace $ws7
  346. bindsym $mod+8 workspace $ws8
  347. bindsym $mod+9 workspace $ws9
  348. bindsym $mod+0 workspace $ws10
  349. bindsym $mod+minus workspace $ws11
  350. bindsym $mod+plus workspace $ws12
  351. bindsym $mod+bracketleft workspace $ws13
  352. bindsym $mod+bracketright workspace $ws14
  353.  
  354. ############ Move focused container to workspace
  355. bindsym $mod+Shift+1 move container to workspace $ws1
  356. bindsym $mod+Shift+2 move container to workspace $ws2
  357. bindsym $mod+Shift+3 move container to workspace $ws3
  358. bindsym $mod+Shift+4 move container to workspace $ws4
  359. bindsym $mod+Shift+5 move container to workspace $ws5
  360. bindsym $mod+Shift+6 move container to workspace $ws6
  361. bindsym $mod+Shift+7 move container to workspace $ws7
  362. bindsym $mod+Shift+8 move container to workspace $ws8
  363. bindsym $mod+Shift+9 move container to workspace $ws9
  364. bindsym $mod+Shift+0 move container to workspace $ws10
  365. bindsym $mod+Shift+minus move container to workspace $ws11
  366. bindsym $mod+Shift+plus move container to workspace $ws12
  367. bindsym $mod+Shift+bracketleft move container to workspace $ws13
  368. bindsym $mod+Shift+bracketright move container to workspace $ws14
  369.  
  370. ####################################################################
  371. ###############<><><><> Screen Layout <><><><><><><><><><><><><><>##
  372.  
  373. ############ change container layout (stacked, tabbed, toggle split)
  374. bindsym $mod+s layout stacking
  375. bindsym $mod+w layout tabbed
  376. bindsym $mod+e layout toggle split
  377.  
  378. ############ toggle tiling / floating
  379. bindsym $mod+Shift+space floating toggle
  380.  
  381. ############ change focus between tiling / floating windows
  382. bindsym $mod+space focus mode_toggle
  383.  
  384. ###############<><><><> Screen Splitting <><><><><><><><><><><><><>#
  385.  
  386. ############ split in horizontal orientation
  387. bindsym $mod+h split h
  388.  
  389. ############ split in vertical orientation
  390. bindsym $mod+v split v
  391.  
  392. ############ enter fullscreen mode for the focused container
  393. bindsym $mod+f fullscreen toggle
  394.  
  395. ############ Use Mouse+$mod to drag floating windows to their new position
  396. floating_modifier $mod
  397.  
  398. ###############<><><><> Focus <><><><><><><><><><><><><><><><><><>#
  399.  
  400. ############ change focus
  401. bindsym $mod+j focus left
  402. bindsym $mod+k focus down
  403. bindsym $mod+l focus up
  404. bindsym $mod+semicolon focus right
  405.  
  406. ############ alternatively, you can use the cursor keys:
  407. bindsym $mod+Left focus left
  408. bindsym $mod+Down focus down
  409. bindsym $mod+Up focus up
  410. bindsym $mod+Right focus right
  411.  
  412. ############ move focused window
  413. bindsym $mod+Shift+j move left
  414. bindsym $mod+Shift+k move down
  415. bindsym $mod+Shift+l move up
  416. bindsym $mod+Shift+semicolon move right
  417.  
  418. ############ alternatively, you can use the cursor keys:
  419. bindsym $mod+Shift+Left move left
  420. bindsym $mod+Shift+Down move down
  421. bindsym $mod+Shift+Up move up
  422. bindsym $mod+Shift+Right move right
  423.  
  424. ############ focus the parent container
  425. bindsym $mod+a focus parent
  426.  
  427. ############ focus the child container
  428. #bindsym $mod+d focus child
  429.  
  430. ###############<><><><> Keybindings to resize windows <><><><><><><>#
  431.  
  432. # Resizing by 1
  433. bindsym $mod+Ctrl+Right resize grow width 1 px or 1 ppt
  434. bindsym $mod+Ctrl+Up resize shrink height 1 px or 1 ppt
  435. bindsym $mod+Ctrl+Down resize grow height 1 px or 1 ppt
  436. bindsym $mod+Ctrl+Left resize shrink width 1 px or 1 ppt
  437.  
  438. # Resizing by 10
  439. bindsym $mod+Ctrl+comma resize shrink width 10 px or 10 ppt
  440. bindsym $mod+Ctrl+apostrophe resize grow height 10 px or 10 ppt
  441. bindsym $mod+Ctrl+slash resize shrink height 10 px or 10 ppt
  442. bindsym $mod+Ctrl+period resize grow width 10 px or 10 ppt
  443.  
  444. ###############<><><><> Resize i3 Gaps <><><><><><><><><><><><><><><>#
  445.  
  446. # gaps inner|outer|horizontal|vertical|top|right|bottom|left current|all set|plus|minus|toggle
  447.  
  448. bindsym $mod+Shift+f gaps inner all set 0; gaps outer all set 0
  449. bindsym $mod+Shift+s gaps inner all set 5; gaps outer all set 5
  450. bindsym $mod+Shift+t gaps inner all set 40; gaps outer all set 0
  451. bindsym $mod+Shift+a gaps inner all set 0; gaps outer all set 40
  452. bindsym $mod+Shift+w gaps inner all set 10; gaps outer all set 30
  453. bindsym control+Shift+minus gaps inner current minus 5
  454. bindsym control+Shift+o gaps outer current plus 10
  455. bindsym control+Shift+i gaps inner current plus 10
  456. bindsym control+Shift+plus gaps outer current minus 5
  457. bindsym control+Shift+l gaps vertical current plus 10
  458. bindsym control+Shift+comma gaps vertical current minus 5
  459. bindsym control+Shift+bracketleft gaps horizontal current minus 5
  460. bindsym control+Shift+bracketright gaps horizontal current plus 10
  461. bindsym control+Shift+semicolon gaps right current plus 10
  462. bindsym control+Shift+apostrophe gaps right current minus 10
  463. bindsym control+Shift+k gaps left current minus 10
  464. bindsym control+Shift+j gaps left current plus 10
  465. bindsym control+Shift+backslash gaps outer current toggle 40
  466. bindsym control+Shift+y gaps top current minus 20; gaps horizontal current minus 20
  467. bindsym control+Shift+u gaps top current plus 20; gaps horizontal all plus 20
  468.  
  469. # popup_during_fullscreen smart|ignore|leave_fullscreen
  470. popup_during_fullscreen leave_fullscreen
  471.  
  472. ################ i3 Next Gaps <><><><><><><><><><><><><><><><><><><>#
  473.  
  474. # Settings for I3 next gaps https://github.com/Airblader/i3/tree/gaps-next
  475.  
  476. #for_window [class="^.*"] pixel 4
  477. gaps inner 4
  478. gaps outer 4
  479. smart_gaps on
  480. smart_borders on
  481.  
  482. ####################################################################
  483. #################<><><><> Border control <><><><><><><><><><><><><>#
  484.  
  485. # Border control
  486. # hide_edge_borders none|vertical|horizontal|both|smart
  487. hide_edge_borders none
  488. bindsym $mod+shift+b exec --no-startup-id i3-msg border toggle
  489.  
  490. #changing border style
  491. bindsym $mod+t border normal
  492. bindsym $mod+y border 1pixel
  493. bindsym $mod+u border none
  494.  
  495. new_window pixel 7
  496. #new_window normal
  497. #new_window none
  498.  
  499. new_float pixel 7
  500. #new_float normal
  501. #new_float none
  502.  
  503. ####################################################################
  504. #########<><><><> Tray Icons <><><><><><><><><><><><><><><><><><><>#
  505.  
  506. # volume
  507. exec --no-startup-id pasystray
  508. exec --no-startup-id volumeicon
  509.  
  510. #########################################################################
  511. #########<><><><><><><><><><><><><><> The End <><><><><><><><><><><><>###
  512.  
Add Comment
Please, Sign In to add comment