config: update info about global keybinds on Linux (#13492)

This commit is contained in:
Mitchell Hashimoto
2026-07-28 06:10:42 -07:00
committed by GitHub

View File

@@ -1795,8 +1795,6 @@ class: ?[:0]const u8 = null,
/// `global:unconsumed:ctrl+a=reload_config` will make the keybind global
/// and not consume the input to reload the config.
///
/// Note: `global:` is only supported on macOS and certain Linux platforms.
///
/// On macOS, this feature requires accessibility permissions to be granted
/// to Ghostty. When a `global:` keybind is specified and Ghostty is launched
/// or reloaded, Ghostty will attempt to request these permissions.
@@ -1804,24 +1802,40 @@ class: ?[:0]const u8 = null,
/// you can find these permissions in System Preferences -> Privacy & Security
/// -> Accessibility.
///
/// On Linux, you need a desktop environment that implements the
/// [Global Shortcuts](https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.GlobalShortcuts.html)
/// protocol as a part of its XDG desktop protocol implementation.
/// Desktop environments that are known to support (or not support)
/// global shortcuts include:
/// Since Ghostty 1.4.0, global shortcuts on Linux are primarily supported
/// through the [`vicinae-hotkey-v1`](https://github.com/vicinaehq/vicinae-wayland-protocols/tree/main/staging/vicinae-hotkey)
/// protocol, available out-of-the-box with the following Wayland compositors
/// and desktop environments:
///
/// - Users using KDE Plasma (since [5.27](https://kde.org/announcements/plasma/5/5.27.0/#wayland))
/// and GNOME (since [48](https://release.gnome.org/48/#and-thats-not-all)) should be able
/// to use global shortcuts with little to no configuration.
/// - Hyprland since version 0.56.0
///
/// - Some manual configuration is required on Hyprland. Consult the steps
/// outlined on the [Hyprland Wiki](https://wiki.hyprland.org/Configuring/Binds/#dbus-global-shortcuts)
/// to set up global shortcuts correctly.
/// (Important: [`xdg-desktop-portal-hyprland`](https://wiki.hyprland.org/Hypr-Ecosystem/xdg-desktop-portal-hyprland/)
/// must also be installed!)
/// On X11 or when your Wayland compositor/desktop environment does not
/// support `vicinae-hotkey-v1`, the much more widely-used
/// [XDG Global Shortcuts](https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.GlobalShortcuts.html)
/// protocol is used instead.
///
/// - Notably, global shortcuts have not been implemented on wlroots-based
/// compositors like Sway (see [upstream issue](https://github.com/emersion/xdg-desktop-portal-wlr/issues/240)).
/// Note: XDG Global Shortcuts rely on a functional XDG Desktop Portal
/// implementation **that is designed to be used with your desktop environment
/// or compositor**. Please make sure that you have the correct one installed.
///
/// Desktop environments that are known to support the XDG Global Shortcuts
/// protocol include:
///
/// - KDE Plasma since [5.27](https://kde.org/announcements/plasma/5/5.27.0/#wayland)
/// with `xdg-desktop-portal-kde` installed
///
/// - GNOME since [48](https://release.gnome.org/48/#and-thats-not-all) with
/// `xdg-desktop-portal-gnome` installed
///
/// - Hyprland before version 0.56.0, with `xdg-desktop-portal-hyprland`
/// installed. **Some manual configuration is required.** Consult the steps
/// outlined on the [Hyprland Wiki](https://wiki.hypr.land/Configuring/Basics/Binds/#dbus-global-shortcuts)
/// to set up D-Bus-based global shortcuts correctly.
///
/// Desktop environments and compositors that don't implement either protocol
/// do not support global shortcuts, like wlroots-based compositors e.g. Sway
/// (see [upstream issue](https://github.com/emersion/xdg-desktop-portal-wlr/issues/240))
/// and COSMIC.
///
/// ## Chained Actions
///