Generate, fix and convert docstrings.
Project description
Create, update or convert docstrings in existing Python files, managing several styles.
Project Status
Test Status
Supported Versions
Description
Command-line program to generate, update or transform docstrings python source code.
The app will parse the requested source files for docstrings as well as function signatures and class bodies.
This information is combined to build up complete docstrings for every function and class including place holders for types and descriptions where none could be found elsewhere.
The output format of the docstrings can be chosen between google, numpy, reST and epydoc. This means that the tool can also be used to transform docstrings in the file from one format into another.
Note however that not all section types are supported for all docstring styles.
Partially because they have not been added yet, but also because not every style officially supports the sections from all others.
To get further information please refer to the documentation.
The tool offers the choice between generating patch files or directly overwriting the python source files.
Start quickly
install from PyPi
$ pip install pymend
install from sources:
$ pip install git+https://github.com/JanEricNitschke/pymend.git
or
$ git clone https://github.com/JanEricNitschke/pymend.git
$ cd pymend
$ python setup.py install
run from the command line:
$ pymend myfile.py # will generate a patch
$ pymend -w myfile.py # will overwrite the file
or
$ pymend my/folder/
get help:
$ pymend -h
Example
TODO
Pre-commit
To use pymend in a pre-commit hook just add the following to your .pre-commit-config.yaml
repos:
- repo: https://github.com/JanEricNitschke/pymend
rev: "v1.0.0"
hooks:
- id: pymend
language: python
args: ["--write", "--output=numpydoc"]
Acknowledgements
This project was inspired by and is originally based upon pyment. The intended functionality as well as the main entry point remain largerly unchanged. However additional functionality has been added in the form of ast traversal for extracting function and class information.
The docstring parsing has been replaced completely with code taken from the awesome docstring_parser project, specifically this fork.
So far only minor modifications have been made to the docstring parsing functionality. Mainly the addition of the “Methods” section for numpydoc style docstrings. Additionally the the code has been linted as well as type hinted.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pymend-1.0.0.tar.gz
.
File metadata
- Download URL: pymend-1.0.0.tar.gz
- Upload date:
- Size: 80.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8dcec467b210ba3b8b760e3d10a3f03e9172901a98223c4a96c2f834a95def1c |
|
MD5 | e3c9e4613f875f058668f2b7d1e3331b |
|
BLAKE2b-256 | ef529357b056017c1b3552ecb25e52f350c3febf601f1b62d22e1947c6caf755 |
File details
Details for the file pymend-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: pymend-1.0.0-py3-none-any.whl
- Upload date:
- Size: 60.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7edcf19d68ec423f9c3af9878440bd86a58595fa668b3a3bf3ecc90774344d6d |
|
MD5 | 60a9acf10acf4c0340cf9e5cab3033f5 |
|
BLAKE2b-256 | dbb8537555273d3b9dedef55b8d87b8e9333b9aca4d105c2312cb1267c9096b5 |