diff options
Diffstat (limited to 'src/dotfiles/i3')
-rwxr-xr-x | src/dotfiles/i3/config | 216 |
1 files changed, 216 insertions, 0 deletions
diff --git a/src/dotfiles/i3/config b/src/dotfiles/i3/config new file mode 100755 index 0000000..b7f5ccd --- /dev/null +++ b/src/dotfiles/i3/config @@ -0,0 +1,216 @@ +#Theion's i3-wm config +font pango: JetBrainsMono Nerd Font 0 + +set $bg #282828 +set $red #cc241d +set $green #98971a +set $yellow #d79921 +set $blue #458588 +set $purple #b16286 +set $aqua #689d68 +set $gray #a89984 +set $darkgray #1d2021 +set $darkbrown #4E3524 +set $bar #262626 + +#Set Alt key +set $mod Mod1 + +#set Super key +#set $mod Mod4 + +#movements +set $up k +set $down j +set $left h +set $right l + + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 + +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# reload the configuration file +bindsym $mod+Shift+c reload + +# kill focused window +bindsym $mod+Shift+q kill + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+$left move left +bindsym $mod+Shift+$down move down +bindsym $mod+Shift+$up move up +bindsym $mod+Shift+$right move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +#navigate workspaces next / previous +bindsym Mod1+Ctrl+l workspace next +bindsym Mod1+Ctrl+h workspace prev + + +# Make the currently focused window a scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the first scratchpad window +bindsym $mod+minus scratchpad show + +# orientation for new workspaces +default_orientation horizontal + +# split in horizontal orientation +bindsym $mod+g split h + +# split in vertical orientation +bindsym $mod+v split v + +# 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 + + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +bindsym $mod+r mode "resize" + +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + 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 + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 1 px or 1 ppt + bindsym Down resize grow height 1 px or 1 ppt + bindsym Up resize shrink height 1 px or 1 ppt + bindsym Right resize grow width 1 px or 1 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + + + +#screenshots +bindsym Print exec maim -s --format png /dev/stdout | xclip -selection clipboard -t image/png -i +bindsym $mod+Print exec maim --select | tee ~/Pictures/$(date +%s).png | xclip -sel c -t image/png + +#pulseaudio +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status +bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status + +# Sreen brightness controls +bindsym XF86MonBrightnessUp exec brightnessctl -c backlight set +5% +bindsym XF86MonBrightnessDown exec brightnessctl -c backlight set 5%- + +#border +for_window [class="^.*"] border pixel 2 +gaps inner 10 +gaps outer 1 +smart_gaps on + + +# green gruvbox +# class border|backgr|text|indicator|child_border +client.focused $green $red $red $darkbrown $darkbrown +client.focused_inactive $darkgray $darkgray $yellow $darkbrown $darkgray +client.unfocused $darkgray $darkgray $yellow $darkbrown $darkgray +client.urgent $red $red $white $red $red + + + +for_window [class="^floating$"] floating enable + +for_window [class="^floating$"] border pixel 0 + +exec --no-startup-id ~/.config/polybar/launch.sh + +exec_always setxkbmap -option "caps:escape" + +exec_always xset r rate 300 50 + +exec_always picom + +exec_always setxkbmap us + +bindsym $mod+d exec --no-startup-id dmenu_run -i -nb '#282828' -nf '#ebdbb2' -sb '#ebdbb2' -sf '#1f222d' -fn 'OperatorMonoBook:bold:pixelsize=13' + +#bindsym $mod+d exec rofi -show run + + +#bindsym $mod+Shift+S exec gnome-screenshot + +bindsym $mod+Return exec --no-startup-id alacritty;focus + +#bindsym $mod+Shift+V exec feh --bg-fill -z ~/.config/i3/wallpapers +bindsym $mod+Shift+v exec nitrogen --set-zoom-fill --random ~/.config/wallpapers + +bindsym $mod+Shift+0 exec killall i3 + +bindsym $mod+Shift+Return exec qutebrowser + +bindsym $mod+Shift+m exec killall kitty + +bindsym $mod+Shift+n exec --no-startup-id kitty --class=floating + +bindsym $mod+Shift+p exec ~/.config/polybar/launch.sh + |