elisp

Deliver Emacs Lisp reference information with syntax, macros, hooks, and advice examples.

60|13|Updated Dec 22, 2025
One-click install
npx skills add https://github.com/plurigrid/asi --skill elisp
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: elisp
Source: https://github.com/plurigrid/asi/tree/main/skills/elisp
Command: npx skills add https://github.com/plurigrid/asi --skill elisp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a broad reference to Emacs Lisp, enabling quick lookups, macro usage, hooks, and advice patterns to customize and automate Emacs.

Core Features & Use Cases

  • Basics & Macros: Learn core Lisp constructs and macro usage.
  • Hooks & Advice: Extend and modify editor behavior.
  • Info & Navigation: Access built-in documentation with the Info system.

Quick Start

Open Emacs, then press C-h i to browse the Elisp manual, or evaluate a small Lisp expression like (message "Hello").

Frequently Asked Questions about elisp

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

FAQPage Schema
How do I customize Emacs with Elisp?

Elisp is Emacs Lisp, the scripting language built into Emacs for customization. Write functions with defun, define hooks to run code at key moments, and use advice to modify existing commands without editing their source. Evaluate expressions directly in Emacs or add them to your init file.

What's the difference between defun, defmacro, and let in Elisp?

defun defines a function, defmacro defines a macro that transforms code at compile time, and let creates local variable bindings within an expression. Use defun for reusable logic, defmacro to reduce repetition in code generation, and let to scope temporary data.

How do I use hooks and advice to extend Emacs behavior?

Hooks are lists of functions Emacs runs at specific events; add your function with add-hook. Advice wraps or modifies existing functions; use advice-add to run code before, after, or around a target function. Both let you change editor behavior without forking Emacs.

How do I find documentation for Elisp functions and variables?

Use C-h f to look up a function's signature and docstring, C-h v for variable documentation, and C-h i to browse the full Elisp manual through Emacs Info. These built-in help commands give you instant access to reference material without leaving the editor.

Can I use Elisp to automate repetitive tasks in Emacs?

Yes. Write Elisp functions to automate workflows, bind them to keys, and attach them to hooks so they run automatically. Use when-let for conditional variable binding and other core constructs to build powerful automation that integrates deeply with Emacs.

Do I need to know Lisp before learning Elisp?

No, but understanding Lisp basics helps. Elisp follows Lisp syntax and conventions, so learning its core constructs—defun, let, macros—teaches you Lisp fundamentals. Start with simple expressions like (message "Hello") and build up from there.