plugin | The one form in plugin.ss; its body runs top to bottom when the plugin turns on. | a package file with provide |
export | The plugin’s interface when it has no contract.ss. | the pkg--private naming convention |
contract | The one form in contract.ss: an interface others import or implement. | a function variable such as completing-read-function |
import, c:x | Makes a contract’s names usable as c:x; checked at build. | require |
implements | This plugin stands in for a contract; checked at build and load. | setting completing-read-function |
include | Reads another file of the plugin’s folder in place. | load |
provided? | Whether a contract you can do without is running. | featurep |
plugin-file | The path of a file in the plugin’s folder. | load-file-name |
define-syntax, define-record-type | Ordinary Chez forms, with two rules. | defmacro, cl-defstruct |
define-saved | One piece of the user’s data, checked and saved. | defvar plus savehist |
set! on saved data | Replaces the value; saved after the command. | setq |
restore-saved! | Brings back saved data that was set aside. | none |
list-of, pair-of, maybe | Build checks for plain data. | defcustom’s :type |
map-of | A check for a persistent map, applied to changed entries only. | :type '(alist …) |
define-plain-record | A fixed shape of plain data, never changed in place. | cl-defstruct |
pmap and friends | The persistent map. | hash tables, alists |
new-id | A fresh id, never given twice. | buffer objects |
define-option | A setting with a default and a check. | defcustom |
set! on an option | Adds your layer; the newest wins. | setopt |
set-local! | Your layer, in the current buffer only. | setq-local |
options in use-plugin | (use-plugin undo limit: 5000): a layer owned by that line. | use-package :custom |
define-dynamic | A value each command sees its own binding of. | defvar (a special variable) |
dynamic-let | Binds dynamic values for a body. | let of a special variable |
define-hook | A list of procedures others add to. | defvar of a hook |
add-hook! | Adds your entry, optionally named, ordered or scoped. | add-hook |
remove-hook! | Removes your entry, or hides another’s. | remove-hook |
run-hook | Calls every entry that applies. | run-hook-with-args |
run-hook-until-failure | Calls entries until one returns #f. | run-hook-with-args-until-failure |
frame-hook | Run when a frame is due. | pre-redisplay-functions |
define-table | For providers: named entries, each owned. | a keymap variable |
table-set!, table-remove! | For providers: add, replace or hide an entry. | define-key |
table-ref | The winning entry for a key. | lookup-key |
table-values | Every owner’s value for a key. | overlays-in |
table-entries | All winning entries, in a stable order. | iterating a hook |
table-clear! | The definer removes every owner’s entry for a key. | what kill-buffer does to overlays |
table-call | Calls one entry’s procedure as its owner’s code. | call-interactively |
as-caller | A verb’s entries become its caller’s. | none |
on-end | Runs when this run ends. | FEATURE-unload-hook, kill-emacs-hook |
run-ending | Why the run is ending. | none |
on-caller-end | A provider ties a thing it made to its caller. | none |
forget-caller-end | Drops that tie. | none |
run-with-timer | A timer, owned by the run. | run-with-timer |
run-with-idle-timer | A timer that fires after idle time. | run-with-idle-timer |
cancel-timer! | Stops a timer. | cancel-timer |
define-worker | Heavy work, compiled apart from the plugin. | a subprocess program |
start-job | Runs a worker on its own thread; for: replaces an older job. | make-process |
post | In a worker: hands one result back, in order. | printing to the pipe |
next-input | In a worker: waits for a value from job-send!. | reading standard input |
sleep | In a worker: sleeps, waking if cancelled. | sleep-for |
job-send! | Sends a running job more input. | process-send-string |
stop-job! | Cancels a job. | delete-process |
suspend | Pauses a command until resumed. | recursive-edit |
request-quit! and quit | What C-g does; how code sees a quit. | keyboard-quit, quit signal |
spawn-task! | Runs a procedure soon as a task. | run-at-time 0 |