diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/help-funs.el | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lisp/help-funs.el b/lisp/help-funs.el index 3aaf58c9052..62049971d3f 100644 --- a/lisp/help-funs.el +++ b/lisp/help-funs.el @@ -436,6 +436,22 @@ it is displayed along with the global value." (buffer-string))))))) +;;;###autoload +(defun describe-syntax (&optional buffer) + (interactive) + "Describe the syntax specifications in the syntax table of BUFFER. +The descriptions are inserted in a help buffer, which is then displayed. +BUFFER defaults to the current buffer." + (setq buffer (or buffer (current-buffer))) + (help-setup-xref (list #'describe-syntax buffer) (interactive-p)) + (with-output-to-temp-buffer (help-buffer) + (let ((table (with-current-buffer buffer (syntax-table)))) + (with-current-buffer standard-output + (describe-vector table 'internal-describe-syntax-value) + (while (setq table (char-table-parent table)) + (insert "\nThe parent syntax table is:") + (describe-vector table 'internal-describe-syntax-value)))))) + (provide 'help-funs) ;;; help-funs.el ends here |