config (7043B)
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 gaps inner 15 14 gaps outer 15 15 16 # Thinkpad multimedia keys 17 18 bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume 19 bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume 20 bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound 21 bindsym $mod+e exec --no-startup-id nemo 22 23 # Font for window titles. Will also be used by the bar unless a different font 24 # is used in the bar {} block below. 25 font pango:Deja Vu Sans Mono:style=regular 26 27 # This font is widely installed, provides lots of unicode glyphs, right-to-left 28 # text rendering and scalability on retina/hidpi displays (thanks to pango). 29 #font pango:DejaVu Sans Mono 8 30 31 # Before i3 v4.8, we used to recommend this one as the default: 32 # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 33 # The font above is very space-efficient, that is, it looks good, sharp and 34 # clear in small sizes. However, its unicode glyph coverage is limited, the old 35 # X core fonts rendering does not support right-to-left and this being a bitmap 36 # font, it doesn’t scale on retina/hidpi displays. 37 38 # Use Mouse+$mod to drag floating windows to their wanted position 39 floating_modifier $mod 40 41 # start a terminal 42 bindsym $mod+Return exec st 43 # kill focused window 44 bindsym $mod+Shift+q kill 45 46 workspace_layout default 47 48 # start dmenu (a program launcher) 49 bindsym $mod+d exec dmenu_run 50 # There also is the (new) i3-dmenu-desktop which only displays applications 51 # shipping a .desktop file. It is a wrapper around dmenu, so you need that 52 # installed. 53 # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop 54 55 # change focus 56 #bindsym $mod+j focus left 57 #bindsym $mod+k focus down 58 #bindsym $mod+l focus up 59 #bindsym $mod+semicolon focus right 60 61 # for window, order sometimes matters 62 for_window [class="^.*"] border pixel 1 63 64 new_window 1pixel 65 66 # alternatively, you can use the cursor keys: 67 bindsym $mod+Left focus left 68 bindsym $mod+Down focus down 69 bindsym $mod+Up focus up 70 bindsym $mod+Right focus right 71 72 # move focused window 73 bindsym $mod+Shift+j move left 74 bindsym $mod+Shift+k move down 75 bindsym $mod+Shift+l move up 76 bindsym $mod+Shift+semicolon move right 77 78 # alternatively, you can use the cursor keys: 79 bindsym $mod+Shift+Left move left 80 bindsym $mod+Shift+Down move down 81 bindsym $mod+Shift+Up move up 82 bindsym $mod+Shift+Right move right 83 bindsym $mod+m exec --no-startup-id emacsclient -c -e '(mu4e)' 84 bindsym $mod+k exec --no-startup-id emacsclient -c -e '(elfeed)' 85 86 # split in horizontal orientation 87 bindsym $mod+h split h 88 89 # split in vertical orientation 90 bindsym $mod+v split v 91 92 # enter fullscreen mode for the focused container 93 bindsym $mod+f fullscreen toggle 94 95 # change container layout (stacked, tabbed, toggle split) 96 bindsym $mod+s layout stacking 97 bindsym $mod+w layout tabbed 98 bindsym $mod+semicolon layout toggle split 99 100 # toggle tiling / floating 101 bindsym $mod+Shift+space floating toggle 102 103 # change focus between tiling / floating windows 104 bindsym $mod+space focus mode_toggle 105 106 # focus the parent container 107 bindsym $mod+a focus parent 108 109 # focus the child container 110 #bindsym $mod+d focus child 111 112 # Define names for default workspaces for which we configure key bindings later on. 113 # We use variables to avoid repeating the names in multiple places. 114 set $ws1 "1:Web" 115 set $ws2 "2:>_" 116 set $ws3 "3:>_" 117 set $ws4 "4:>_" 118 set $ws5 "5:Disc" 119 set $ws6 "6:>_" 120 set $ws7 "7:>_" 121 set $ws8 "8:Music" 122 set $ws9 "9:Mail" 123 set $ws10 "10:Steam" 124 125 # switch to workspace 126 bindsym $mod+1 workspace $ws1 127 bindsym $mod+2 workspace $ws2 128 bindsym $mod+3 workspace $ws3 129 bindsym $mod+4 workspace $ws4 130 bindsym $mod+5 workspace $ws5 131 bindsym $mod+6 workspace $ws6 132 bindsym $mod+7 workspace $ws7 133 bindsym $mod+8 workspace $ws8 134 bindsym $mod+9 workspace $ws9 135 bindsym $mod+0 workspace $ws10 136 137 assign [class="firefox"] $ws9 138 assign [class="brave"] $ws1 139 assign [class="emacs"] $ws6 140 assign [class="discord"] $ws5 141 assign [class="Steam"] $ws10 142 assign [class="Chromium"] $ws9 143 144 145 146 # move focused container to workspace 147 bindsym $mod+Shift+1 move container to workspace $ws1 148 bindsym $mod+Shift+2 move container to workspace $ws2 149 bindsym $mod+Shift+3 move container to workspace $ws3 150 bindsym $mod+Shift+4 move container to workspace $ws4 151 bindsym $mod+Shift+5 move container to workspace $ws5 152 bindsym $mod+Shift+6 move container to workspace $ws6 153 bindsym $mod+Shift+7 move container to workspace $ws7 154 bindsym $mod+Shift+8 move container to workspace $ws8 155 bindsym $mod+Shift+9 move container to workspace $ws9 156 bindsym $mod+Shift+0 move container to workspace $ws10 157 158 # reload the configuration file 159 bindsym $mod+Shift+c reload 160 # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) 161 bindsym $mod+Shift+r restart 162 # exit i3 (logs you out of your X session) 163 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'" 164 165 bindsym $mod+b exec --no-startup-id i3-msg 'workspace $ws1; exec /usr/bin/firefox' 166 167 # resize window (you can also use the mouse for that) 168 mode "resize" { 169 # These bindings trigger as soon as you enter the resize mode 170 171 # Pressing left will shrink the window’s width. 172 # Pressing right will grow the window’s width. 173 # Pressing up will shrink the window’s height. 174 # Pressing down will grow the window’s height. 175 bindsym j resize shrink width 10 px or 10 ppt 176 bindsym k resize grow height 10 px or 10 ppt 177 bindsym l resize shrink height 10 px or 10 ppt 178 bindsym semicolon resize grow width 10 px or 10 ppt 179 180 # same bindings, but for the arrow keys 181 bindsym Left resize shrink width 10 px or 10 ppt 182 bindsym Down resize grow height 10 px or 10 ppt 183 bindsym Up resize shrink height 10 px or 10 ppt 184 bindsym Right resize grow width 10 px or 10 ppt 185 186 # back to normal: Enter or Escape or $mod+r 187 bindsym Return mode "default" 188 bindsym Escape mode "default" 189 bindsym $mod+r mode "default" 190 } 191 192 bindsym $mod+r mode "resize" 193 194 # Start i3bar to display a workspace bar (plus the system information i3status 195 # finds out, if available) 196 #bar { 197 # position top 198 # status_command i3status 199 # } 200 201 bindsym $mod+p exec --no-startup-id mpc toggle 202 bindsym $mod+n exec --no-startup-id mpc next 203 bindsym $mod+l exec --no-startup-id mpc prev 204 bindsym $mod+o exec --no-startup-id mpc shuffle 205 bindsym $mod+y exec --no-startup-id st -e zsh -ic ncmpcpp 206 bindsym $mod+t exec --no-startup-id st -e zsh -ic htop 207 208 209 exec --no-startup-id wal -i $(/home/ryan/src/scripts/ranwal) 210 211 exec --no-startup-id picom -b 212 213 exec --no-startup-id sleep 3s && /home/ryan/src/scripts/init-polybar.sh 214 215 exec --no-startup-id /usr/bin/dunst 216 217