Skip to content

guake

Guake Terminal Integration

Guake is a popular drop-down terminal for Linux desktop environments. This directory contains the Talon integration that allows you to control Guake seamlessly using standard voice commands.

Key Components

The functionality is defined in a single configuration file:

  • guake_linux.py: Implements the Linux-specific context, tags, and keyboard shortcuts for Guake.

How It Works

When Talon detects that you are using Guake on Linux, it activates the context defined in guake_linux.py. This context automatically enables several command sets and maps standard application actions to Guake's specific keyboard shortcuts.

Active Tags

Once Guake is focused, the following command tags are enabled:

  • terminal: Provides generic command-line interface commands.
  • user.tabs: Enables standard tab-navigation voice commands.
  • user.git: Exposes version control commands for Git.
  • user.kubectl: Activates Kubernetes command-line tools and syntax.

Tab Management Mapping

To ensure that universal voice commands like "tab open" or "tab next" work inside Guake, guake_linux.py overrides the standard app action class. It maps Talon's unified application actions to Guake's native hotkeys:

  • Open Tab (app.tab_open()): Sends ctrl-shift-t
  • Close Tab (app.tab_close()): Sends ctrl-shift-w
  • Next Tab (app.tab_next()): Sends ctrl-pagedown
  • Previous Tab (app.tab_previous()): Sends ctrl-pageup