hyprland_dispatch
Run any Hyprland dispatcher using Lua expression syntax for Hyprland 0.55+. Use path+args or raw_expression for dispatchers not covered by dedicated tools.
Instructions
Escape hatch: run any Hyprland dispatcher not covered by a dedicated tool. As of Hyprland 0.55, hyprctl dispatch takes a single Lua expression that must evaluate to a dispatcher table built from the hl.dsp.* namespace (e.g. hl.dsp.window.tag, hl.dsp.group.toggle, hl.dsp.submap, hl.dsp.cursor.move, hl.dsp.exec_cmd) — it is NOT the old hyprctl dispatch <name> <args> positional form, which will error under 0.55+. Give EITHER (path + args) to have this tool build the call for you, OR raw_expression for anything with unusual shape (e.g. a dispatcher taking a bare string/number instead of a table, like hl.dsp.exec_cmd('firefox') or hl.dsp.submap("reset")). Check https://wiki.hypr.land/Configuring/Basics/Dispatchers/ or your Lua LSP stubs for the current dispatcher list and signatures if unsure.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | Table of named args for `path`, e.g. { tag: '+code' }. Omit for a no-arg call. | |
| path | No | Dot path under hl.dsp, e.g. 'hl.dsp.window.tag' or 'hl.dsp.group.toggle' | |
| raw_expression | No | A full Lua expression to pass straight to `hyprctl dispatch`, e.g. "hl.dsp.exec_cmd('firefox')" or 'hl.dsp.submap("reset")'. Use this when the dispatcher doesn't take a plain named-args table. |