4.6 KiB
Keyboard, Mouse, Trackpad
Hyprland lets you configure all your inputs in great detail. You can change the keyboard repeat to be supersonically fast or make the trackpad use natural scrolling. You change all of it in ~/.config/hypr/input.lua, which you can also reach via Setup > Input in the Omarchy menu (Super + Space). Anything you set there replaces Omarchy's defaults.
Here's an example:
hl.config({
input = {
-- Use multiple keyboard layouts and switch between them with Left Alt + Right Alt
kb_layout = "us,dk",
kb_options = "compose:caps,shift:both_capslock_cancel,grp:alts_toggle",
-- Change speed of keyboard repeat
repeat_rate = 40,
repeat_delay = 600,
-- Increase sensitivity for mouse/trackpad (default: 0)
sensitivity = 0.35,
touchpad = {
-- Use natural (inverse) scrolling
natural_scroll = true,
-- Use two-finger clicks for right-click instead of lower-right corner
clickfinger_behavior = true,
-- Control the speed of your scrolling
scroll_factor = 0.3,
},
},
})
-- Scroll faster in the terminal
o.window("(Alacritty|kitty|foot)", { scroll_touchpad = 1.5 })
You can see all the input options on the Hyprland wiki for inputs.
By default, Omarchy uses CapsLock as the compose key for quick emojis and other completions. If you'd rather use CapsLock as Caps Lock, move the compose key elsewhere by changing compose:caps in kb_options. For example, this moves the compose key to Right Alt:
hl.config({
input = {
kb_options = "compose:ralt",
},
})
Trackpad gestures
You can also turn on touchpad gestures, like swiping with three fingers to change workspaces:
hl.gesture({ fingers = 3, direction = "horizontal", action = "workspace" })
On Dell XPS laptops with a haptic touchpad, you can also set the click strength to low, mid, or high under Trigger > Hardware > Touchpad Haptics.
Typing in Chinese, Japanese, and other languages
Select Japanese, Korean, Chinese (Simplified, Pinyin), or Chinese (Traditional, Zhuyin) when the installer asks for your keyboard. Omarchy configures the keyboard and matching input engine automatically, including during offline first-boot setup. Japanese uses Mozc, Korean uses standard two-set Hangul, Simplified Chinese uses Pinyin, and Traditional Chinese uses Chewing's standard Zhuyin arrangement. Japanese (US keyboard) provides Mozc with a US keyboard layout.
Typing starts in Latin mode. Press Ctrl + Shift + Space to switch input on or off. On Japanese keyboards, 全角/半角 toggles input, 変換 turns it on, and 無変換 turns it off. On a Korean keyboard layout, dedicated 한/영 and 한자 keys switch Hangul and convert to Hanja. Ctrl + Space stays available for Tmux and Herdr; CapsLock stays the compose key.
The keyboard indicator in the menu bar appears for non-English keyboards and whenever you have multiple layouts or input modes. Click it to switch input languages; Japanese displays あ for hiragana. With only one input mode, clicking opens input language setup. For Japanese character choices, switch to Japanese, type a word such as nihongo, then press Space twice. Press Enter to accept your choice. If you also have multiple keyboard layouts, right-click the indicator to cycle those.
To add another language later, use Setup > Input Language or run omarchy setup input (or omarchy setup input mozc, hangul, pinyin, or chewing). Your existing input methods and custom switching keys are preserved. For alternative engine layouts or keys, install fcitx5-configtool with omarchy pkg add fcitx5-configtool and launch it from a terminal. Selecting an input language does not change the desktop language.
On keyboards without dedicated input keys, use Ctrl + Shift + Space. This input shortcut takes precedence over app shortcuts such as code completion; you can change it in fcitx5-configtool. Tapping Shift alone is not an input switch: Omarchy uses both Shift keys for CapsLock, which changes how input methods see Shift release. Input engines and the CapsLock compose sequences use the Fcitx5 service already running in every session.
Use ALT as SUPER
On some keyboards, it's not convenient to use the primary meta key (Windows/cmd key) as SUPER. You can change this to be ALT instead using this change:
hl.config({
input = {
kb_options = "compose:caps,shift:both_capslock_cancel,altwin:swap_alt_win",
},
})