emacs-transient

Design and debug transient-based menus in Emacs Lisp.

12|1|Updated Oct 18, 2025
One-click install
npx skills add https://github.com/r0man/beads.el --skill emacs-transient
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: emacs-transient
Source: https://github.com/r0man/beads.el/tree/main/.claude/skills/emacs-transient
Command: npx skills add https://github.com/r0man/beads.el --skill emacs-transient

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides expert guidance for building transient-based menus in Emacs Lisp, including the core macros, patterns, and debugging strategies used by Magit, Forge, and transient-showcase.

Core Features & Use Cases

  • Comprehensive guidance on using transient-define-prefix, transient-define-suffix, and transient-define-infix to build keyboard-driven UIs.
  • Practical patterns and best practices for layout, state management, visibility predicates, and sub-prefix handling.
  • Real-world use cases including debugging transient menus, converting commands to transient interfaces, and creating nested menus.

Quick Start

Use the emacs-transient skill to quickly understand how to implement and debug transient-based interfaces in your own Emacs Lisp projects.

Frequently Asked Questions about emacs-transient

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build Magit-like menus using transient in Emacs Lisp?

To build Magit-like menus in Emacs Lisp, use the transient-define-prefix macro to establish the menu, then define arguments with transient-define-infix and commands with transient-define-suffix for keyboard-driven UIs.

What is the difference between transient-define-suffix and transient-define-infix?

In Emacs transient menus, transient-define-suffix defines actionable commands that execute operations, whereas transient-define-infix defines arguments and state toggles that modify how those suffix commands run.

How do I debug a transient menu that is not displaying correctly in Emacs?

Debugging transient menu display issues in Emacs involves checking visibility predicates, verifying layout patterns, and reviewing sub-prefix handling to ensure the infix and suffix definitions are structured correctly.

Can I convert an existing Emacs command into a transient interface?

Yes, you can convert existing Emacs commands into a transient interface by wrapping them with transient-define-prefix and mapping the original command logic to new transient-define-suffix definitions for interactive execution.

Do I need to know Emacs Lisp to use transient macros for UI development?

Yes, familiarity with Emacs Lisp is required to use transient macros, as defining prefixes, suffixes, and infixes requires writing Lisp code to manage state, layout, and command execution logic.

What are common pitfalls when creating nested transient menus?

Common pitfalls when creating nested transient menus include mismanaging sub-prefix state, incorrectly setting visibility predicates for layout patterns, and failing to properly scope infix arguments across the parent and child menus.