Générer automatiquement un commentaire de chaîne de document Python avec Emacs

Docstring Commentaire comme PyCharm dans Emacs Je voulais une fonction de génération automatique, alors j'ai préparé une fonction.

Demo bbb.gif

Méthode d'introduction

Collez simplement le code suivant dans init.el et chargez-le. Il est généré lorsque le curseur est placé sur la ligne de la définition du nom de la fonction et que C-cd est exécuté.

;; docstring comment
(defun python-docstring-comment()
  (interactive)
  (let* ((begin-point (point-at-bol))
         (end-point (point-at-eol))
         (function-line (buffer-substring begin-point end-point))
         (space (format "    %s" (replace-regexp-in-string "def.*" "" function-line))))
    (goto-char end-point)
    (insert "\n")
    (insert (format "%s\"\"\"\n" space))
    (when (string-match ".*(\\(.+\\)):" function-line)
      (dolist (arg (split-string (match-string 1 function-line) ","))
        (if (not (equal arg "self"))
            (insert (format "%s:param TYPE %s:\n" space (replace-regexp-in-string "^\\s-+\\|\\s-+$" "" arg))))))
    (insert (format "%s:rtype: TYPE\n" space))
    (insert (format "%s\"\"\"" space))))

(define-key python-mode-map (kbd "C-c d") 'python-docstring-comment)

Recommended Posts

Générer automatiquement un commentaire de chaîne de document Python avec Emacs
Générer une distribution U en Python
Générer du code QR en Python
Générez 8 * 8 (64) cubes avec Blender Python
Générez automatiquement une table de distribution de fréquence en un seul coup avec Python
[Python] Générer un code QR en mémoire
Formater automatiquement le code Python avec Vim
Générer le notebook Jupyter ".ipynb" en Python
Générer une collection de première classe en Python
Générer une URL signée AWS-S3 (limitée dans le temps) en Python
Ecrire le test dans la docstring python
Mettre à jour automatiquement Power BI Desktop avec Python
Module pour générer le mot N-gramme en Python
Générer une classe à partir d'une chaîne en Python
Générer un langage C à partir d'une expression S avec Python
Générer la séquence look-and-say présentée dans QuizKnock en Python
Quadtree en Python --2
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
SendKeys en Python
Enregistrer automatiquement les arguments de fonction dans argparse en Python
Essayez auto pour évaluer automatiquement Enum dans Python 3.6
Méta-analyse en Python
Unittest en Python
Créez automatiquement des rapports Word et Excel avec Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
Formater automatiquement le code Python en code compatible PEP8 avec Emacs
N-Gram en Python
commentaire python
Programmation avec Python
Essayez de générer automatiquement des documents Python avec Sphinx
Plink en Python
Constante en Python
[Python] Génère automatiquement un exemple d'image de type liste d'animation.
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Utilisez python + galbé pour générer des points uniquement à Tokyo
Réflexion en Python