Skip to content

termite

This directory houses the Talon integration for Termite, a keyboard-centric, VTE-based terminal emulator primarily used in Linux environments.

The configuration ensures that when Termite is active, the appropriate command sets (tags) and terminal-specific shortcuts are enabled.

Terminal Configuration

The directory contains a single configuration file that defines the voice command context and keybindings for the emulator:

  • termite.talon: Sets up the application context, enables context-aware tags, and defines custom key mappings for navigating Termite's selection mode.

How It Works

The termite.talon file coordinates the terminal experience through several mechanisms:

Context Matching

The file is active only when the Termite application is focused (app: termite). However, it explicitly excludes instances where the window title contains /VIM/ (and not win.title: /VIM/). This prevention ensures that Termite-specific selection commands do not conflict with Vim's native modal keybindings when editing text.

Command Tag Activation

When Termite is active, Talon automatically enables several tags that pull in generic command sets. These sets allow you to control terminal-based tools seamlessly:

  • terminal: Enables standard terminal utilities and navigation commands.
  • user.git: Exposes voice commands for Git version control.
  • user.kubectl: Exposes Kubernetes command-line tools.
  • user.taskwarrior: Exposes task management commands via Taskwarrior.

Selection and Navigation Mode

Termite features a built-in selection mode (similar to screen or tmux copy mode) for navigating scrollback and copying text without using a mouse. termite.talon provides direct voice mapping for these actions:

  • Entering selection mode: "shell select" triggers ctrl-shift-space.
  • Returning to insert mode: "shell insert" triggers escape.
  • Text selection: "visual line" and "visual line mode" trigger v and V respectively.
  • Yanking text: "shell yank" triggers y to copy selected text to the clipboard.