Function: insert-abbrev-table-description

insert-abbrev-table-description is a byte-compiled function defined in abbrev.el.gz.

Signature

(insert-abbrev-table-description NAME &optional READABLE)

Documentation

Insert before point a full description of abbrev table named NAME.

NAME is a symbol whose value is an abbrev table. If optional 2nd arg READABLE is non-nil, insert a human-readable description.

If READABLE is nil, insert an expression. The expression is a call to define-abbrev-table that, when evaluated, will define the abbrev table NAME exactly as it is currently defined. Abbrevs marked as "system abbrevs" are ignored.

View in manual

Source Code

;; Defined in /usr/src/emacs/lisp/abbrev.el.gz
(defun insert-abbrev-table-description (name &optional readable)
  "Insert before point a full description of abbrev table named NAME.
NAME is a symbol whose value is an abbrev table.
If optional 2nd arg READABLE is non-nil, insert a human-readable
description.

If READABLE is nil, insert an expression.  The expression is
a call to `define-abbrev-table' that, when evaluated, will define
the abbrev table NAME exactly as it is currently defined.
Abbrevs marked as \"system abbrevs\" are ignored."
  (let ((symbols (abbrev--table-symbols name readable)))
    (setq symbols (sort symbols 'string-lessp))
    (let ((standard-output (current-buffer)))
      (if readable
          (progn
            (insert "(")
            (prin1 name)
            (insert ")\n\n")
            (mapc 'abbrev--describe symbols)
            (insert "\n\n"))
        (insert "(define-abbrev-table '")
        (prin1 name)
        (if (null symbols)
            (insert " '())\n\n")
          (insert "\n  '(\n")
          (mapc 'abbrev--write symbols)
          (insert "   ))\n\n")))
      nil)))