From 83718bb1038c175d84204ed57d5aebe380811c61 Mon Sep 17 00:00:00 2001 From: Simeon Simeonov Date: Mon, 25 Sep 2023 09:17:11 +0200 Subject: Update yasnippet .yas-setup.el --- .emacs.d/snippets/python-mode.statnett/.yas-setup.el | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to '.emacs.d/snippets/python-mode.statnett') diff --git a/.emacs.d/snippets/python-mode.statnett/.yas-setup.el b/.emacs.d/snippets/python-mode.statnett/.yas-setup.el index 7603e4d..76af532 100644 --- a/.emacs.d/snippets/python-mode.statnett/.yas-setup.el +++ b/.emacs.d/snippets/python-mode.statnett/.yas-setup.el @@ -14,12 +14,25 @@ (max-len (if args (apply 'max (mapcar (lambda (x) (length (nth 0 x))) args)) 0)) (formatted-args (mapconcat (lambda (x) - (concat ":param " (nth 0 x) ":\n:type " (nth 0 x) ":\n" + (concat (nth 0 x) (make-string (- max-len (length (nth 0 x))) ? ) " -- " (if (nth 1 x) (concat "\(default " (nth 1 x) "\)")))) args indent))) (unless (string= formatted-args "") (mapconcat 'identity (list "Keyword Arguments:" formatted-args) indent)))) -(add-hook 'python-mode-hook - '(lambda () (set (make-local-variable 'yas-indent-line) 'fixed))) +(defun python-args-to-docstring-numpy () + "return docstring format for the python arguments in yas-text" + (let* ((args (python-split-args yas-text)) + (format-arg (lambda(arg) + (concat (nth 0 arg) " : " (if (nth 1 arg) ", optional") "\n"))) + (formatted-params (mapconcat format-arg args "\n")) + (formatted-ret (mapconcat format-arg (list (list "out")) "\n"))) + (unless (string= formatted-params "") + (mapconcat 'identity + (list "\nParameters\n----------" formatted-params + "\nReturns\n-------" formatted-ret) + "\n")))) + + +(add-hook 'python-mode-hook #'yasnippet-snippets--fixed-indent) -- cgit v1.3