[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master eaa3141 059/177: fix docstring extraction for "fancy" docs
From: |
João Távora |
Subject: |
[elpa] master eaa3141 059/177: fix docstring extraction for "fancy" docs |
Date: |
Sat, 28 Mar 2015 15:40:49 +0000 |
branch: master
commit eaa3141402832903715b7d478e028d69d9d3ed0f
Author: Noam Postavsky <address@hidden>
Commit: Noam Postavsky <address@hidden>
fix docstring extraction for "fancy" docs
The docstrings for yas-expand and yas-expand-from-keymap are generated
on the fly, depending on how they are called ("context"). Add a context
argument to the synthesizing functions and pass it nil when extracting
docstrings for the manual.
---
doc/yas-doc-helper.el | 5 ++++-
yasnippet.el | 34 ++++++++++++++++++----------------
2 files changed, 22 insertions(+), 17 deletions(-)
diff --git a/doc/yas-doc-helper.el b/doc/yas-doc-helper.el
index e4d2857..f9e0f69 100755
--- a/doc/yas-doc-helper.el
+++ b/doc/yas-doc-helper.el
@@ -49,7 +49,10 @@
(body (or (cond ((boundp symbol)
(documentation-property symbol
'variable-documentation t))
((fboundp symbol)
- (documentation symbol t))
+ (let ((doc-synth (car-safe (get symbol
'function-documentation))))
+ (if (functionp doc-synth)
+ (funcall doc-synth nil)
+ (documentation symbol t))))
(t
(format "*WARNING*: no symbol named =%s=" symbol)))
(format "*WARNING*: no doc for symbol =%s=" symbol)))
diff --git a/yasnippet.el b/yasnippet.el
index eb7afc6..6c95978 100644
--- a/yasnippet.el
+++ b/yasnippet.el
@@ -4298,31 +4298,33 @@ When multiple expressions are found, only the last one
counts."
;; depending on the context.
;;
(put 'yas-expand 'function-documentation
- '(yas--expand-from-trigger-key-doc))
-(defun yas--expand-from-trigger-key-doc ()
+ '(yas--expand-from-trigger-key-doc t))
+(defun yas--expand-from-trigger-key-doc (context)
"A doc synthesizer for `yas--expand-from-trigger-key-doc'."
- (let ((fallback-description
- (cond ((eq yas-fallback-behavior 'call-other-command)
- (let* ((fallback (yas--keybinding-beyond-yasnippet)))
- (or (and fallback
- (format " call command `%s'." (pp-to-string
fallback)))
- " do nothing (`yas-expand' doesn't shadow\nanything)")))
- ((eq yas-fallback-behavior 'return-nil)
- ", do nothing.")
- (t
- ", defer to `yas-fallback-behaviour' (which see)"))))
+ (let* ((yas-fallback-behavior (and context yas-fallback-behavior))
+ (fallback-description
+ (cond ((eq yas-fallback-behavior 'call-other-command)
+ (let* ((fallback (yas--keybinding-beyond-yasnippet)))
+ (or (and fallback
+ (format "call command `%s'."
+ (pp-to-string fallback)))
+ "do nothing (`yas-expand' doesn't shadow\nanything).")))
+ ((eq yas-fallback-behavior 'return-nil)
+ "do nothing.")
+ (t "defer to `yas-fallback-behaviour' (which see)."))))
(concat "Expand a snippet before point. If no snippet
-expansion is possible,"
+expansion is possible, "
fallback-description
"\n\nOptional argument FIELD is for non-interactive use and is an
object satisfying `yas--field-p' to restrict the expansion to.")))
-(put 'yas-expand-from-keymap 'function-documentation
'(yas--expand-from-keymap-doc))
-(defun yas--expand-from-keymap-doc ()
+(put 'yas-expand-from-keymap 'function-documentation
+ '(yas--expand-from-keymap-doc t))
+(defun yas--expand-from-keymap-doc (context)
"A doc synthesizer for `yas--expand-from-keymap-doc'."
(add-hook 'temp-buffer-show-hook 'yas--snippet-description-finish-runonce)
(concat "Expand/run snippets from keymaps, possibly falling back to original
binding.\n"
- (when (eq this-command 'describe-key)
+ (when (and context (eq this-command 'describe-key))
(let* ((vec (this-single-command-keys))
(templates (mapcan #'(lambda (table)
(yas--fetch table vec))
- [elpa] master 3002594 037/177: Merge pull request #430 from npostavs/org-doc, (continued)
- [elpa] master 3002594 037/177: Merge pull request #430 from npostavs/org-doc, João Távora, 2015/03/28
- [elpa] master 875ef77 044/177: move index.org subsection into snippet-organization.org, João Távora, 2015/03/28
- [elpa] master 2f7bb6c 048/177: move images to the section they describe, João Távora, 2015/03/28
- [elpa] master 8f1fa08 049/177: replace obsolete refs, João Távora, 2015/03/28
- [elpa] master 08a44b4 050/177: add code examples for snippet-expansion.rst, João Távora, 2015/03/28
- [elpa] master dfdb89c 054/177: remove erroneous #+BEGIN/END_QUOTE, João Távora, 2015/03/28
- [elpa] master eaeb6ff 051/177: more links to docstrings, don't repeat docstrings, João Távora, 2015/03/28
- [elpa] master 07b1d39 056/177: move #+STARTUP to org-setup.inc; add #+LINK_HOME, João Távora, 2015/03/28
- [elpa] master fd3fa39 057/177: publish org doc from Rakefile, João Távora, 2015/03/28
- [elpa] master 2c237cc 060/177: check function doc before variable doc, João Távora, 2015/03/28
- [elpa] master eaa3141 059/177: fix docstring extraction for "fancy" docs,
João Távora <=
- [elpa] master 8d7c9a6 058/177: retrieve function documentation correctly, João Távora, 2015/03/28
- [elpa] master 63873e7 052/177: snippet-menu.org: links, formatting, obsolete refs, João Távora, 2015/03/28
- [elpa] master e46d9c7 047/177: link to docstring ref; fix other links, formatting, João Távora, 2015/03/28
- [elpa] master 860858d 061/177: Merge pull request #436 from npostavs/autodoc-1, 2, João Távora, 2015/03/28
- [elpa] master f6cace0 042/177: convert old rst manuals to org mode, João Távora, 2015/03/28
- [elpa] master 21914cf 064/177: yas--document-symbol: reindent, João Távora, 2015/03/28
- [elpa] master f86529c 065/177: only crosslink exported symbols, João Távora, 2015/03/28
- [elpa] master 0aebb41 055/177: move top heading to title, João Távora, 2015/03/28
- [elpa] master 46c378d 063/177: format args in docstrings as =code=, not /italic/, João Távora, 2015/03/28
- [elpa] master da9852a 053/177: {snippet-development, faq}.org: fixup pandoc output, João Távora, 2015/03/28