summaryrefslogtreecommitdiffstats
path: root/emacs.d/lisp/yasnippet/snippets/python-mode/defm
blob: 5b2aee42d4b4c4e16de7512302969ed55b385ac4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# -*- coding: utf-8 -*-
# name: defm
# contributor: Yasser Gonz¨¢lez Fern¨¢ndez <yglez@uh.cu>
# --
def ${1:name}(self, $2):
    """$3
    ${2:$
    (let* ((indent
            (concat "\n" (make-string (current-column) 32)))
           (args
            (mapconcat
             '(lambda (x)
                (if (not (string= (nth 0 x) ""))
                    (concat "- " (char-to-string 96) (nth 0 x)
                            (char-to-string 96) ":")))
             (mapcar
              '(lambda (x)
                 (mapcar
                  '(lambda (x)
                     (replace-regexp-in-string "[[:blank:]]*$" ""
                      (replace-regexp-in-string "^[[:blank:]]*" "" x)))
                  x))
              (mapcar '(lambda (x) (split-string x "="))
                      (split-string text ",")))
             indent)))
      (if (string= args "")
          (make-string 3 34)
        (mapconcat
         'identity
         (list "" "Arguments:" args (make-string 3 34))
         indent)))
    }
    $0