summaryrefslogtreecommitdiffstats
path: root/emacs.d/snippets/text-mode/python-mode/class
blob: 72f339b7ba7c33c0fd05bb6989f150438d30cee2 (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# -*- coding: utf-8 -*-
# name: class
# contributor: Orestis Markou
# contributor: Nishio Hirokazu
# contributor: Yasser González Fernández <yglez@uh.cu>
# --
class ${1:ClassName}(${2:object}):
    """$3
    """

    def __init__(self, $4):
        """$5
        ${4:$
        (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)))
        }
        ${4:$
        (mapconcat
         '(lambda (x)
            (if (not (string= (nth 0 x) ""))
                (concat "self._" (nth 0 x) " = " (nth 0 x))))
         (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 ",")))
         (concat "\n" (make-string (current-column) 32)))
        }
        $0