Visual Studio Code extension to quickly generate docstrings for python functions.
To turn off type generation in docstrings use the -notypes
template of the desired format. The docBlockr format is a typed version of PEP0257.
Cursor must be on the line directly below the definition to generate full auto-populated docstring
"""
or '''
)ctrl+shift+2
or cmd+shift+2
for mac
Generate Docstring
Generate Docstring
This extension contributes the following settings:
autoDocstring.docstringFormat
: Switch between different docstring formatsautoDocstring.customTemplatePath
: Path to a custom docstring template (absolute or relative to the project root)autoDocstring.generateDocstringOnEnter
: Generate the docstring on pressing enter after opening docstringautoDocstring.includeExtendedSummary
: Include extended summary section in docstringautoDocstring.includeName
: Include function name at the start of docstringautoDocstring.startOnNewLine
: New line before summary placeholderautoDocstring.guessTypes
: Infer types from type hints, default values and variable namesautoDocstring.quoteStyle
: The style of quotes for docstringsThis extension now supports custom templates. The extension uses the mustache.js templating engine. To use a custom template create a .mustache file and specify its path using the customTemplatePath
configuration. View the included google docstring template for a usage example. The following tags are available for use in custom templates.
{{name}} - name of the function
{{summaryPlaceholder}} - _summary_ placeholder
{{extendedSummaryPlaceholder}} - [extended_summary] placeholder
{{#args}} - iterate over function arguments
{{var}} - variable name
{{typePlaceholder}} - _type_ or guessed type placeholder
{{descriptionPlaceholder}} - _description_ placeholder
{{/args}}
{{#kwargs}} - iterate over function kwargs
{{var}} - variable name
{{typePlaceholder}} - _type_ or guessed type placeholder
{{&default}} - default value (& unescapes the variable)
{{descriptionPlaceholder}} - _description_ placeholder
{{/kwargs}}
{{#exceptions}} - iterate over exceptions
{{type}} - exception type
{{descriptionPlaceholder}} - _description_ placeholder
{{/exceptions}}
{{#yields}} - iterate over yields
{{typePlaceholder}} - _type_ placeholder
{{descriptionPlaceholder}} - _description_ placeholder
{{/yields}}
{{#returns}} - iterate over returns
{{typePlaceholder}} - _type_ placeholder
{{descriptionPlaceholder}} - _description_ placeholder
{{/returns}}
{{#argsExist}} - display contents if args exist
{{/argsExist}}
{{#kwargsExist}} - display contents if kwargs exist
{{/kwargsExist}}
{{#parametersExist}} - display contents if args or kwargs exist
{{/parametersExist}}
{{#exceptionsExist}} - display contents if exceptions exist
{{/exceptionsExist}}
{{#yieldsExist}} - display contents if returns exist
{{/yieldsExist}}
{{#returnsExist}} - display contents if returns exist
{{/returnsExist}}
{{#placeholder}} - makes contents a placeholder
{{/placeholder}}
Check the CHANGELOG.md for any version changes.
Report any issues on the github issues page. Follow the template and add as much information as possible.
The source code for this extension is hosted on GitHub. Contributions, pull requests, suggestions, and bug reports are greatly appreciated.
feature request
tag to any feature requests or suggestions.This project is licensed under the MIT License - see the LICENSE file for details