Prepend 'us' to kb_layout when non-Latin layout is set
Choosing a non-Latin layout (e.g. ara, il, ru) via /etc/vconsole.conf leaves Hyprland unable to match Omarchy's Latin-keysym bindings, since Hyprland resolves bindings against the first layout in kb_layout only. Prepending 'us' when the detected layout doesn't already include it keeps shortcuts reachable, and activating grp:alts_toggle lets the user switch to their layout with Left Alt + Right Alt.
This commit is contained in:
committed by
David Heinemeier Hansson
parent
d3fdaca1a9
commit
b018719338
+15
-3
@@ -23,12 +23,24 @@ end
|
|||||||
|
|
||||||
local vconsole = read_vconsole()
|
local vconsole = read_vconsole()
|
||||||
|
|
||||||
|
local layout = vconsole.XKBLAYOUT or "us"
|
||||||
|
local variant = vconsole.XKBVARIANT or ""
|
||||||
|
local kb_options = "compose:caps,shift:both_capslock"
|
||||||
|
|
||||||
|
-- Prepend 'us' so Omarchy's Latin-keysym bindings resolve — Hyprland matches
|
||||||
|
-- bindings against the first layout in kb_layout, not the currently active one.
|
||||||
|
if not (","..layout..","):find(",us,", 1, true) then
|
||||||
|
layout = "us," .. layout
|
||||||
|
variant = "," .. variant
|
||||||
|
kb_options = kb_options .. ",grp:alts_toggle"
|
||||||
|
end
|
||||||
|
|
||||||
hl.config({
|
hl.config({
|
||||||
input = {
|
input = {
|
||||||
kb_layout = vconsole.XKBLAYOUT or "us",
|
kb_layout = layout,
|
||||||
kb_variant = vconsole.XKBVARIANT or "",
|
kb_variant = variant,
|
||||||
kb_model = "",
|
kb_model = "",
|
||||||
kb_options = "compose:caps,shift:both_capslock",
|
kb_options = kb_options,
|
||||||
kb_rules = "",
|
kb_rules = "",
|
||||||
follow_mouse = 1,
|
follow_mouse = 1,
|
||||||
sensitivity = 0,
|
sensitivity = 0,
|
||||||
|
|||||||
Reference in New Issue
Block a user