added sxhkd

This commit is contained in:
Thies Lennart Alff 2022-11-02 20:50:10 +01:00
parent 014ed0a64c
commit 6e2eb224ca
4 changed files with 77 additions and 84 deletions

6
README.md Normal file
View file

@ -0,0 +1,6 @@
# i3
## Requirements
~~~ bash
sudo pacman -S - < pkglist.txt
~~~

137
i3/config
View file

@ -14,118 +14,87 @@ for_window [class="Kmix"] floating enable; border none
for_window [class="Klipper"] floating enable; border none for_window [class="Klipper"] floating enable; border none
for_window [class="Plasmoidviewer"] floating enable; border none for_window [class="Plasmoidviewer"] floating enable; border none
# for_window [class="(?i)*nextcloud*"] floating disable # for_window [class="(?i)*nextcloud*"] floating disable
for_window [class="plasmashell" window_type="notification"] border none, move position 70 ppt 81 ppt for_window [class="plasmashell" window_type="notification"] border none, move position 70 ppt 81 ppt no_focus [class="plasmashell" window_type="notification"]
no_focus [class="plasmashell" window_type="notification"]
# picom as compositor
exec_always --no-startup-id picom -cb exec_always --no-startup-id picom -cb
# dunst as notification daemon
# also fixes slack freeze problem on messages
exec_always --no-startup-id dunst
# fix scaling
exec "xrandr --dpi 144"
# exec --no-startup-id nm-applet
# nitrogen handles the desktop background
exec --no-startup-id "nitrogen --restore"
# dex could be used for autostarting applications. not used right now
# exec --no-startup-id dex --autostart --environment i3
# autostart hotkey daemon
exec_always --no-startup-id sxhkd -c $HOME/.config/sxhkd/sxhkdrc
focus_follows_mouse no focus_follows_mouse no
font pango:Noto Sans 14 font pango:Noto Sans 14
set $mod Mod4 set $mod Mod4
bindsym $mod+Ctrl+Shift+l exec "i3lock -i $HOME/Wallpaper/lockscreen.png" set $locker i3lock -i $HOME/Wallpaper/lockscreen.png && sleep 1
bindsym $mod+Ctrl+Shift+l exec --no-startup-id $locker
bindsym $mod+Return exec "konsole --hide-menubar" bindsym $mod+Return exec "konsole --hide-menubar"
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
bindsym $mod+d exec dmenu_run bindsym $mod+d exec dmenu_run
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
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'" set $mode_exit exit: [l]ock, l[o]gout, [r]eboot, [s]hutdown
mode "$mode_exit" {
set $ws1 "1" bindsym l exec --no-startup-id $locker, mode "default"
set $ws2 "2" bindsym o exec --no-startup-id i3-msg exit, mode "default"
set $ws3 "3" bindsym r exec --no-startup-id reboot, mode "default"
set $ws4 "4" bindsym s exec --no-startup-id systemctl poweroff -i, mode "default"
set $ws5 "5" bindsym Escape mode "default"
set $ws6 "6" bindsym Return mode "default"
set $ws7 "7" }
set $ws8 "8" bindsym $mod+Shift+e mode "$mode_exit"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
bindsym $mod+Ctrl+h move workspace to output left
bindsym $mod+Ctrl+j move workspace to output down
bindsym $mod+Ctrl+k move workspace to output up
bindsym $mod+Ctrl+l move workspace to output right
bindsym $mod+q layout stacking bindsym $mod+q layout stacking
bindsym $mod+w layout tabbed bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split bindsym $mod+e layout toggle split
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
bindsym $mod+v split h bindsym $mod+v split h
bindsym $mod+s split v bindsym $mod+s split v
bindsym $mod+a focus parent bindsym $mod+a focus parent
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
bindsym $mod+f fullscreen toggle bindsym $mod+f fullscreen toggle
# class border backgr. text indicator child_border
client.focused #b53c00 #ff5500 #ffffff #55ff00 #ff5500
client.focused_inactive #333333 #5f676a #ffffff #484e50 #5f676a
client.unfocused #333333 #222222 #888888 #292d2e #222222
client.urgent #2f343a #900000 #ffffff #900000 #900000
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
client.background #ffffff
exec --no-startup-id nm-applet
exec --no-startup-id "nitrogen --restore"
exec --no-startup-id dex --autostart --environment i3
# high dpi scaling # high dpi scaling
exec "xrandr --dpi 144"
bar { bar {
status_command i3status status_command i3status
position top position top
} }
# go to urgent workspace
bindsym $mod+x [urgent=latest] focus
# autostart
set $messenger_workspace "10"
exec --no-startup-id i3-msg 'exec telegram-desktop; exec slack'
exec --no-startup-id i3-msg 'exec firefox '
assign [class="^TelegramDesktop$"] $messenger_workspace
assign [class="^Slack$"] $messenger_workspace
assign [class="^firefox$"] "1"
exec --no-startup-id sleep 5 && i3-msg workspace "$messenger_workspace"
exec --no-startup-id layout tabbed
exec --no-startup-id i3-msg 'workspace 1; exec keepassxc'

7
pkglist.txt Normal file
View file

@ -0,0 +1,7 @@
picom
nitrogen
i3-gaps
i3lock
i3status
dunst
sxhkd

11
sxhkd/sxhkdrc Normal file
View file

@ -0,0 +1,11 @@
# switch / move workspaces
super + {_,shift +} {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
i3-msg {workspace,move container to workspace} {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
# switch containers, move containers and move workspace to another screen
super + {_, shift +, ctrl +} {h, j, k, l}
i3-msg {focus, move, move workspace to output} {left, down, up, right}
# resize mode
super + r: {h, j, k, l}
i3-msg resize {shrink width, grow height, shrink height, grow width} 10 px or 10 ppt