Files
dotfiles/.config/i3/config
Julian Prein 4954576496 i3,picom: Deactivate gaps and rounded corners
While installing i3 (not i3-gaps, as not easily available) on an Ubuntu
system with my dotfiles, I had to deactivate the gaps.

I think I prefer this look now, as it gives more screen real estate and
looks cleaner in my opinion.

Also deactivate rounded corners through picom as they only really make
sense with gaps enabled.
2022-06-23 23:58:53 +02:00

229 lines
7.5 KiB
Plaintext

# i3 Settings ##################################################################
set $mod Mod4
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
font pango:DejaVu Sans Mono 10
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
default_border pixel 1
hide_edge_borders smart
set $TERMINAL st
# Focus should not follow mouse
# focus_follows_mouse no
# Gaps #########################################################################
# gaps inner 10
# gaps outer 7
# Execs ########################################################################
# Multi monitor support
exec_always --no-startup-id ~/.config/i3/monitor-setup.sh &
# Keybindins ###################################################################
# Terminal
bindsym $mod+Return exec $TERMINAL -d "$(xcwd)"
bindsym $mod+Shift+Return exec $TERMINAL
# Program launcher
bindsym $mod+d exec rofi -show drun
bindsym $mod+Shift+d exec dmenu_run
# kill focused window
bindsym $mod+Shift+q kill
# change focus
focus_wrapping no
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# move focused window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# set split orientation
bindsym $mod+v split vertical
bindsym $mod+Shift+v split horizontal
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# Set workspace names
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# move focused container and switch to workspace
bindsym Mod1+Shift+1 move container to workspace $ws1; workspace $ws1
bindsym Mod1+Shift+2 move container to workspace $ws2; workspace $ws2
bindsym Mod1+Shift+3 move container to workspace $ws3; workspace $ws3
bindsym Mod1+Shift+4 move container to workspace $ws4; workspace $ws4
bindsym Mod1+Shift+5 move container to workspace $ws5; workspace $ws5
bindsym Mod1+Shift+6 move container to workspace $ws6; workspace $ws6
bindsym Mod1+Shift+7 move container to workspace $ws7; workspace $ws7
bindsym Mod1+Shift+8 move container to workspace $ws8; workspace $ws8
bindsym Mod1+Shift+9 move container to workspace $ws9; workspace $ws9
bindsym Mod1+Shift+0 move container to workspace $ws10; workspace $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
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'"
# resize window (you can also use the mouse for that)
mode "resize" {
bindsym h resize grow left
bindsym j resize grow down
bindsym k resize grow up
bindsym l resize grow right
bindsym Shift+h resize shrink right
bindsym Shift+j resize shrink up
bindsym Shift+k resize shrink down
bindsym Shift+l resize shrink left
# Set window size to predefined values
# firefox anti fingerprinting
bindsym p resize set 1920 1080
# scratchpad-terminal default size
bindsym s resize set 1600 900
# "fullscreen"
bindsym f resize set 3200 1770
# Move window to center
bindsym c move position center
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Brightness controls (/etc/X11/xorg.conf necessary)
bindsym XF86MonBrightnessDown exec xbacklight -dec 5
bindsym XF86MonBrightnessUp exec xbacklight -inc 5
# Volume controls (see https://faq.i3wm.org/question/125/how-to-change-the-systems-volume.1.html)
# Note: just add unmute add the end of the amixer command if the volume keys should unmute
bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -q -D pulse sset Master 5%+
bindsym XF86AudioLowerVolume exec --no-startup-id amixer -q -D pulse sset Master 5%-
bindsym XF86AudioMute exec --no-startup-id amixer -q -D pulse sset Master toggle-mute
# Lock
bindsym $mod+mod1+l exec xset s activate
# Start powermenu
bindsym $mod+p exec ~/.config/rofi/powermenu.sh &
# Notify when toggling airplane mode
bindsym XF86RFKill exec --no-startup-id ~/.config/i3/airplane-mode-notify.sh
bindsym $mod+Shift+m move scratchpad
bindsym $mod+Shift+o scratchpad show
# scratchpad-terminal
for_window [class="^$TERMINAL-256color$" title="^scratchpad-terminal$"] \
move scratchpad, \
scratchpad show, \
sticky enable, \
border none, \
resize set 1600 900, \
move position center
# Toggle the scratchpad-terminal or create a new one if none exists.
bindsym $mod+comma exec i3-msg '[class="^$TERMINAL-256color$" title="^scratchpad-terminal$"] scratchpad show' || $TERMINAL -A 0.45 -d "$(xcwd)" -c $TERMINAL-256color -t scratchpad-terminal
for_window [class="^TelegramDesktop$"] \
move scratchpad, \
scratchpad show
bindsym $mod+Shift+t exec i3-msg '[class="^TelegramDesktop$"] scratchpad show' || telegram-desktop
for_window [class="^Signal$"] \
move scratchpad, \
scratchpad show
bindsym $mod+Shift+s exec i3-msg '[class="^Signal$"] scratchpad show' || signal-desktop
for_window [class="^Bitwarden$"] \
move scratchpad, \
scratchpad show
bindsym $mod+Shift+b exec i3-msg '[class="^Bitwarden$"] scratchpad show' || bitwarden
for_window [class="^$TERMINAL-256color$" title="^polybar-datetime-calendar$"] \
floating enable, \
border pixel 3, \
resize set 378 300, \
move position 1411 32
bindsym $mod+c exec ~/.config/polybar/scripts/calendar.sh -t &
# screenshots
bindsym --release Print exec cd ~/pics/screens/ && scrot -sf
# Zoom links in private browser
bindsym $mod+z exec ~/.local/bin/zoom-links
# Monitor selection with fzf
for_window [class="^$TERMINAL-256color$" title="^fzf-monitor-setup$"] \
floating enable, \
border pixel 3, \
resize set 378 300, \
move position 1 32
bindsym $mod+m exec pkill -f fzf-monitor-setup -O 1 || $TERMINAL -t fzf-monitor-setup -e ~/.local/bin/monitor-setup
# vim: ft=i3