Skip to content

Instantly share code, notes, and snippets.

@lurdan
Created May 29, 2023 07:34
Show Gist options
  • Save lurdan/70d3132793504ba6a4bd80d109039361 to your computer and use it in GitHub Desktop.
Save lurdan/70d3132793504ba6a4bd80d109039361 to your computer and use it in GitHub Desktop.
GlazeWM config
gaps:
inner_gap: 1
outer_gap: 0
general:
# Whether to show floating windows as always on top.
show_floating_on_top: false
bar:
height: "25px"
position: "top"
opacity: 1.0
background: "#20242cc4"
foreground: "#ffffff"
font_family: "NasuM"
font_size: "13px"
padding: "2px 3px"
offset_x: "0"
offset_y: "0"
border_radius: "0"
components_left:
- type: "workspaces"
focused_workspace_background: "#ffffff33"
displayed_workspace_background: "#00000033"
default_workspace_background: "transparent"
components_center:
- type: "window title"
components_right:
- type: "tiling direction"
label_horizontal: ""
label_vertical: ""
background: "#ffffff33"
margin: "0 4px"
padding: "0 8px"
- type: "binding mode"
background: "#ffffff33"
margin: "0 4px 0 0"
padding: "0 8px"
- type: "clock"
# Documentation on formatting date/time string:
# https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings
time_formatting: "HH:mm tt MM/dd (ddd)"
margin: "0 0 0 10px"
workspaces:
- name: "1"
- name: "2"
- name: "3"
- name: "4"
- name: "5"
- name: "6"
- name: "7"
- name: "8"
- name: "9"
window_rules:
# Task Manager requires admin privileges to manage and should be ignored unless running
# the WM as admin.
- command: "ignore"
match_process_name: "Taskmgr"
- command: "ignore"
match_process_name: "regedit"
# Launches system dialogs as floating by default (eg. File Explorer save/open dialog).
- command: "set floating"
match_class_name: "#32770"
# Some applications (eg. Steam) have borders that extend past the normal border size.
- command: "resize borders 0px -7px -7px -7px"
match_process_name: "steam"
binding_modes:
- name: "resize"
keybindings:
# Resize focused window by a percentage or pixel amount.
- command: "resize width -2%"
bindings: ["H", "Left"]
- command: "resize width +2%"
bindings: ["L", "Right"]
- command: "resize height +2%"
bindings: ["K", "Up"]
- command: "resize height -2%"
bindings: ["J", "Down"]
# Press enter/escape to return to default keybindings.
- command: "binding mode none"
bindings: ["Escape", "Enter"]
keybindings:
# Shift focus in a given direction.
- command: "focus left"
bindings: ["Alt+H", "Alt+Left"]
- command: "focus right"
bindings: ["Alt+L", "Alt+Right"]
- command: "focus up"
bindings: ["Alt+K", "Alt+Up"]
- command: "focus down"
bindings: ["Alt+J", "Alt+Down"]
# Move focused window in a given direction.
- command: "move left"
bindings: ["Alt+Shift+H", "Alt+Shift+Left"]
- command: "move right"
bindings: ["Alt+Shift+L", "Alt+Shift+Right"]
- command: "move up"
bindings: ["Alt+Shift+K", "Alt+Shift+Up"]
- command: "move down"
bindings: ["Alt+Shift+J", "Alt+Shift+Down"]
# Resize focused window by a percentage or pixel amount.
# - command: "resize width -2%"
# binding: "Alt+U"
# - command: "resize width +2%"
# binding: "Alt+P"
# - command: "resize height +2%"
# binding: "Alt+O"
# - command: "resize height -2%"
# binding: "Alt+I"
# As an alternative to the resize keybindings above, resize mode enables resizing via
# HJKL or arrow keys. The binding mode is defined above with the name "resize".
- command: "binding mode resize"
binding: "LWin+R"
# Change tiling direction. This determines where new tiling windows will be inserted.
# - command: "tiling direction toggle"
# binding: "Alt+V"
- command: "layout horizontal"
binding: "LWin+V"
- command: "layout vertical"
binding: "LWin+Shift+V"
# Change focus between floating / tiling windows.
- command: "focus mode toggle"
binding: "Alt+Space"
# Change the focused window to be floating / tiling.
- command: "toggle floating"
binding: "Alt+Shift+Space"
# Change the focused window to be maximized / unmaximized.
- command: "toggle maximized"
binding: "LWin+X"
# Minimize focused window.
- command: "set minimized"
binding: "LWin+M"
# Close focused window.
- command: "close"
binding: "LWin+Q"
# Kill GlazeWM process safely.
- command: "exit wm"
binding: "LWin+Shift+Q"
# Re-evaluate configuration file.
- command: "reload config"
binding: "LWin+Shift+R"
# Launch CMD terminal (alternatively `exec wt` or `exec %ProgramFiles%/Git/git-bash.exe`
# to start Windows Terminal and Git Bash respectively.
- command: "exec wt"
binding: "LWin+Enter"
# Focus the workspace that last had focus.
# - command: "focus workspace recent"
# binding: "Alt+Y"
# Focus the next/previous workspace defined in `workspaces` config.
# - command: "focus workspace next"
# binding: "Alt+T"
# - command: "focus workspace prev"
# binding: "Alt+Shift+T"
# Change focus to a workspace defined in `workspaces` config.
- command: "focus workspace 1"
binding: "LWin+1"
- command: "focus workspace 2"
binding: "LWin+2"
- command: "focus workspace 3"
binding: "LWin+3"
- command: "focus workspace 4"
binding: "LWin+4"
- command: "focus workspace 5"
binding: "LWin+5"
- command: "focus workspace 6"
binding: "LWin+6"
- command: "focus workspace 7"
binding: "LWin+7"
- command: "focus workspace 8"
binding: "LWin+8"
- command: "focus workspace 9"
binding: "LWin+9"
# Move focused workspace to a monitor in a given direction.
- command: "move workspace left"
binding: "LWin+Alt+A"
- command: "move workspace right"
binding: "LWin+Alt+D"
- command: "move workspace up"
binding: "LWin+Alt+W"
- command: "move workspace down"
binding: "LWin+Alt+S"
# Move focused window to a workspace defined in `workspaces` config.
# - commands: ["move to workspace 1", "focus workspace 1"]
# binding: "LWin+Shift+1"
# - commands: ["move to workspace 2", "focus workspace 2"]
# binding: "LWin+Shift+2"
# - commands: ["move to workspace 3", "focus workspace 3"]
# binding: "LWin+Shift+3"
# - commands: ["move to workspace 4", "focus workspace 4"]
# binding: "LWin+Shift+4"
# - commands: ["move to workspace 5", "focus workspace 5"]
# binding: "LWin+Shift+5"
# - commands: ["move to workspace 6", "focus workspace 6"]
# binding: "LWin+Shift+6"
# - commands: ["move to workspace 7", "focus workspace 7"]
# binding: "LWin+Shift+7"
# - commands: ["move to workspace 8", "focus workspace 8"]
# binding: "LWin+Shift+8"
# - commands: ["move to workspace 9", "focus workspace 9"]
# binding: "LWin+Shift+9"
- commands: ["move to workspace 1"]
binding: "LWin+Shift+1"
- commands: ["move to workspace 2"]
binding: "LWin+Shift+2"
- commands: ["move to workspace 3"]
binding: "LWin+Shift+3"
- commands: ["move to workspace 4"]
binding: "LWin+Shift+4"
- commands: ["move to workspace 5"]
binding: "LWin+Shift+5"
- commands: ["move to workspace 6"]
binding: "LWin+Shift+6"
- commands: ["move to workspace 7"]
binding: "LWin+Shift+7"
- commands: ["move to workspace 8"]
binding: "LWin+Shift+8"
- commands: ["move to workspace 9"]
binding: "LWin+Shift+9"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment