bal_gennady

GlazeWM-config-example

Sep 29th, 2025
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 11.09 KB | Software | 0 0
  1. general:
  2.  # Команды, запускаемые при запуске WM. Это полезно для запуска
  3.   #   скрипта или другого приложения.
  4.   # Example: The below command launches Zebar.
  5.   startup_commands: []
  6.  
  7.   # Команды, которые следует выполнить непосредственно перед
  8.   #   завершением работы WM.
  9.   # Example: The below command kills Zebar.
  10.   shutdown_commands: []
  11.  
  12.   # Команды, которые необходимо запустить после перезагрузки
  13.   #   конфигурации WM.
  14.   config_reload_commands: []
  15.  
  16.   # Следует ли автоматически фокусировать окна под курсором.
  17.   focus_follows_cursor: false
  18.  
  19.   # Следует ли переключаться между ранее сфокусированным рабочим
  20.   #   пространством при фокусировке на текущем рабочем пространстве.
  21.   toggle_workspace_on_refocus: false
  22.  
  23.   cursor_jump:
  24.    # Следует ли автоматически перемещать курсор на указанный триггер.
  25.     enabled: true
  26.  
  27.     # Триггер для перехода курсора:
  28.     # - 'monitor_focus': Переход при смене фокуса между мониторами.
  29.     # - 'window_focus': Переход при смене фокуса между окнами.
  30.     trigger: 'monitor_focus'
  31.  
  32.   # How windows should be hidden when switching workspaces.
  33.   # - 'cloak': Recommended. Hides windows with no animation.
  34.   # - 'hide': Legacy method (v3.5 and earlier) that has a brief animation,
  35.   # but has stability issues with some apps.
  36.   hide_method: 'cloak'
  37.  
  38.   # Affects which windows get shown in the native Windows taskbar. Has no
  39.   # effect if `hide_method: 'hide'`.
  40.   # - 'true': Show all windows (regardless of workspace).
  41.   # - 'false': Only show windows from the currently shown workspaces.
  42.   show_all_in_taskbar: false
  43.  
  44. gaps:
  45.  # Whether to scale the gaps with the DPI of the monitor.
  46.   scale_with_dpi: true
  47.  
  48.   # Gap between adjacent windows.
  49.   inner_gap: '10px'
  50.  
  51.   # Gap between windows and the screen edge.
  52.   outer_gap:
  53.     top: '6px'
  54.     right: '6x'
  55.     bottom: '6px'
  56.     left: '6px'
  57.  
  58. window_effects:
  59.  # Visual effects to apply to the focused window.
  60.   focused_window:
  61.    # Highlight the window with a colored border.
  62.     # ** Exclusive to Windows 11 due to API limitations.
  63.     border:
  64.       enabled: true
  65.       color: '#8dbcff'
  66.  
  67.     # Remove the title bar from the window's frame. Note that this can
  68.     # cause rendering issues for some applications.
  69.     hide_title_bar:
  70.       enabled: false
  71.  
  72.     # Change the corner style of the window's frame.
  73.     # ** Exclusive to Windows 11 due to API limitations.
  74.     corner_style:
  75.       enabled: false
  76.       # Allowed values: 'square', 'rounded', 'small_rounded'.
  77.       style: 'square'
  78.  
  79.     # Change the transparency of the window.
  80.     transparency:
  81.       enabled: false
  82.       # Can be something like '95%' or '0.95' for slightly transparent windows.
  83.       # '0' or '0%' is fully transparent (and, by consequence, unfocusable).
  84.       opacity: '95%'
  85.  
  86.   # Visual effects to apply to non-focused windows.
  87.   other_windows:
  88.     border:
  89.       enabled: true
  90.       color: '#a1a1a1'
  91.     hide_title_bar:
  92.       enabled: false
  93.     corner_style:
  94.       enabled: false
  95.       style: 'square'
  96.     transparency:
  97.       enabled: true
  98.       opacity: '90%'
  99.  
  100. window_behavior:
  101.  # New windows are created in this state whenever possible.
  102.   # Allowed values: 'tiling', 'floating'.
  103.   initial_state: 'tiling'
  104.  
  105.   # Sets the default options for when a new window is created. This also
  106.   # changes the defaults for when the state change commands, like
  107.   # `set-floating`, are used without any flags.
  108.   state_defaults:
  109.     floating:
  110.      # Whether to center floating windows by default.
  111.       centered: true
  112.  
  113.       # Whether to show floating windows as always on top.
  114.       shown_on_top: false
  115.  
  116.     fullscreen:
  117.      # Maximize the window if possible. If the window doesn't have a
  118.       # maximize button, then it'll be fullscreen'ed normally instead.
  119.       maximized: false
  120.  
  121.       # Whether to show fullscreen windows as always on top.
  122.       shown_on_top: false
  123.  
  124. workspaces:
  125.   - name: '1'
  126.   - name: '2'
  127.   - name: '3'
  128.   - name: '4'
  129.   - name: '5'
  130.   - name: '6'
  131.   - name: '7'
  132.   - name: '8'
  133.   - name: '9'
  134.  
  135. window_rules:
  136.   - commands: ['ignore']
  137.     match:
  138.      # Ignores any Zebar windows.
  139.       - window_process: { equals: 'zebar' }
  140.  
  141.       # Ignores picture-in-picture windows for browsers.
  142.       - window_title: { regex: '[Pp]icture.in.[Pp]icture' }
  143.         window_class: { regex: 'Chrome_WidgetWin_1|MozillaDialogClass' }
  144.  
  145.       # Ignore rules for various 3rd-party apps.
  146.       - window_process: { equals: 'PowerToys' }
  147.         window_class: { regex: 'HwndWrapper\[PowerToys\.PowerAccent.*?\]' }
  148.       - window_process: { equals: 'PowerToys' }
  149.         window_title: { regex: '.*? - Peek' }
  150.       - window_process: { equals: 'Lively' }
  151.         window_class: { regex: 'HwndWrapper' }
  152.       - window_process: { equals: 'EXCEL' }
  153.         window_class: { not_regex: 'XLMAIN' }
  154.       - window_process: { equals: 'WINWORD' }
  155.         window_class: { not_regex: 'OpusApp' }
  156.       - window_process: { equals: 'POWERPNT' }
  157.         window_class: { not_regex: 'PPTFrameClass' }
  158.  
  159. binding_modes:
  160.  # When enabled, the focused window can be resized via arrow keys or HJKL.
  161.   - name: 'resize'
  162.     keybindings:
  163.       - commands: ['resize --width -2%']
  164.         bindings: ['h', 'left']
  165.       - commands: ['resize --width +2%']
  166.         bindings: ['l', 'right']
  167.       - commands: ['resize --height +2%']
  168.         bindings: ['k', 'up']
  169.       - commands: ['resize --height -2%']
  170.         bindings: ['j', 'down']
  171.       # Press enter/escape to return to default keybindings.
  172.       - commands: ['wm-disable-binding-mode --name resize']
  173.         bindings: ['escape', 'enter']
  174.  
  175. keybindings:
  176.  # Shift focus in a given direction.
  177.   - commands: ['focus --direction left']
  178.     bindings: ['alt+h', 'alt+left']
  179.   - commands: ['focus --direction right']
  180.     bindings: ['alt+l', 'alt+right']
  181.   - commands: ['focus --direction up']
  182.     bindings: ['alt+k', 'alt+up']
  183.   - commands: ['focus --direction down']
  184.     bindings: ['alt+j', 'alt+down']
  185.  
  186.   # Move focused window in a given direction.
  187.   - commands: ['move --direction left']
  188.     bindings: ['alt+shift+h', 'alt+shift+left']
  189.   - commands: ['move --direction right']
  190.     bindings: ['alt+shift+l', 'alt+shift+right']
  191.   - commands: ['move --direction up']
  192.     bindings: ['alt+shift+k', 'alt+shift+up']
  193.   - commands: ['move --direction down']
  194.     bindings: ['alt+shift+j', 'alt+shift+down']
  195.  
  196.   # Resize focused window by a percentage or pixel amount.
  197.   - commands: ['resize --width -2%']
  198.     bindings: ['alt+u']
  199.   - commands: ['resize --width +2%']
  200.     bindings: ['alt+p']
  201.   - commands: ['resize --height +2%']
  202.     bindings: ['alt+o']
  203.   - commands: ['resize --height -2%']
  204.     bindings: ['alt+i']
  205.  
  206.   # As an alternative to the resize keybindings above, resize mode enables
  207.   # resizing via arrow keys or HJKL. The binding mode is defined above with
  208.   # the name 'resize'.
  209.   - commands: ['wm-enable-binding-mode --name resize']
  210.     bindings: ['alt+r']
  211.  
  212.   # Disables window management and all other keybindings until alt+shift+p
  213.   # is pressed again.
  214.   - commands: ['wm-toggle-pause']
  215.     bindings: ['alt+shift+p']
  216.  
  217.   # Change tiling direction. This determines where new tiling windows will
  218.   # be inserted.
  219.   - commands: ['toggle-tiling-direction']
  220.     bindings: ['alt+v']
  221.  
  222.   # Change focus from tiling windows -> floating -> fullscreen.
  223.   - commands: ['wm-cycle-focus']
  224.     bindings: ['alt+space']
  225.  
  226.   # Change the focused window to be floating.
  227.   - commands: ['toggle-floating --centered']
  228.     bindings: ['alt+shift+space']
  229.  
  230.   # Change the focused window to be tiling.
  231.   - commands: ['toggle-tiling']
  232.     bindings: ['alt+t']
  233.  
  234.   # Change the focused window to be fullscreen.
  235.   - commands: ['toggle-fullscreen']
  236.     bindings: ['alt+f']
  237.  
  238.   # Minimize focused window.
  239.   - commands: ['toggle-minimized']
  240.     bindings: ['alt+m']
  241.  
  242.   # Close focused window.
  243.   - commands: ['close']
  244.     bindings: ['alt+shift+q']
  245.  
  246.   # Kill GlazeWM process safely.
  247.   - commands: ['wm-exit']
  248.     bindings: ['alt+shift+e']
  249.  
  250.   # Re-evaluate configuration file.
  251.   - commands: ['wm-reload-config']
  252.     bindings: ['alt+shift+r']
  253.  
  254.   # Redraw all windows.
  255.   - commands: ['wm-redraw']
  256.     bindings: ['alt+shift+w']
  257.  
  258.   # Launch CMD terminal. Alternatively, use `shell-exec wt` or
  259.   # `shell-exec %ProgramFiles%/Git/git-bash.exe` to start Windows
  260.   # Terminal and Git Bash respectively.
  261.   - commands: ['shell-exec wt']
  262.     bindings: ['alt+enter']
  263.  
  264.   # Focus the next/previous active workspace defined in `workspaces` config.
  265.   - commands: ['focus --next-active-workspace']
  266.     bindings: ['alt+s']
  267.   - commands: ['focus --prev-active-workspace']
  268.     bindings: ['alt+a']
  269.  
  270.   # Focus the workspace that last had focus.
  271.   - commands: ['focus --recent-workspace']
  272.     bindings: ['alt+d']
  273.  
  274.   # Change focus to a workspace defined in `workspaces` config.
  275.   - commands: ['focus --workspace 1']
  276.     bindings: ['alt+1']
  277.   - commands: ['focus --workspace 2']
  278.     bindings: ['alt+2']
  279.   - commands: ['focus --workspace 3']
  280.     bindings: ['alt+3']
  281.   - commands: ['focus --workspace 4']
  282.     bindings: ['alt+4']
  283.   - commands: ['focus --workspace 5']
  284.     bindings: ['alt+5']
  285.   - commands: ['focus --workspace 6']
  286.     bindings: ['alt+6']
  287.   - commands: ['focus --workspace 7']
  288.     bindings: ['alt+7']
  289.   - commands: ['focus --workspace 8']
  290.     bindings: ['alt+8']
  291.   - commands: ['focus --workspace 9']
  292.     bindings: ['alt+9']
  293.  
  294.   # Move the focused window's parent workspace to a monitor in a given
  295.   # direction.
  296.   - commands: ['move-workspace --direction left']
  297.     bindings: ['alt+shift+a']
  298.   - commands: ['move-workspace --direction right']
  299.     bindings: ['alt+shift+f']
  300.   - commands: ['move-workspace --direction up']
  301.     bindings: ['alt+shift+d']
  302.   - commands: ['move-workspace --direction down']
  303.     bindings: ['alt+shift+s']
  304.  
  305.   # Move focused window to a workspace defined in `workspaces` config.
  306.   - commands: ['move --workspace 1', 'focus --workspace 1']
  307.     bindings: ['alt+shift+1']
  308.   - commands: ['move --workspace 2', 'focus --workspace 2']
  309.     bindings: ['alt+shift+2']
  310.   - commands: ['move --workspace 3', 'focus --workspace 3']
  311.     bindings: ['alt+shift+3']
  312.   - commands: ['move --workspace 4', 'focus --workspace 4']
  313.     bindings: ['alt+shift+4']
  314.   - commands: ['move --workspace 5', 'focus --workspace 5']
  315.     bindings: ['alt+shift+5']
  316.   - commands: ['move --workspace 6', 'focus --workspace 6']
  317.     bindings: ['alt+shift+6']
  318.   - commands: ['move --workspace 7', 'focus --workspace 7']
  319.     bindings: ['alt+shift+7']
  320.   - commands: ['move --workspace 8', 'focus --workspace 8']
  321.     bindings: ['alt+shift+8']
  322.   - commands: ['move --workspace 9', 'focus --workspace 9']
  323.     bindings: ['alt+shift+9']
Tags: dotfile
Add Comment
Please, Sign In to add comment