Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @@ -1,5 +1,4 @@
- -(defun fetch-defuns (file)
- - (interactive)
- + (defun fetch-defuns (file)
- (save-excursion
- (goto-char (point-min))
- (let (sexp
- @@ -13,6 +12,8 @@
- (defun (push (cons (cadr sexp) (doc-if-any sexp)) defuns))
- (defmacro (push (cons (cadr sexp) (doc-if-any sexp)) defmacros)))))
- (error nil))
- + ;; reverse the reversed defuns
- + (setq defuns (reverse defuns))
- (generate-docs defuns))))
- (defun doc-if-any (sexp)
- @@ -20,7 +21,25 @@
- (when (stringp (cadddr sexp))
- (cadddr sexp)))
- - (defun generate-docs (defuns)
- +(defun generate-docs (defuns)
- "generate a simple org with the docs"
- - (mapconcat (lambda (x) (format "* %s
- - %s" (car x) (or (cdr x) "-undocumented-"))) defuns "\n\n"))
- + (mapconcat
- + (lambda (x)
- + (format "\n* %s\n %s"
- + (car x) (or (cdr x) "-undocumented-")))
- + defuns "\n"))
- +
- +(defun display-defuns ()
- + "Display the defuns."
- + (interactive)
- + (let* ((out-buf (format "*Docs for: %s*" (file-name-nondirectory buffer-file-name)))
- + (orig-buf (current-buffer)))
- + (get-buffer-create out-buf)
- + (save-excursion
- + (goto-char (point-min))
- + (with-current-buffer out-buf
- + (erase-buffer)
- + (insert (fetch-defuns orig-buf))
- + (org-mode)
- + (goto-char (point-min))))
- + (display-buffer out-buf)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement