config (8209B)
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 https://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:FiraCode 12 17 font pango:FiraCode 10 18 19 # This font is widely installed, provides lots of unicode glyphs, right-to-left 20 # text rendering and scalability on retina/hidpi displays (thanks to pango). 21 #font pango:DejaVu Sans Mono 8 22 23 # Start XDG autostart .desktop files using dex. See also 24 # https://wiki.archlinux.org/index.php/XDG_Autostart 25 exec --no-startup-id dex --autostart --environment i3 26 27 # The combination of xss-lock, nm-applet and pactl is a popular choice, so 28 # they are included here as an example. Modify as you see fit. 29 30 # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the 31 # screen before suspend. Use loginctl lock-session to lock your screen. 32 exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork 33 34 # NetworkManager is the most popular way to manage wireless networks on Linux, 35 # and nm-applet is a desktop environment-independent system tray GUI for it. 36 exec --no-startup-id nm-applet 37 #exec picom 38 39 # Use pactl to adjust volume in PulseAudio. 40 set $refresh_i3status killall -SIGUSR1 i3status 41 bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status 42 bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status 43 bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status 44 bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status 45 46 # Use Mouse+$mod to drag floating windows to their wanted position 47 floating_modifier $mod 48 49 # move tiling windows via drag & drop by left-clicking into the title bar, 50 # or left-clicking anywhere into the window while holding the floating modifier. 51 tiling_drag modifier titlebar 52 53 # start a terminal 54 bindsym $mod+Return exec i3-sensible-terminal 55 56 # kill focused window 57 bindsym $mod+Shift+q kill 58 59 ####### DMENU ####### 60 61 bindsym $mod+o exec --no-startup-id ~/bin/dmenu.sh "#000000" "#FFFFFF" "#AAAAAA" 62 bindsym $mod+e exec --no-startup-id ~/bin/power.sh "#000000" "#FFFFFF" "#AAAAAA" 63 bindsym $mod+p exec --no-startup-id ~/bin/pass.sh "#000000" "#FFFFFF" "#AAAAAA" 64 bindsym $mod+t exec --no-startup-id ~/bin/tmux.sh "#000000" "#FFFFFF" "#AAAAAA" 65 bindsym $mod+z exec --no-startup-id ~/bin/zathura.sh "#000000" "#FFFFFF" "#AAAAAA" 66 bindsym $mod+m exec --no-startup-id ~/bin/find-music.sh "/home/serverBackup/fileSharing/music/" "#000000" "#FFFFFF" "#AAAAAA" 67 bindsym $mod+w exec --no-startup-id ~/bin/init-screen.sh "#000000" "#FFFFFF" "#AAAAAA" 68 69 ####### DMENU ####### 70 71 bindsym $mod+l exec i3lock -c 000000 72 73 # A more modern dmenu replacement is rofi: 74 # bindcode $mod+40 exec "rofi -modi drun,run -show drun" 75 # There also is i3-dmenu-desktop which only displays applications shipping a 76 # .desktop file. It is a wrapper around dmenu, so you need that installed. 77 # bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop 78 79 bindsym $mod+Left focus left 80 bindsym $mod+Down focus down 81 bindsym $mod+Up focus up 82 bindsym $mod+Right focus right 83 84 bindsym $mod+Shift+Left move left 85 bindsym $mod+Shift+Down move down 86 bindsym $mod+Shift+Up move up 87 bindsym $mod+Shift+Right move right 88 89 90 bindsym $mod+h split h 91 bindsym $mod+v split v 92 93 # enter fullscreen mode for the focused container 94 bindsym $mod+f fullscreen toggle 95 96 # change container layout (stacked, tabbed, toggle split) 97 bindsym $mod+s layout stacking 98 # bindsym $mod+w layout tabbed 99 # normal mode 100 bindsym $mod+n layout toggle split 101 102 # toggle tiling / floating 103 bindsym $mod+Shift+space floating toggle 104 bindsym $mod+Shift+s exec flameshot gui 105 106 # change focus between tiling / floating windows 107 bindsym $mod+space focus mode_toggle 108 109 # focus the parent container 110 bindsym $mod+a focus parent 111 112 # focus the child container 113 #bindsym $mod+d focus child 114 115 # Define names for default workspaces for which we configure key bindings later on. 116 # We use variables to avoid repeating the names in multiple places. 117 set $ws1 "1 - Messaging" 118 set $ws2 "2 - Code" 119 set $ws3 "3 - Browser" 120 set $ws4 "4" 121 set $ws5 "5" 122 set $ws6 "6" 123 set $ws7 "7" 124 set $ws8 "8" 125 set $ws9 "9" 126 set $ws10 "10" 127 128 # switch to workspace 129 bindsym $mod+1 workspace number $ws1 130 bindsym $mod+2 workspace number $ws2 131 bindsym $mod+3 workspace number $ws3 132 bindsym $mod+4 workspace number $ws4 133 bindsym $mod+5 workspace number $ws5 134 bindsym $mod+6 workspace number $ws6 135 bindsym $mod+7 workspace number $ws7 136 bindsym $mod+8 workspace number $ws8 137 bindsym $mod+9 workspace number $ws9 138 bindsym $mod+0 workspace number $ws10 139 140 # move focused container to workspace 141 bindsym $mod+Shift+1 move container to workspace number $ws1 142 bindsym $mod+Shift+2 move container to workspace number $ws2 143 bindsym $mod+Shift+3 move container to workspace number $ws3 144 bindsym $mod+Shift+4 move container to workspace number $ws4 145 bindsym $mod+Shift+5 move container to workspace number $ws5 146 bindsym $mod+Shift+6 move container to workspace number $ws6 147 bindsym $mod+Shift+7 move container to workspace number $ws7 148 bindsym $mod+Shift+8 move container to workspace number $ws8 149 bindsym $mod+Shift+9 move container to workspace number $ws9 150 bindsym $mod+Shift+0 move container to workspace number $ws10 151 152 # reload the configuration file 153 bindsym $mod+Shift+c reload 154 # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) 155 bindsym $mod+Shift+r restart 156 # exit i3 (logs you out of your X session) 157 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'" 158 159 # resize window (you can also use the mouse for that) 160 mode "resize" { 161 # These bindings trigger as soon as you enter the resize mode 162 163 # Pressing left will shrink the window’s width. 164 # Pressing right will grow the window’s width. 165 # Pressing up will shrink the window’s height. 166 # Pressing down will grow the window’s height. 167 bindsym j resize shrink width 10 px or 10 ppt 168 bindsym k resize grow height 10 px or 10 ppt 169 bindsym l resize shrink height 10 px or 10 ppt 170 bindsym semicolon resize grow width 10 px or 10 ppt 171 172 # same bindings, but for the arrow keys 173 bindsym Left resize shrink width 10 px or 10 ppt 174 bindsym Down resize grow height 10 px or 10 ppt 175 bindsym Up resize shrink height 10 px or 10 ppt 176 bindsym Right resize grow width 10 px or 10 ppt 177 178 # back to normal: Enter or Escape or $mod+r 179 bindsym Return mode "default" 180 bindsym Escape mode "default" 181 bindsym $mod+r mode "default" 182 } 183 184 bindsym $mod+r mode "resize" 185 186 # Start i3bar to display a workspace bar (plus the system information i3status 187 # finds out, if available) 188 189 190 # class border bground text indicator child_border 191 client.focused #FFFFFF #FFFFFF #FFFFFF #0000FF #FFFFFF 192 client.focused_inactive #000000 #000000 #000000 #000000 #000000 193 client.unfocused #000000 #000000 #000000 #000000 #000000 194 client.urgent #000000 #000000 #000000 #000000 #000000 195 client.placeholder #000000 #000000 #000000 #000000 #000000 196 197 client.background #000000 198 199 # this runs a script to take my current clipboard and send it to mpv. This allows me to copy 200 # a youtube url and then watch it in mpv with a shortcut. 201 bindsym $mod+Shift+m exec "~/bin/mpv.sh" 202 bindsym $mod+Shift+w exec qutebrowser 203 204 for_window [class="^.*"] border pixel 5 205 206 bar { 207 208 position top 209 status_command i3status 210 font pango:FiraCode 12 211 colors { 212 background #000000 213 statusline #ffffff 214 215 focused_workspace #000000 #000000 #ffffff 216 active_workspace #6e4f9a #6e4f9a #ffffff 217 inactive_workspace #000000 #000000 #888888 218 urgent_workspace #ff6c6b #ff6c6b #ffffff 219 } 220 }