Built-in Hooks¶
formate ships with several hooks out of the box:
dynamic_quotes¶
Reformats quotes in the given source, and returns the reformatted source.
This hook takes no arguments.
collections-import-rewrite¶
Identify deprecated from collections import <abc> imports,
and rewrite them as from collections.abc import <abc>.
This hook takes no arguments.
noqa_reformat¶
Pull # noqa: ... comments that immediately follow docstrings back up to the end of the correct line.
This hook takes no arguments.
check_ast¶
Check the source can be parsed as a Python Abstract Syntax Tree. This could be called early in the execution – to check the file is valid before starting reformatting – and again at the end to ensure no errors were introduced by the reformatting.
This hook takes no arguments.
newline_after_equals¶
Remove newlines (and any following whitespace) after equals signs..
This hook takes no arguments.
New in version 1.1.0.
ellipsis_reformat¶
Move ellipses (...) for type stubs onto the end of the stub definition.
Before:
def foo(value: str) -> int: ...After:
def foo(value: str) -> int: ...
This hook takes no arguments.
reformat-generics¶
Reformats generics (typing.Generic, typing.Union, typing.Callable etc.).
This hook takes a single keyword argument: indent.
The indent can also be configured via the indent key in the config table.