home / skills / plurigrid / asi / emacs-info

emacs-info skill

/skills/emacs-info

This skill helps you navigate and query Emacs Info manuals to efficiently access Elisp and GNU docs within Emacs.

npx playbooks add skill plurigrid/asi --skill emacs-info

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
1.3 KB
---
name: emacs-info
description: "Emacs Info documentation system. Navigate and query Info manuals for Emacs, Elisp, and GNU tools."
metadata:
  trit: 0
  version: "1.0.0"
  bundle: documentation
---

# Emacs Info Skill

**Trit**: 0 (ERGODIC - documentation mediates between learning and doing)  
**Foundation**: GNU Info + Emacs integration  

## Core Concept

Info is the hypertext documentation format for GNU:
- Structured nodes and menus
- Cross-references between manuals
- Index-based search

## Emacs Commands

```elisp
;; Open Info browser
M-x info

;; Go to specific manual
(info "elisp")
(info "emacs")
(info "org")

;; Search index
M-x info-apropos RET <query> RET

;; Navigate
n - next node
p - previous node
u - up
l - back (history)
```

## Standalone Info

```bash
# Read manual
info emacs
info elisp

# Search
info --apropos=regexp
```

## GF(3) Integration

```elisp
(defun gay-info-trit (node)
  "Return trit based on Info node type."
  (cond
   ((string-prefix-p "Function" node) -1)  ; MINUS: constraint
   ((string-prefix-p "Variable" node) 0)   ; ERGODIC: state
   ((string-prefix-p "Command" node) 1)))  ; PLUS: action
```

## Canonical Triads

```
proofgeneral-narya (-1) ⊗ emacs-info (0) ⊗ xenodium-elisp (+1) = 0 ✓
slime-lisp (-1) ⊗ emacs-info (0) ⊗ geiser-chicken (+1) = 0 ✓
```

Overview

This skill provides a focused interface for navigating and querying the Emacs Info documentation system. It helps locate nodes, follow cross-references, and search indexes across Emacs, Emacs Lisp, and related GNU manuals. Use it to quickly retrieve concise documentation, examples, and navigation paths inside Info manuals.

How this skill works

The skill inspects Info nodes, menus, and cross-references to return relevant sections and navigation hints. It supports index-based lookups and pattern searches, and maps common Emacs Info commands to actions for browsing and jumping between nodes. Both Emacs-integrated and standalone Info access patterns are supported so results apply whether you use the Emacs Info browser or the system info command.

When to use it

  • Looking up the definition or usage of an Emacs Lisp function, variable, or command.
  • Finding the right manual section when learning a feature (Emacs, Org, Elisp, GNU tools).
  • Tracing cross-references between manuals or following Info menus and node trees.
  • Running quick index searches or regex apropos searches across Info manuals.
  • Needing navigation hints (next/previous/up/history) inside the Info hierarchy.

Best practices

  • Provide the function/variable/command name and, if known, the manual to narrow results quickly.
  • Use short queries for index searches and add context (e.g., 'buffer' vs 'buffer-local') to disambiguate.
  • When possible, request node paths or menu breadcrumbs to jump directly to relevant sections.
  • Prefer index or apropos searches for broad topics, and node navigation for precise examples.

Example use cases

  • Show the Info node that documents a specific Emacs Lisp function and include the node path.
  • Search across manuals for occurrences of a keyword using index or apropos-style matching.
  • Provide step-by-step navigation commands to reach a topic from the root Info menu.
  • Summarize the differences between a command and a variable in the corresponding Info entries.
  • Convert an Info node reference into a sequence of Emacs Info commands to reproduce the navigation.

FAQ

Can you search across multiple manuals at once?

Yes—use index or apropos-style queries to match terms across installed Info manuals and return aggregated results.

Do you return full manual text or just summaries?

I return concise, focused excerpts, node paths, and navigation hints; request full node text if you need the complete section.