Full ~/.config/i3/config file:

Feel free to copy bits and pieces. The full file has some aliases and functions that will be unusable to people other than myself. This is more for my own benefit / backup. I recommend taking a look the environments page to get a breakdown of the useful bits and pieces.

###############################################################################
# i3-gaps config file for the Regolith Desktop Environment
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
#
###############################################################################
#
# In this config file many values are taken from Xresources with the directive
# set_from_resource:
#
# set_from_resource <i3 variable name> <Xresources key> <default value>
#
# This configuration file utilizes Xresource variables to change configuration
# without having to make a copy of this config file.
# The benefit to not copying this file is easier upgrades in the future.
# To update a value in this config without making a copy, update the Xresource
# value in the file ~/.config/regolith/Xresources.
#
# For example, to change the bar position to the top of the screen this is the
# i3 config entry in this file:
# set_from_resource $i3-wm.bar.position i3-wm.bar.position bottom
#
# So add this line to ~/.config/regolith/Xresources to change it's value:
# i3-wm.bar.position: top
#
# Reload i3 after making Xresource changes.  Learn more at
# https://regolith-linux.org/docs/howto/override-xres/
#
###############################################################################
#
# This file uses a machine-parsable format for comments. The schema is:
# ## <Category> // <Action> // <Keybinding> ##
# Learn more at https://github.com/regolith-linux/remontoire
#
###############################################################################

###############################################################################
# Key Mappings
###############################################################################

# Meta Key - Alt key is Mod1, and Windows key is Mod4
set_from_resource $mod  i3-wm.mod Mod4
set_from_resource $alt  i3-wm.alt Mod1

set_from_resource $i3-wm.binding. i3-wm.binding.

###############################################################################
# Custom Mappings and Settings
###############################################################################

for_window [class="^.*"] border pixel 0
smart_borders on
smart_borders no_gaps
border_radius 7

bindsym $mod+Shift+o exec alacritty -t 'alacritty-floating' -e td --interactive
bindsym $mod+s exec rofi_notes.sh -a 'Daniel Tompkins' -e 'nvim' -l "colo duotone-dark | AirlineTheme hybrid" -o "$HOME/.scratch/"
bindsym $mod+Shift+s exec alacritty -t 'alacritty-floating' -e nvim -c "colo duotone-dark | AirlineTheme hybrid | startinsert" scratchpad
for_window [title="^alacritty-floating$"] floating enable, move position center
bindsym $mod+Ctrl+o exec sm _ --foreground="#c02907" --background="#222222" -n "JetBrainsMono Nerd Font" -a 0
bindsym $mod+Shift+i exec i3-msg open
bindsym $mod+y fullscreen disable; floating enable; resize set 300 200; sticky enable; move window to position 11 11

###############################################################################
# Workspace Names
# These are the labels which define each i3 workspace.
###############################################################################

set_from_resource $ws1  i3-wm.workspace.01.name "1"
set_from_resource $ws2  i3-wm.workspace.02.name "2"
set_from_resource $ws3  i3-wm.workspace.03.name "3"
set_from_resource $ws4  i3-wm.workspace.04.name "4"
set_from_resource $ws5  i3-wm.workspace.05.name "5"
set_from_resource $ws6  i3-wm.workspace.06.name "6"
set_from_resource $ws7  i3-wm.workspace.07.name "7"
set_from_resource $ws8  i3-wm.workspace.08.name "8"
set_from_resource $ws9  i3-wm.workspace.09.name "9"
set_from_resource $ws10 i3-wm.workspace.10.name "10"
set_from_resource $ws11 i3-wm.workspace.11.name "11"
set_from_resource $ws12 i3-wm.workspace.12.name "12"
set_from_resource $ws13 i3-wm.workspace.13.name "13"
set_from_resource $ws14 i3-wm.workspace.14.name "14"
set_from_resource $ws15 i3-wm.workspace.15.name "15"
set_from_resource $ws16 i3-wm.workspace.16.name "16"
set_from_resource $ws17 i3-wm.workspace.17.name "17"
set_from_resource $ws18 i3-wm.workspace.18.name "18"
set_from_resource $ws19 i3-wm.workspace.19.name "19"

###############################################################################
# Workspace Keys
# These are the keys which will be used while binding workspace switching
###############################################################################

set_from_resource $ws1_key  i3-wm.workspace.01.key 1
set_from_resource $ws2_key  i3-wm.workspace.02.key 2
set_from_resource $ws3_key  i3-wm.workspace.03.key 3
set_from_resource $ws4_key  i3-wm.workspace.04.key 4
set_from_resource $ws5_key  i3-wm.workspace.05.key 5
set_from_resource $ws6_key  i3-wm.workspace.06.key 6
set_from_resource $ws7_key  i3-wm.workspace.07.key 7
set_from_resource $ws8_key  i3-wm.workspace.08.key 8
set_from_resource $ws9_key  i3-wm.workspace.09.key 9
set_from_resource $ws10_key i3-wm.workspace.10.key 0

###############################################################################
# Launcher dialogs
###############################################################################

## Launch // Terminal // <> Enter ##
set_from_resource $i3-wm.binding.terminal i3-wm.binding.terminal Return
bindsym $mod+$i3-wm.binding.terminal exec /usr/bin/alacritty

## Launch // Browser // <><Shift> Enter ##
set_from_resource $i3-wm.binding.browser i3-wm.binding.browser Shift+Return
bindsym $mod+$i3-wm.binding.browser exec gtk-launch $(xdg-settings get default-web-browser)

set_from_resource $rofiTheme rofi.theme /etc/regolith/styles/waterfall/rofi.rasi

## Launch // Application // <> Space ##
set_from_resource $i3-wm.binding.launcher.app i3-wm.binding.launcher.app space
set_from_resource $i3-wm.program.launcher.app i3-wm.program.launcher.app rofi -show drun -theme $rofiTheme
bindsym $mod+$i3-wm.binding.launcher.app exec $i3-wm.program.launcher.app

## Launch // Command // <><Shift> Space ##
set_from_resource $i3-wm.binding.launcher.cmd i3-wm.binding.launcher.cmd Shift+space
set_from_resource $i3-wm.program.launcher.cmd i3-wm.program.launcher.cmd rofi -show run -theme $rofiTheme
bindsym $mod+$i3-wm.binding.launcher.cmd exec $i3-wm.program.launcher.cmd

## Navigate // Window by Name // <><Ctrl> Space ##
set_from_resource $i3-wm.binding.launcher.window i3-wm.binding.launcher.window Ctrl+space
set_from_resource $i3-wm.program.launcher.window i3-wm.program.launcher.window rofi -show window -theme $rofiTheme
bindsym $mod+$i3-wm.binding.launcher.window exec $i3-wm.program.launcher.window

## Launch // This Dialog // <><Shift> ? ##
set_from_resource $i3-wm.binding.help i3-wm.binding.help Shift+question
set_from_resource $i3-wm.program.help i3-wm.program.help /usr/bin/remontoire -c /etc/regolith/i3/config
bindsym $mod+$i3-wm.binding.help exec --no-startup-id $i3-wm.program.help

## Launch // File Search // <><Alt> Space ##
set_from_resource $i3-wm.binding.file_search i3-wm.binding.file_search Mod1+space
set_from_resource $i3-wm.program.file_search i3-wm.program.file_search rofi -show find -modi find:/usr/share/rofi/modi/finder.sh
bindsym $mod+$i3-wm.binding.file_search exec $i3-wm.program.file_search

## Launch // Look Selector // <><Alt> l ##
set_from_resource $i3-wm.binding.look_selector i3-wm.binding.look_selector Mod1+l
set_from_resource $i3-wm.program.look_selector i3-wm.program.look_selector rofi -show look -modi look:/usr/share/rofi/modi/look-selector.sh
bindsym $mod+$i3-wm.binding.look_selector exec $i3-wm.program.look_selector

## Launch // Emoji // <Ctrl> Space ##
set_from_resource $i3-wm.program.launcher.emoji i3-wm.program.launcher.emoji rofi -show emoji -modi emoji -theme $rofiTheme
bindsym Ctrl+space exec $i3-wm.program.launcher.emoji

## Launch // Password Manager // <Ctrl><Shift> x ##
set_from_resource $i3-wm.program.password_manager i3-wm.program.password_manager /usr/bin/keepassxc
bindsym Ctrl+Shift+x exec $i3-wm.program.password_manager


###############################################################################
# Window and Workspace Navigation
###############################################################################

## Navigate // Relative Parent // <> a ##/
set_from_resource $i3-wm.binding.focus_parent i3-wm.binding.focus_parent a
bindsym $mod+$i3-wm.binding.focus_parent focus parent

## Navigate // Relative Child // <> z ##/
set_from_resource $i3-wm.binding.focus_child i3-wm.binding.focus_child z
bindsym $mod+$i3-wm.binding.focus_child focus child

## Navigate // Relative Window // <> ↑ ↓ ← → ##
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right

## Navigate // Relative Window // <> k j h l ##
set_from_resource $i3-wm.binding.left i3-wm.binding.left h
set_from_resource $i3-wm.binding.right i3-wm.binding.right l
set_from_resource $i3-wm.binding.up i3-wm.binding.up k
set_from_resource $i3-wm.binding.down i3-wm.binding.down j
bindsym $mod+$i3-wm.binding.left focus left
bindsym $mod+$i3-wm.binding.down focus down
bindsym $mod+$i3-wm.binding.up focus up
bindsym $mod+$i3-wm.binding.right focus right

## Navigate // Workspaces 1-10 // <> 0..9 ##
bindsym $mod+$ws1_key workspace number $ws1
bindsym $mod+$ws2_key workspace number $ws2
bindsym $mod+$ws3_key workspace number $ws3
bindsym $mod+$ws4_key workspace number $ws4
bindsym $mod+$ws5_key workspace number $ws5
bindsym $mod+$ws6_key workspace number $ws6
bindsym $mod+$ws7_key workspace number $ws7
bindsym $mod+$ws8_key workspace number $ws8
bindsym $mod+$ws9_key workspace number $ws9
bindsym $mod+$ws10_key workspace number $ws10
## Navigate // Workspace 11 - 19 // <><Ctrl> 1..9 ##
bindsym $mod+Ctrl+$ws1_key workspace number $ws11
bindsym $mod+Ctrl+$ws2_key workspace number $ws12
bindsym $mod+Ctrl+$ws3_key workspace number $ws13
bindsym $mod+Ctrl+$ws4_key workspace number $ws14
bindsym $mod+Ctrl+$ws5_key workspace number $ws15
bindsym $mod+Ctrl+$ws6_key workspace number $ws16
bindsym $mod+Ctrl+$ws7_key workspace number $ws17
bindsym $mod+Ctrl+$ws8_key workspace number $ws18
bindsym $mod+Ctrl+$ws9_key workspace number $ws19

## Navigate // Next Workspace // <> Tab ##
set_from_resource $i3-wm.binding.ws_next i3-wm.binding.ws_next Tab
bindsym $mod+$i3-wm.binding.ws_next workspace next

## Navigate // Next Workspace // <><Alt> → ##
set_from_resource $i3-wm.binding.ws_next2 i3-wm.binding.ws_next2 Mod1+Right
bindsym $mod+$i3-wm.binding.ws_next2 workspace next

## Navigate // Next Workspace on Output // <><Ctrl> Tab ##
set_from_resource $i3-wm.binding.ws_next_on_output i3-wm.binding.ws_next_on_output Ctrl+Tab
bindsym $mod+$i3-wm.binding.ws_next_on_output workspace next_on_output

## Navigate // Next Workspace on Output // <><Ctrl> l ##
set_from_resource $i3-wm.binding.ws_next_on_output2 i3-wm.binding.ws_next_on_output2 Ctrl+l
bindsym $mod+$i3-wm.binding.ws_next_on_output2 workspace next_on_output

## Navigate // Previous Workspace // <><Shift> Tab ##
set_from_resource $i3-wm.binding.ws_prev i3-wm.binding.ws_prev Shift+Tab
bindsym $mod+$i3-wm.binding.ws_prev workspace prev

## Navigate // Previous Workspace // <><Alt> ← ##
set_from_resource $i3-wm.binding.ws_prev2 i3-wm.binding.ws_prev2 Mod1+Left
bindsym $mod+$i3-wm.binding.ws_prev2 workspace prev

## Navigate // Previous Workspace on Output // <><Ctrl><Shift> Tab ##
set_from_resource $i3-wm.binding.ws_prev_on_output i3-wm.binding.ws_prev_on_output Ctrl+Shift+Tab
bindsym $mod+$i3-wm.binding.ws_prev_on_output workspace prev_on_output

## Navigate // Previous Workspace on Output // <><Ctrl> h ##
set_from_resource $i3-wm.binding.ws_prev_on_output2 i3-wm.binding.ws_prev_on_output2 Ctrl+h
bindsym $mod+$i3-wm.binding.ws_prev_on_output2 workspace prev_on_output

## Navigate // Next Free Workspace // <> ` ##
set_from_resource $i3-wm.binding.next_free i3-wm.binding.next_free grave
bindsym $mod+$i3-wm.binding.next_free exec --no-startup-id /usr/bin/i3-next-workspace

## Navigate // Scratchpad // <><Ctrl> a ##
set_from_resource $i3-wm.binding.scratchpad i3-wm.binding.scratchpad Ctrl+a
bindsym $mod+$i3-wm.binding.scratchpad scratchpad show

###############################################################################
# Window and Workspace Configuration
###############################################################################

## Modify // Window Position // <><Shift> ↑ ↓ ← → ##
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right

## Modify // Window Position // <><Shift> k j h l ##
set_from_resource $i3-wm.binding.move_left i3-wm.binding.move_left Shift+h
set_from_resource $i3-wm.binding.move_right i3-wm.binding.move_right Shift+l
set_from_resource $i3-wm.binding.move_up i3-wm.binding.move_up Shift+k
set_from_resource $i3-wm.binding.move_down i3-wm.binding.move_down Shift+j
bindsym $mod+$i3-wm.binding.move_left move left
bindsym $mod+$i3-wm.binding.move_down move down
bindsym $mod+$i3-wm.binding.move_up move up
bindsym $mod+$i3-wm.binding.move_right move right

## Modify // Containing Workspace // <><Ctrl><Shift> ↑ ↓ ← → ##
bindsym $mod+Ctrl+Shift+Left move workspace to output left
bindsym $mod+Ctrl+Shift+Down move workspace to output down
bindsym $mod+Ctrl+Shift+Up move workspace to output up
bindsym $mod+Ctrl+Shift+Right move workspace to output right

## Modify // Containing Workspace // <><Ctrl><Shift> k j h l ##
set_from_resource $i3-wm.binding.take_left i3-wm.binding.take_left Ctrl+Shift+h
set_from_resource $i3-wm.binding.take_right i3-wm.binding.take_right Ctrl+Shift+l
set_from_resource $i3-wm.binding.take_up i3-wm.binding.take_up Ctrl+Shift+k
set_from_resource $i3-wm.binding.take_down i3-wm.binding.take_down Ctrl+Shift+j
bindsym $mod+$i3-wm.binding.take_left move workspace to output left
bindsym $mod+$i3-wm.binding.take_down move workspace to output down
bindsym $mod+$i3-wm.binding.take_up move workspace to output up
bindsym $mod+$i3-wm.binding.take_right move workspace to output right

# Screenshots
bindsym Print exec --no-startup-id maim "/home/$USER/Pictures/$(date)" && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &
bindsym $mod+Print exec --no-startup-id maim --window $(xdotool getactivewindow) "/home/$USER/Pictures/$(date)" && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &
bindsym Shift+Print exec --no-startup-id maim --select "/home/$USER/Pictures/$(date)" && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &

## Clipboard Screenshots
bindsym Ctrl+Print exec --no-startup-id maim | xclip -selection clipboard -t image/png && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &
bindsym Ctrl+$mod+Print exec --no-startup-id maim --window $(xdotool getactivewindow) | xclip -selection clipboard -t image/png && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &
bindsym Ctrl+Shift+Print exec --no-startup-id maim --select | xclip -selection clipboard -t image/png && mpv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga &

## Modify // Vertical Window Orientation // <> v ##
set_from_resource $i3-wm.binding.split_v i3-wm.binding.split_v v
bindsym $mod+$i3-wm.binding.split_v split vertical

## Modify // Horizontal Window Orientation // <> g ##
set_from_resource $i3-wm.binding.split_h i3-wm.binding.split_h g
bindsym $mod+$i3-wm.binding.split_h split horizontal

## Modify // Toggle Window Orientation // <> Backspace ##
set_from_resource $i3-wm.binding.orientation_toggle i3-wm.binding.orientation_toggle BackSpace
bindsym $mod+$i3-wm.binding.orientation_toggle split toggle

## Modify // Window Fullscreen Toggle // <> f ##
set_from_resource $i3-wm.binding.fullscreen_toggle i3-wm.binding.fullscreen_toggle f
bindsym $mod+$i3-wm.binding.fullscreen_toggle fullscreen toggle

## Modify // Window Floating Toggle // <><Shift> f ##
set_from_resource $i3-wm.binding.float_toggle i3-wm.binding.float_toggle Shift+f
bindsym $mod+Shift+$i3-wm.binding.float_toggle floating toggle

## Modify // Move to Scratchpad // <><Ctrl> m ##
set_from_resource $i3-wm.binding.move_scratchpad i3-wm.binding.move_scratchpad Ctrl+m
bindsym $mod+$i3-wm.binding.move_scratchpad move to scratchpad

## Modify // Tile/Float Focus Toggle // <><Shift> t ##
set_from_resource $i3-wm.binding.focus_toggle i3-wm.binding.focus_toggle Shift+t
bindsym $mod+$i3-wm.binding.focus_toggle focus mode_toggle

## Modify // Window Layout Mode // <> t ##
set_from_resource $i3-wm.binding.layout_mode i3-wm.binding.layout_mode t
bindsym $mod+$i3-wm.binding.layout_mode layout toggle tabbed splith splitv

## Modify // Move Window to Workspace 1 - 10 // <><Shift> 0..9 ##
bindsym $mod+Shift+$ws1_key move container to workspace number $ws1
bindsym $mod+Shift+$ws2_key move container to workspace number $ws2
bindsym $mod+Shift+$ws3_key move container to workspace number $ws3
bindsym $mod+Shift+$ws4_key move container to workspace number $ws4
bindsym $mod+Shift+$ws5_key move container to workspace number $ws5
bindsym $mod+Shift+$ws6_key move container to workspace number $ws6
bindsym $mod+Shift+$ws7_key move container to workspace number $ws7
bindsym $mod+Shift+$ws8_key move container to workspace number $ws8
bindsym $mod+Shift+$ws9_key move container to workspace number $ws9
bindsym $mod+Shift+$ws10_key move container to workspace number $ws10
## Modify // Move Window to Workspace 11 - 19// <><Ctrl><Shift> 1..9 ##
bindsym $mod+Shift+Ctrl+$ws1_key move container to workspace number $ws11
bindsym $mod+Shift+Ctrl+$ws2_key move container to workspace number $ws12
bindsym $mod+Shift+Ctrl+$ws3_key move container to workspace number $ws13
bindsym $mod+Shift+Ctrl+$ws4_key move container to workspace number $ws14
bindsym $mod+Shift+Ctrl+$ws5_key move container to workspace number $ws15
bindsym $mod+Shift+Ctrl+$ws6_key move container to workspace number $ws16
bindsym $mod+Shift+Ctrl+$ws7_key move container to workspace number $ws17
bindsym $mod+Shift+Ctrl+$ws8_key move container to workspace number $ws18
bindsym $mod+Shift+Ctrl+$ws9_key move container to workspace number $ws19

## Modify // Move Window to Next Free Workspace // <><Shift> ` ##
set_from_resource $i3-wm.binding.move_next_free i3-wm.binding.move_next_free Shift+grave
bindsym $mod+$i3-wm.binding.move_next_free exec --no-startup-id /usr/bin/i3-next-workspace --move-window

# move focused container to workspace, move to workspace
## Modify // Carry Window to Workspace 1 - 10// <><Alt> 0..9 ##
bindsym $mod+$alt+$ws1_key move container to workspace number $ws1; workspace number $ws1
bindsym $mod+$alt+$ws2_key move container to workspace number $ws2; workspace number $ws2
bindsym $mod+$alt+$ws3_key move container to workspace number $ws3; workspace number $ws3
bindsym $mod+$alt+$ws4_key move container to workspace number $ws4; workspace number $ws4
bindsym $mod+$alt+$ws5_key move container to workspace number $ws5; workspace number $ws5
bindsym $mod+$alt+$ws6_key move container to workspace number $ws6; workspace number $ws6
bindsym $mod+$alt+$ws7_key move container to workspace number $ws7; workspace number $ws7
bindsym $mod+$alt+$ws8_key move container to workspace number $ws8; workspace number $ws8
bindsym $mod+$alt+$ws9_key move container to workspace number $ws9; workspace number $ws9
bindsym $mod+$alt+$ws10_key move container to workspace number $ws10; workspace number $ws10
## Modify // Carry Window to Workspace 11 - 19 // <><Alt><Ctrl> 1..9 ##
bindsym $mod+$alt+Ctrl+$ws1_key move container to workspace number $ws11; workspace number $ws11
bindsym $mod+$alt+Ctrl+$ws2_key move container to workspace number $ws12; workspace number $ws12
bindsym $mod+$alt+Ctrl+$ws3_key move container to workspace number $ws13; workspace number $ws13
bindsym $mod+$alt+Ctrl+$ws4_key move container to workspace number $ws14; workspace number $ws14
bindsym $mod+$alt+Ctrl+$ws5_key move container to workspace number $ws15; workspace number $ws15
bindsym $mod+$alt+Ctrl+$ws6_key move container to workspace number $ws16; workspace number $ws16
bindsym $mod+$alt+Ctrl+$ws7_key move container to workspace number $ws17; workspace number $ws17
bindsym $mod+$alt+Ctrl+$ws8_key move container to workspace number $ws18; workspace number $ws18
bindsym $mod+$alt+Ctrl+$ws9_key move container to workspace number $ws19; workspace number $ws19

## Modify // Carry Window to Next Free Workspace // <><Alt> ` ##
set_from_resource $i3-wm.binding.take_next_free i3-wm.binding.take_next_free Mod1+grave
bindsym $mod+$i3-wm.binding.take_next_free exec --no-startup-id /usr/bin/i3-next-workspace --move-window-and-follow

# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod

# Hiding borders adjacent to the screen edges.
# The "smart" setting hides borders on workspaces with only one window visible.
set_from_resource $i3-wm.hide.edge.borders i3-wm.hide.edge.borders smart
hide_edge_borders $i3-wm.hide.edge.borders

###############################################################################
# Session Management
###############################################################################

## Session // Exit App // <><Shift> q ##
set_from_resource $i3-wm.binding.exit_app i3-wm.binding.exit_app Shift+q
bindsym $mod+$i3-wm.binding.exit_app [con_id="__focused__"] kill

## Session // Terminate App // <><Alt> q ##
set_from_resource $i3-wm.binding.kill_app i3-wm.binding.kill_app Mod1+q
bindsym $mod+$i3-wm.binding.kill_app [con_id="__focused__"] exec --no-startup-id kill -9 $(xdotool getwindowfocus getwindowpid)

## Session // Refresh Session // <><Shift> r ##
set_from_resource $i3-wm.binding.refresh i3-wm.binding.refresh Shift+r
set_from_resource $i3-wm.program.refresh_ui i3-wm.program.refresh_ui /usr/bin/regolith-look refresh
bindsym $mod+$i3-wm.binding.refresh exec --no-startup-id $i3-wm.program.refresh_ui

## Session // Restart i3 // <><Ctrl> r ##
set_from_resource $i3-wm.binding.restart i3-wm.binding.restart Ctrl+r
bindsym $mod+$i3-wm.binding.restart restart

## Session // Logout // <><Shift> e ##
set_from_resource $i3-wm.binding.logout i3-wm.binding.logout Shift+e
set_from_resource $i3-wm.program.logout i3-wm.program.logout /usr/bin/gnome-session-quit --logout
bindsym $mod+$i3-wm.binding.logout exec $i3-wm.program.logout

## Session // Reboot // <><Shift> b ##
set_from_resource $i3-wm.binding.reboot i3-wm.binding.reboot Shift+b
set_from_resource $i3-wm.program.reboot i3-wm.program.reboot /usr/bin/gnome-session-quit --reboot
bindsym $mod+$i3-wm.binding.reboot exec $i3-wm.program.reboot

## Session // Power Down // <><Shift> p ##
set_from_resource $i3-wm.binding.shutdown i3-wm.binding.shutdown Shift+p
set_from_resource $i3-wm.program.shutdown i3-wm.program.shutdown /usr/bin/gnome-session-quit --power-off
bindsym $mod+$i3-wm.binding.shutdown exec $i3-wm.program.shutdown

## Session // Lock Screen // <> Escape ##
set_from_resource $i3-wm.binding.lock i3-wm.binding.lock Escape
set_from_resource $i3-wm.program.lock i3-wm.program.lock dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
bindsym $mod+$i3-wm.binding.lock exec $i3-wm.program.lock

## Session // Sleep // <><Shift> s ##
set_from_resource $i3-wm.binding.sleep i3-wm.binding.sleep Ctrl+s
set_from_resource $i3-wm.program.sleep i3-wm.program.sleep systemctl suspend
bindsym $mod+$i3-wm.binding.sleep exec $i3-wm.program.sleep

###############################################################################
# System Management
###############################################################################

## Modify // Settings // <> c ##
set_from_resource $i3-wm.binding.settings i3-wm.binding.settings c
set_from_resource $i3-wm.program.settings i3-wm.program.settings gnome-control-center --class=floating_window
bindsym $mod+$i3-wm.binding.settings exec $i3-wm.program.settings

## Modify // Display Settings // <> d ##
set_from_resource $i3-wm.binding.display i3-wm.binding.display d
set_from_resource $i3-wm.program.display i3-wm.program.display gnome-control-center --class=floating_window display
bindsym $mod+$i3-wm.binding.display exec $i3-wm.program.display

## Modify // Wifi Settings // <> w ##
set_from_resource $i3-wm.binding.wifi i3-wm.binding.wifi w
set_from_resource $i3-wm.program.wifi i3-wm.program.wifi gnome-control-center --class=floating_window wifi
bindsym $mod+$i3-wm.binding.wifi exec $i3-wm.program.wifi

## Modify // Bluetooth Settings // <> b ##
set_from_resource $i3-wm.binding.bluetooth i3-wm.binding.bluetooth b
set_from_resource $i3-wm.program.bluetooth i3-wm.program.bluetooth gnome-control-center --class=floating_window bluetooth
bindsym $mod+$i3-wm.binding.bluetooth exec $i3-wm.program.bluetooth

## Launch // File Browser // <><Shift> n ##
set_from_resource $i3-wm.binding.files i3-wm.binding.files Shift+n
set_from_resource $i3-wm.program.files i3-wm.program.files /usr/bin/nautilus --new-window
bindsym $mod+$i3-wm.binding.files exec $i3-wm.program.files

## Launch // Notification Viewer // <> n ##
set_from_resource $i3-wm.binding.notification_ui i3-wm.binding.notification_ui n
set_from_resource $i3-wm.program.notification_ui i3-wm.program.notification_ui /usr/bin/rofication-gui
bindsym $mod+$i3-wm.binding.notification_ui exec $i3-wm.program.notification_ui

## Launch // Calendar // <><Shift> c ##
set_from_resource $i3-wm.binding.calendar i3-wm.binding.calendar Shift+c
set_from_resource $i3-wm.program.calendar i3-wm.program.calendar /usr/bin/google-chrome https://calendar.google.com/calendar/u/0/r
bindsym $mod+$i3-wm.binding.calendar exec $i3-wm.program.calendar

###############################################################################
# Workspace Management
###############################################################################

# i3-snapshot for load/save current layout
## Modify // Save Window Layout // <> , ##
set_from_resource $i3-wm.binding.save_layout i3-wm.binding.save_layout comma
bindsym $mod+$i3-wm.binding.save_layout  exec /usr/bin/i3-snapshot -o > /tmp/i3-snapshot
## Modify // Load Window Layout // <> . ##
set_from_resource $i3-wm.binding.load_layout i3-wm.binding.load_layout period
bindsym $mod+$i3-wm.binding.load_layout exec /usr/bin/i3-snapshot -c < /tmp/i3-snapshot

# Toggle bar visibility
## Modify // Toggle Bar // <> i ##
set_from_resource $i3-wm.binding.bar_toggle i3-wm.binding.bar_toggle i
bindsym $mod+$i3-wm.binding.bar_toggle bar mode toggle

# Cause Settings app to float above tiled windows
floating_maximum_size -1 x -1
for_window [class="floating_window"] floating enable
for_window [window_role = "pop-up"] floating enable
for_window [window_role = "bubble"] floating enable
for_window [window_role = "dialog"] floating enable
for_window [window_type = "dialog"] floating enable
for_window [id="evolution-alarm-notify"] floating enable
for_window [class="mpv"] fullscreen disable, floating enable, resize set 300 200, sticky enable, move window to position 11 32
for_window [id="mpv"] floating enable
for_window [id="mpv"] resize set 960 540
for_window [id="mpv"] border pixel 0
for_window [id="firefox" title="Firefox – Sharing Indicator"] floating enable
for_window [id="firefox" title="Picture-in-Picture"] floating enable
for_window [id="firefox" title="Pushbullet – Mozilla Firefox"] floating enable
for_window [id="firefox" title="About Mozilla Firefox"] floating enable
for_window [title="^zoom$"] floating enable


set_from_resource $i3-wm.workspace.auto_back_and_forth i3-wm.workspace.auto_back_and_forth no
workspace_auto_back_and_forth $i3-wm.workspace.auto_back_and_forth

###############################################################################
# Window Resize and Gaps
###############################################################################

set_from_resource $i3-wm.binding.inc_gaps i3-wm.binding.inc_gaps plus
set_from_resource $i3-wm.binding.dec_gaps i3-wm.binding.dec_gaps minus

set_from_resource $i3-wm.binding.inc_gaps_big i3-wm.binding.inc_gaps_big Shift+plus
set_from_resource $i3-wm.binding.dec_gaps_big i3-wm.binding.dec_gaps_big Shift+minus

## Resize // Enter Resize Mode // <> r ##
mode "Resize Mode" {
  # These bindings trigger as soon as you enter the resize mode

  ## Resize // Resize Window // ↑ ↓ ← → ##
  bindsym Left resize shrink width 6 px or 6 ppt
  bindsym Down resize grow height 6 px or 6 ppt
  bindsym Up resize shrink height 6 px or 6 ppt
  bindsym Right resize grow width 6 px or 6 ppt

  bindsym Shift+Left resize shrink width 12 px or 12 ppt
  bindsym Shift+Down resize grow height 12 px or 12 ppt
  bindsym Shift+Up resize shrink height 12 px or 12 ppt
  bindsym Shift+Right resize grow width 12 px or 12 ppt

  ## Resize // Resize Window // k j h l ##
  bindsym $i3-wm.binding.left resize shrink width 1 px or 1 ppt
  bindsym $i3-wm.binding.up resize grow height 1 px or 1 ppt
  bindsym $i3-wm.binding.down resize shrink height 1 px or 1 ppt
  bindsym $i3-wm.binding.right resize grow width 1 px or 1 ppt

  bindsym $i3-wm.binding.move_left resize shrink width 3 px or 3 ppt
  bindsym $i3-wm.binding.move_up resize grow height 3 px or 3 ppt
  bindsym $i3-wm.binding.move_down resize shrink height 3 px or 3 ppt
  bindsym $i3-wm.binding.move_right resize grow width 3 px or 3 ppt

  ## Resize // Window Gaps // + - ##
  bindsym $i3-wm.binding.dec_gaps gaps inner current minus 6
  bindsym $i3-wm.binding.dec_gaps gaps outer current minus 6
  bindsym $i3-wm.binding.inc_gaps gaps inner current plus 6
  bindsym $i3-wm.binding.inc_gaps gaps outer current plus 6
  bindsym $i3-wm.binding.dec_gaps_big gaps inner current minus 12
  bindsym $i3-wm.binding.dec_gaps_big gaps outer current minus 12
  bindsym $i3-wm.binding.inc_gaps_big gaps inner current plus 12
  bindsym $i3-wm.binding.inc_gaps_big gaps outer current plus 12

  ## Resize // Exit Resize Mode // Escape or Enter ##
  bindsym Return mode "default"
  bindsym Escape mode "default"
  bindsym $mod+r mode "default"
}
bindsym $mod+r mode "Resize Mode"

###############################################################################
# i3 Appearance and Behavior
###############################################################################

# Disable titlebar
set_from_resource $i3-wm.window.border.size i3-wm.window.border.size 1
set_from_resource $i3-wm.floatingwindow.border.size i3-wm.floatingwindow.border.size 1
default_border pixel $i3-wm.window.border.size
default_floating_border pixel $i3-wm.floatingwindow.border.size


# Specify the distance between windows in pixels. (i3-gaps)
set_from_resource $i3-wm.gaps.inner.size i3-wm.gaps.inner.size 5
set_from_resource $i3-wm.gaps.outer.size i3-wm.gaps.outer.size 5
gaps inner $i3-wm.gaps.inner.size
gaps outer $i3-wm.gaps.outer.size

# Only enable gaps on a workspace when there is at least one container
set_from_resource $i3-wm.gaps.smart i3-wm.gaps.smart on
smart_gaps $i3-wm.gaps.smart
smart_gaps inverse_outer

# Enable popup during fullscreen
set_from_resource $i3-wm.gaps.popup_during_fullscreen i3-wm.gaps.popup_during_fullscreen smart
popup_during_fullscreen $i3-wm.gaps.popup_during_fullscreen

# window focus follows your mouse movements as the mouse crosses window borders
set_from_resource $i3-wm.gaps.focus_follows_mouse i3-wm.gaps.focus_follows_mouse yes
focus_follows_mouse $i3-wm.gaps.focus_follows_mouse

###############################################################################
# i3 Colors and Fonts
###############################################################################

# Create variables from Xresources for i3's look.

set_from_resource $focused.color.border i3-wm.client.focused.color.border "#002b36"
set_from_resource $focused.color.background i3-wm.client.focused.color.background "#586e75"
set_from_resource $focused.color.text i3-wm.client.focused.color.text "#fdf6e3"
set_from_resource $focused.color.indicator i3-wm.client.focused.color.indicator "#268bd2"
set_from_resource $focused.color.child_border i3-wm.client.focused.color.child_border

set_from_resource $focused_inactive.color.border i3-wm.client.focused_inactive.color.border "#002b36"
set_from_resource $focused_inactive.color.background i3-wm.client.focused_inactive.color.background "#073642"
set_from_resource $focused_inactive.color.text i3-wm.client.focused_inactive.color.text "#839496"
set_from_resource $focused_inactive.color.indicator i3-wm.client.focused_inactive.color.indicator "#073642"
set_from_resource $focused_inactive.color.child_border i3-wm.client.focused_inactive.color.child_border

set_from_resource $unfocused.color.border i3-wm.client.unfocused.color.border "#002b36"
set_from_resource $unfocused.color.background i3-wm.client.unfocused.color.background "#073642"
set_from_resource $unfocused.color.text i3-wm.client.unfocused.color.text "#839496"
set_from_resource $unfocused.color.indicator i3-wm.client.unfocused.color.indicator "#073642"
set_from_resource $unfocused.color.child_border i3-wm.client.unfocused.color.child_border

set_from_resource $urgent.color.border i3-wm.client.urgent.color.border "#002b36"
set_from_resource $urgent.color.background i3-wm.client.urgent.color.background "#dc322f"
set_from_resource $urgent.color.text i3-wm.client.urgent.color.text "#fdf6e3"
set_from_resource $urgent.color.indicator i3-wm.client.urgent.color.indicator "#002b36"
set_from_resource $urgent.color.child_border i3-wm.client.urgent.color.child_border


# Window Border color
# class                 border                             background                         text                               indicator                          child_border
client.focused          $focused.color.border              $focused.color.background          $focused.color.text                $focused.color.indicator           $focused.color.child_border
client.focused_inactive $focused_inactive.color.border     $focused_inactive.color.background $focused_inactive.color.text       $focused_inactive.color.indicator  $focused_inactive.color.child_border
client.unfocused        $unfocused.color.border            $unfocused.color.background        $unfocused.color.text              $unfocused.color.indicator         $unfocused.color.child_border
client.urgent           $urgent.color.border               $urgent.color.background           $urgent.color.text                 $urgent.color.indicator            $urgent.color.child_border

#set_from_resource $i3-wm.bar.background.color i3-wm.bar.background.color "#00000000"
set_from_resource $i3-wm.bar.statusline.color i3-wm.bar.statusline.color "#00000000"
set_from_resource $i3-wm.bar.separator.color i3-wm.bar.separator.color "#00000000"

set_from_resource $i3-wm.bar.workspace.focused.border.color i3-wm.bar.workspace.focused.border.color "#073642"
set_from_resource $i3-wm.bar.workspace.focused.background.color i3-wm.bar.workspace.focused.background.color "#073642"
set_from_resource $i3-wm.bar.workspace.focused.text.color i3-wm.bar.workspace.focused.text.color "#eee8d5"

set_from_resource $i3-wm.bar.workspace.active.border.color i3-wm.bar.workspace.active.border.color "#073642"
set_from_resource $i3-wm.bar.workspace.active.background.color i3-wm.bar.workspace.active.background.color "#073642"
set_from_resource $i3-wm.bar.workspace.active.text.color i3-wm.bar.workspace.active.text.color "#586e75"

set_from_resource $i3-wm.bar.workspace.inactive.border.color i3-wm.bar.workspace.inactive.border.color "#002b36"
set_from_resource $i3-wm.bar.workspace.inactive.background.color i3-wm.bar.workspace.inactive.background.color "#002b36"
set_from_resource $i3-wm.bar.workspace.inactive.text.color i3-wm.bar.workspace.inactive.text.color "#586e75"

set_from_resource $i3-wm.bar.workspace.urgent.border.color i3-wm.bar.workspace.urgent.border.color "#dc322f"
set_from_resource $i3-wm.bar.workspace.urgent.background.color i3-wm.bar.workspace.urgent.background.color "#dc322f"
set_from_resource $i3-wm.bar.workspace.urgent.text.color i3-wm.bar.workspace.urgent.text.color "#fdf6e3"

# Sets i3 font for dialogs
set_from_resource $i3-wm.font i3-wm.font pango:Source Code Pro Medium 13
font $i3-wm.font

###############################################################################
# i3 Bar
###############################################################################

set_from_resource $i3-wm.bar.position i3-wm.bar.position bottom
set_from_resource $i3-wm.bar.font i3-wm.bar.font pango:Source Code Pro Medium 13, Material Design Icons 13
set_from_resource $i3-wm.bar.separator i3-wm.bar.separator " "
set_from_resource $i3-wm.bar.trayoutput i3-wm.bar.trayoutput primary
set_from_resource $i3-wm.bar.stripworkspacenumbers i3-wm.bar.stripworkspacenumbers yes
set_from_resource $i3-wm.bar.mode i3-wm.bar.mode dock

# i3xrocks config file. Override this for a custom status bar generator.
set_from_resource $i3-wm.bar.status_command i3-wm.bar.status_command i3xrocks -u ~/.config/regolith/i3xrocks/conf.d -d /etc/regolith/i3xrocks/conf.d

# The bar configuration
bar {
  i3bar_command i3bar -t
  position $i3-wm.bar.position
  mode $i3-wm.bar.mode
  font $i3-wm.bar.font
  separator_symbol $i3-wm.bar.separator
  status_command $i3-wm.bar.status_command
  tray_output $i3-wm.bar.trayoutput
  strip_workspace_numbers $i3-wm.bar.stripworkspacenumbers

  colors {
      background #00000000
      statusline $i3-wm.bar.statusline.color
      separator  $i3-wm.bar.separator.color

#                        BORDER                                         BACKGROUND                                      TEXT
      focused_workspace  $i3-wm.bar.workspace.focused.border.color      $i3-wm.bar.workspace.focused.background.color   $i3-wm.bar.workspace.focused.text.color
      active_workspace   $i3-wm.bar.workspace.active.border.color       $i3-wm.bar.workspace.active.background.color    $i3-wm.bar.workspace.active.text.color
      inactive_workspace $i3-wm.bar.workspace.inactive.border.color     $i3-wm.bar.workspace.inactive.background.color  $i3-wm.bar.workspace.inactive.text.color
      urgent_workspace   $i3-wm.bar.workspace.urgent.border.color       $i3-wm.bar.workspace.urgent.background.color    $i3-wm.bar.workspace.urgent.text.color
  }
}

###############################################################################
# External programs launched with i3
###############################################################################

# Start the installed regolith-compositor
set_from_resource $i3-wm.program.compositor i3-wm.program.compositor /usr/share/regolith-compositor/init
exec_always --no-startup-id $i3-wm.program.compositor

# Start Rofication for notifications
set_from_resource $i3-wm.program.notifications i3-wm.program.notifications /usr/bin/rofication-daemon
exec --no-startup-id $i3-wm.program.notifications

# Launch first time user experience script
set_from_resource $i3-wm.program.ftui i3-wm.program.ftui /usr/bin/regolith-ftue
exec --no-startup-id $i3-wm.program.ftui

# Hide the mouse pointer if unused for a duration
set_from_resource $i3-wm.program.unclutter i3-wm.program.unclutter /usr/bin/unclutter -b
exec --no-startup-id $i3-wm.program.unclutter

# Load nm-applet to provide auth dialogs for network access
set_from_resource $i3-wm.program.nm-applet i3-wm.program.nm-applet /usr/bin/nm-applet
exec --no-startup-id $i3-wm.program.nm-applet

# User programs from Xresources
# To use, define an Xresource key i3-wm.program.[1-3] with the value of the program to launch.
# See https://regolith-linux.org/docs/howto/override-xres/ for details.
set_from_resource $i3-wm.program.1 i3-wm.program.1 :
exec --no-startup-id $i3-wm.program.1
set_from_resource $i3-wm.program.2 i3-wm.program.2 :
exec --no-startup-id $i3-wm.program.2
set_from_resource $i3-wm.program.3 i3-wm.program.3 :
exec --no-startup-id $i3-wm.program.3

Extra Keybindings

###############################################################################
# Custom Key Mappings
###############################################################################

# Used with [td-cli](https://pypi.org/project/td-cli/)
bindsym $mod+Shift+o exec alacritty -t 'alacritty-floating' -e td --interactive

# Used with [RONO - Rofi Notes](https://github.com/christianholman/rofi_notes)
bindsym $mod+s exec rofi_notes.sh -a 'Daniel Tompkins' -e 'nvim' -l "AirlineTheme ayu_mirage" -o "$HOME/.scratch/"
bindsym $mod+Shift+s exec alacritty -t 'alacritty-floating' -e nvim -c "AirlineTheme ayu_mirage | startinsert" scratchpad
for_window [title="^alacritty-floating$"] floating enable, move position center

# Requires [Screen Message](https://packages.debian.org/sid/sm) package
bindsym $mod+Ctrl+o exec sm _ --foreground="#c02907" --background="#222222" -n "NotoSans NF" -a 0

# Blank i3 window for resizing
bindsym $mod+Shift+i exec i3-msg open

# My YouTube / PnP shortcut
bindsym $mod+y fullscreen disable; floating enable; resize set 300 200; sticky enable; move window to position 11 32

## Launch // Emoji // <Ctrl> Space ##
set_from_resource $i3-wm.program.launcher.emoji i3-wm.program.launcher.emoji rofi -show emoji -modi emoji -theme $rofiTheme
bindsym Ctrl+space exec $i3-wm.program.launcher.emoji

/etc/regolith/styles//i3-wm

i3 Variables

#define Q(x) #x
#define QUOTE(x) Q(x)

#define glyph typeface_bar_glyph_workspace

i3-wm.font: typeface_wm
i3-wm.bar.font: typeface_bar

i3-wm.bar.position: i3wm_bar_position
i3-wm.bar.background.color: color_base03
i3-wm.bar.statusline.color: color_base1
i3-wm.bar.separator.color: color_blue
i3-wm.bar.workspace.focused.border.color: color_orange
i3-wm.bar.workspace.focused.background.color: color_orange
i3-wm.bar.workspace.focused.text.color: color_base03
i3-wm.bar.workspace.active.border.color: color_corange
i3-wm.bar.workspace.active.background.color: color_orange
i3-wm.bar.workspace.active.text.color: color_base02
i3-wm.bar.workspace.inactive.border.color: #00000033
i3-wm.bar.workspace.inactive.background.color: #00000033
i3-wm.bar.workspace.inactive.text.color: #ffffff
i3-wm.bar.workspace.urgent.border.color: color_red
i3-wm.bar.workspace.urgent.background.color: color_red
i3-wm.bar.workspace.urgent.text.color: color_base3

i3-wm.client.focused.color.border: color_base03
i3-wm.client.focused.color.background: color_base01
i3-wm.client.focused.color.text: color_base3
i3-wm.client.focused.color.indicator: color_blue
i3-wm.client.focused.color.child_border: color_orange

i3-wm.client.focused_inactive.color.border: color_base03
i3-wm.client.focused_inactive.color.background: color_base02
i3-wm.client.focused_inactive.color.text: color_base0
i3-wm.client.focused_inactive.color.indicator: color_base02
i3-wm.client.focused_inactive.color.child_border: color_base03

i3-wm.client.unfocused.color.border: color_base03
i3-wm.client.unfocused.color.background: color_base02
i3-wm.client.unfocused.color.text: color_base0
i3-wm.client.unfocused.color.indicator: color_base02
i3-wm.client.unfocused.color.child_border: color_base03

i3-wm.client.urgent.color.border: color_base03
i3-wm.client.urgent.color.background: color_red
i3-wm.client.urgent.color.text: color_base3
i3-wm.client.urgent.color.indicator: color_red
i3-wm.client.urgent.color.child_border: color_base03

i3-wm.window.border.size: i3wm_window_border_size
i3-wm.floatingwindow.border.size: i3wm_floatingwindow_border_size
i3-wm.gaps.inner.size: i3wm_gaps_inner_size
i3-wm.gaps.outer.size: i3wm_gaps_outer_size

#define glyph_font QUOTE(typeface_bar_glyph)

#define WORKSPACE_NAME(INDEX, FONT, COLOR, GLYPH) INDEX:<span font_desc=FONT> INDEX </span>

i3-wm.workspace.01.name: WORKSPACE_NAME(1, glyph_font, QUOTE(color_blue), glyph)
i3-wm.workspace.02.name: WORKSPACE_NAME(2, glyph_font, QUOTE(color_cyan), glyph)
i3-wm.workspace.03.name: WORKSPACE_NAME(3, glyph_font, QUOTE(color_green), glyph)
i3-wm.workspace.04.name: WORKSPACE_NAME(4, glyph_font, QUOTE(color_yellow), glyph)
i3-wm.workspace.05.name: WORKSPACE_NAME(5, glyph_font, QUOTE(color_orange), glyph)
i3-wm.workspace.06.name: WORKSPACE_NAME(6, glyph_font, QUOTE(color_red), glyph)
i3-wm.workspace.07.name: WORKSPACE_NAME(7, glyph_font, QUOTE(color_magenta), glyph)
i3-wm.workspace.08.name: WORKSPACE_NAME(8, glyph_font, QUOTE(color_violet), glyph)
i3-wm.workspace.09.name: WORKSPACE_NAME(9, glyph_font, QUOTE(color_base1), glyph)
i3-wm.workspace.10.name: WORKSPACE_NAME(10, glyph_font, QUOTE(color_blue), glyph)
i3-wm.workspace.11.name: WORKSPACE_NAME(11, glyph_font, QUOTE(color_cyan), glyph)
i3-wm.workspace.12.name: WORKSPACE_NAME(12, glyph_font, QUOTE(color_green), glyph)
i3-wm.workspace.13.name: WORKSPACE_NAME(13, glyph_font, QUOTE(color_yellow), glyph)
i3-wm.workspace.14.name: WORKSPACE_NAME(14, glyph_font, QUOTE(color_orange), glyph)
i3-wm.workspace.15.name: WORKSPACE_NAME(15, glyph_font, QUOTE(color_red), glyph)
i3-wm.workspace.16.name: WORKSPACE_NAME(16, glyph_font, QUOTE(color_magenta), glyph)
i3-wm.workspace.17.name: WORKSPACE_NAME(17, glyph_font, QUOTE(color_violet), glyph)
i3-wm.workspace.18.name: WORKSPACE_NAME(18, glyph_font, QUOTE(color_base1), glyph)
i3-wm.workspace.19.name: WORKSPACE_NAME(19, glyph_font, QUOTE(color_blue), glyph)

/etc/regolith/styles//theme

GTK Variables + i3 master controls

#define gtk_theme            Sweet-Dark
#define icon_theme           Paper
#define desktop_wallpaper    /home/dan/Pictures/bitmap_tokyo.jpg
#define rofi_theme           /etc/regolith/styles/lascaille/rofi.rasi
#define theme_terminal_scrollbar never

#define i3wm_window_border_size         1
#define i3wm_floatingwindow_border_size 1
#define i3wm_gaps_inner_size            10
#define i3wm_gaps_outer_size            0
#define i3wm_bar_position               top

Todo List - td-cli

Another favorite tool, shipped natively with Regolith Linux, is the Python-based todo-list application td-cli. It fits really nicely into the i3 workflow and combines nicely with Rofi and some of its utility.

I like to make the following tweaks:

  1. Change the i3xblock icon to something classier.
  1. Change the glyphs used in td-cli --interactive