# i3 config file (v4) # Please see http://i3wm.org/docs/userguide.html for a complete reference! # Set mod key (Mod1=, Mod4=) set $mod Mod4 # set default desktop layout (default is tiling) #workspace_layout stacking # Configure border style new_window pixel 1 new_float normal # Hide borders hide_edge_borders none # change borders bindsym $mod+u border none bindsym $mod+y border pixel 1 bindsym $mod+n border normal # Font for window titles. Will also be used by the bar unless a different font # is used in the bar {} block below. font xft:DejaVu Sans Mono for Powerline 14 # Use Mouse+$mod to drag floating windows floating_modifier $mod # start a terminal bindsym $mod+Return exec termite # kill focused window bindsym $mod+Shift+q kill # start program launcher bindsym $mod+d exec --no-startup-id rofi -show drun -config ~/.config/rofi/config # launch categorized menu bindsym $mod+Tab exec --no-startup-id rofi -show window -config ~/.config/rofi/config ################################################################################################ ## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ## ################################################################################################ exec --no-startup-id volumeicon bindsym $mod+Ctrl+m exec terminal -e 'alsamixer' #exec --no-startup-id pulseaudio #exec --no-startup-id pa-applet #bindsym $mod+Ctrl+m exec pavucontrol ################################################################################################ # Screen brightness controls # bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'" # bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'" # Start Applications bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'" bindsym Print exec --no-startup-id i3-scrot bindsym $mod+Print --release exec --no-startup-id i3-scrot -w bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s # focus_follows_mouse no # 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 # 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 # workspace back and forth (with/without active container) workspace_auto_back_and_forth no bindsym $mod+b workspace back_and_forth bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth # split orientation bindsym $mod+h split h;exec notify-send -u low -a "I3" "I3" "Tile Horizontally" bindsym $mod+v split v;exec notify-send -u low -a "I3" "I3" "Tile Vertically" bindsym $mod+q split toggle # toggle 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 # toggle sticky bindsym $mod+Shift+s sticky toggle # focus the parent container bindsym $mod+a focus parent # 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. # If there are multiple scratchpad windows, this command cycles through them. bindsym $mod+minus scratchpad show #navigate workspaces next / previous bindsym $mod+Ctrl+Right workspace next bindsym $mod+Ctrl+Left workspace prev # Workspace names # to display names or symbols instead of plain workspace numbers you can use # something like: set $ws1 1:mail # set $ws2 2: #set $ws0 0:IRC #set $ws1 1:Comms #set $ws2 2:Web #set $ws3 3:IDE #set $ws4 4:Work #set $ws5 5:Terminals #set $ws6 6:Terminals #set $ws7 7:AltWeb #set $ws8 8:Media #set $ws9 9:News set $ws0 0: 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: # 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 $ws0 # Move focused container to workspace #bindsym $mod+Ctrl+1 move container to workspace $ws1 #bindsym $mod+Ctrl+2 move container to workspace $ws2 #bindsym $mod+Ctrl+3 move container to workspace $ws3 #bindsym $mod+Ctrl+4 move container to workspace $ws4 #bindsym $mod+Ctrl+5 move container to workspace $ws5 #bindsym $mod+Ctrl+6 move container to workspace $ws6 #bindsym $mod+Ctrl+7 move container to workspace $ws7 #bindsym $mod+Ctrl+8 move container to workspace $ws8 #bindsym $mod+Ctrl+9 move container to workspace $ws9 # Move to workspace with focused container bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2 bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7 bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9 bindsym $mod+Shift+0 move container to workspace $ws0; workspace $ws0 # WORKSPACE CREATION bindsym $mod+Ctrl+1 exec --no-startup-id ~/.i3/workspaces/ws01.sh bindsym $mod+Ctrl+2 exec --no-startup-id ~/.i3/workspaces/ws02.sh bindsym $mod+Ctrl+3 exec --no-startup-id ~/.i3/workspaces/ws03.sh bindsym $mod+Ctrl+4 exec --no-startup-id ~/.i3/workspaces/ws04.sh #bindsym $mod+Ctrl+5 exec --no-startup-id ~/.i3/workspaces/ws05.sh #bindsym $mod+Ctrl+6 exec --no-startup-id ~/.i3/workspaces/ws06.sh #bindsym $mod+Ctrl+7 exec --no-startup-id ~/.i3/workspaces/ws07.sh bindsym $mod+Ctrl+9 exec --no-startup-id ~/.i3/workspaces/ws09.sh bindsym $mod+Ctrl+0 exec --no-startup-id ~/.i3/workspaces/ws00.sh # Open specific applications in floating mode for_window [class="^.*"] border pixel 3 for_window [class="Nitrogen"] floating enable sticky enable border normal for_window [class="feh"] floating enable sticky enable border normal for_window [class="mpv"] floating enable sticky enable border normal for_window [class="vlc"] floating enable sticky enable border normal for_window [class="^jetbrains-.+"][window_type=dialog] focus # 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 # Lock screen bindsym $mod+l exec --no-startup-id light-locker-command -l # 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'" # Autostart applications exec --no-startup-id nitrogen --restore; sleep 1; compton -b exec --no-startup-id nm-applet exec --no-startup-id pasystray #exec --no-startup-id blueman-applet exec --no-startup-id light-locker # Color palette used for the terminal ( ~/.Xresources file ) # Colors are gathered based on the documentation: # https://i3wm.org/docs/userguide.html#xresources # Change the variable name at the place you want to match the color # of your terminal like this: # [example] # If you want your bar to have the same background color as your # terminal background change the line 362 from: # background #14191D # to: # background $term_background # Same logic applied to everything else. set_from_resource $term_background background set_from_resource $term_foreground foreground set_from_resource $term_color0 color0 set_from_resource $term_color1 color1 set_from_resource $term_color2 color2 set_from_resource $term_color3 color3 set_from_resource $term_color4 color4 set_from_resource $term_color5 color5 set_from_resource $term_color6 color6 set_from_resource $term_color7 color7 set_from_resource $term_color8 color8 set_from_resource $term_color9 color9 set_from_resource $term_color10 color10 set_from_resource $term_color11 color11 set_from_resource $term_color12 color12 set_from_resource $term_color13 color13 set_from_resource $term_color14 color14 set_from_resource $term_color15 color15 # Start i3bar to display a workspace bar (plus the system information i3status if available) #bar { # i3bar_command i3bar # status_command /usr/bin/i3status-rs /home/jfm/.config/i3status-rs/config.toml # position bottom # font xft:DejaVu Sans Mono for Powerline, FontAwesome 14 # strip_workspace_numbers yes # tray_output primary # colors { # background #002b36 # statusline #F9FAF9 # separator #454947 # border backgr. text # focused_workspace #93a1a1 #93a1a1 #fdf6e3 # active_workspace #93a1a1 #002b36 #93a1a1 # inactive_workspace #002b36 #002b36 #fdf6e3 # binding_mode #002b36 #002b36 #F9FAF9 # urgent_workspace #002b36 #002b36 #d33682 # } #} # hide/unhide i3status bar #bindsym $mod+m bar mode toggle # Theme colors # class border backgr. text indic. child_border client.focused #556064 #556064 #80FFF9 #b58900 #b58900 client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948 client.unfocused #2F3D44 #2F3D44 #1ABC9C #454948 client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2 client.placeholder #000000 #0c0c0c #ffffff #000000 client.background #2B2C2B ############################# ### settings for i3-gaps: ### ############################# # Set inner/outer gaps gaps inner 10 gaps outer -4 # Smart gaps (gaps used if only more than one container on the workspace) smart_gaps on smart_borders on #### Custom Config exec --no-startup-id /home/jfm/.i3/scripts/start_layout.sh