# PEP 727: Documentation Metadata in Typing

**URL:** <https://discuss.python.org/t/pep-727-documentation-metadata-in-typing/32566>\
**Category:** PEPs\
**Tags:** typing\
**Created:** [August 29, 2023, 10:17pm UTC](https://discuss.python.org/t/pep-727-documentation-metadata-in-typing/32566 "2023-08-29T22:17:39Z")\
**Posts on this page:** 1\
**Showing post:** 172

<div class="post-metadata">

**Author:** ![johnthagen](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/johnthagen/32/3780_2.png) [@johnthagen](https://discuss.python.org/u/johnthagen)\
**Post date:** [December 13, 2023, 2:55pm UTC](https://discuss.python.org/t/pep-727-documentation-metadata-in-typing/32566/172 "2023-12-13T14:55:38Z")

</div>

> [@tiangolo](#):
>
> Actually current popular IDEs support rendering, not editing. Maybe PyCharm, but VS Code doesn’t provide any help while editing docstrings.

Since it hasn’t been mentioned, I thought I’d share the PyCharm features here as prior art of how Google Style docstrings can be parsed and provide a good user experience (it wouldn’t be hard for Pylance/VS Code to implement this I bet).

PyCharm supports setting your docstring format to “Google”:

- [Integrated Tools | PyCharm Documentation](https://www.jetbrains.com/help/pycharm/settings-tools-python-integrated-tools.html)

When this is enabled, the first thing PyCharm will do is that when you type `"""` after a function, it will pre-populate the docstring Args:

 ![Screenshot 2023-12-13 at 9.37.03 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/d/3/d352102b1ee30501f5e8da5745a3085b5469258f.png)

If you are missing/mispell a parameter, you get a warning:

 ![Screenshot 2023-12-13 at 9.37.34 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/f/c/fc137988441cd74748c355b0b7d74330362f2fd0.png)

Pressing Alt+Enter quick fix on the missing parameter will allow for auto-inserting it into the docstring:

 ![Screenshot 2023-12-13 at 9.54.31 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/1/e/1e09430b5d38cc0cd78852821ba80820b6828769.png)

The docstrings are rendered nicely for the user when using Quick-doc:

 ![Screenshot 2023-12-13 at 9.39.09 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/a/0/a0d6c3713cb0d6da6ed9aec56dba8fbe0a64f448.png)

Argument names are autocompleted:

 ![Screenshot 2023-12-13 at 9.47.14 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/3/1/31a872cdac0449313de25d7f03e8b357b5fbb7be.png)

The section title blocks are autocompleted:

 ![Screenshot 2023-12-13 at 9.45.29 AM](https://us1.discourse-cdn.com/flex002/uploads/python1/original/3X/1/7/1763683603d691d0625ac9610e0c9784b08e91fd.png)

### Google Style Docstring Community Support

Google style docstrings are already supported in a variety of other tools:

- [Mkdocs](https://mkdocstrings.github.io/python/#features)
- [Sphinx](https://www.sphinx-doc.org/en/master/usage/extensions/napoleon.html)
- [Ruff](https://docs.astral.sh/ruff/faq/#does-ruff-support-numpy-or-google-style-docstrings)

---

_[View the full topic](https://discuss.python.org/t/pep-727-documentation-metadata-in-typing/32566)._
