# Oxide theme # # Author: Diki Ananta # Repository: https://github.com/dikiaap/dotfiles # License: MIT # i3 config file (v4) # font for window titles and bar font pango:Source Sans Pro 10 # use win key set $mod Mod4 # use these keys for focus, movement, and resize directions set $left j set $down k set $up l set $right semicolon # define names for workspaces set $ws1 "1:  Terminal " set $ws2 "2:  Code " set $ws3 "3:  Chromium " set $ws4 "4:  Files " set $ws5 "5:  Documents " set $ws6 "6:  Media " set $ws7 "7:  Design " set $ws8 "8:  Chat " set $ws9 "9:  General " set $ws10 "10:  Settings " # use $mod+Mouse to drag floating windows to their wanted position floating_modifier $mod # move tiling windows via drag & drop by left-clicking into the title bar tiling_drag modifier titlebar # control focused window when follows the mouse movements focus_follows_mouse no # window border settings default_border none default_floating_border none # hiding borders adjacent to the screen edges hide_edge_borders none # window gaps smart_gaps on gaps inner 8 gaps outer 2 # set popups during fullscreen mode popup_during_fullscreen smart # start a terminal bindsym $mod+Return workspace $ws1; exec --no-startup-id alacritty # start a program launcher #bindsym $mod+d exec --no-startup-id i3-dmenu-desktop --dmenu="dmenu -i -fn 'Source Sans Pro-10' -nb '#212121' -sb '#2b83a6' -sf '#ffffff'" bindsym $mod+d exec --no-startup-id rofi -show drun # switching window with win+tab bindsym $mod+Tab exec --no-startup-id rofi -show window # kill focused window bindsym $mod+Shift+q kill # 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 # split in horizontal orientation bindsym $mod+h 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 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 # focus the child container bindsym $mod+Shift+a focus child # move the currently focused window to the scratchpad bindsym $mod+Shift+minus move scratchpad # show the next scratchpad window or hide the focused scratchpad window bindsym $mod+minus scratchpad show # move focused floating window to the center of all outputs bindsym $mod+Shift+h move absolute position center # move focused floating window to the current position of the cursor bindsym $mod+Shift+m move position mouse # set a window to stick to the glass bindsym $mod+Shift+s sticky toggle # sticky preview for media bindsym $mod+Shift+p fullscreen disable; floating enable; resize set 350 px 197 px; sticky enable; move window to position 1006 px 537 px # shortcut to change window border bindsym $mod+t border normal 0 bindsym $mod+y border pixel 1 bindsym $mod+u border none # 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 # shortcut applications bindsym Print exec --no-startup-id gnome-screenshot bindsym $mod+Print exec --no-startup-id gnome-screenshot -a bindsym $mod+Shift+x exec --no-startup-id i3lock-fancy -f Source-Sans-Pro # volume bindsym XF86AudioLowerVolume exec --no-startup-id amixer -q -D pulse sset Master 5%- unmute bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -q -D pulse sset Master 5%+ unmute bindsym XF86AudioMute exec --no-startup-id amixer -q -D pulse sset Master toggle # notification bindsym Ctrl+space exec --no-startup-id dunstctl close bindsym Ctrl+Shift+space exec --no-startup-id dunstctl close-all bindsym Ctrl+grave exec --no-startup-id dunstctl history-pop bindsym Ctrl+Shift+period exec --no-startup-id dunstctl context # reload the configuration file bindsym $mod+Shift+c reload # restart i3 inplace bindsym $mod+Shift+r restart # manage i3 session bindsym $mod+Shift+e exec --no-startup-id i3-nagbar -t warning -f "pango:Hack 9" -m "Do you really want to exit?" -B "  Exit " "i3-msg exit" -B "  Lock " "pkill i3-nagbar && i3lock-fancy -f Source-Sans-Pro" -B "  Reboot " "pkill i3-nagbar && reboot" -B "  Shutdown " "pkill i3-nagbar && shutdown -h now" # resize window bindsym $mod+r mode "  " mode "  " { # pressing left and up will shrink the window's width and height # pressing right and down will grow the window's width and 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 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 win+r bindsym Return mode "default" bindsym $mod+r mode "default" } # set specific windows to floating mode for_window [window_role="app"] floating enable for_window [window_role="pop-up"] floating enable for_window [window_role="task_dialog"] floating enable for_window [title="Preferences$"] floating enable # class border backgr. text indicator child_border client.focused #2b83a6 #2b83a6 #ffffff #dddddd #2b83a6 client.focused_inactive #212121 #212121 #86888c #292d2e #5a5a5a client.unfocused #212121 #212121 #86888c #292d2e #5a5a5a client.urgent #d64e4e #d64e4e #ffffff #d64e4e #d64e4e client.placeholder #212121 #0c0c0c #ffffff #212121 #262626 client.background #212121 # start i3bar to display a workspace bar bar { status_command i3blocks bindsym button4 nop bindsym button5 nop position bottom tray_output primary separator_symbol "·" workspace_buttons yes strip_workspace_numbers yes colors { background #212121 statusline #dddddd separator #666666 # class border backgr. text focused_workspace #2b83a6 #2b83a6 #ffffff active_workspace #212121 #212121 #ffffff inactive_workspace #212121 #212121 #86888c urgent_workspace #d64e4e #d64e4e #ffffff binding_mode #229c56 #229c56 #ffffff } } # local config file include local.conf # startup applications exec_always --no-startup-id xautolock -time 10 -locker "i3lock-fancy -f Source-Sans-Pro" exec_always --no-startup-id nm-applet exec_always --no-startup-id pulseaudio --start exec_always --no-startup-id lxpolkit exec_always --no-startup-id feh --bg-fill ~/Public/desktop/dark_planet_minimalist.png exec_always --no-startup-id picom