背景
pycharm原生支持format code功能,工具入口是:code -> reformat code。
pycharm以文件为最小粒度格式化代码,不支持仅格式化部分代码。而仅格式化部分代码有时候很有用。
如果项目文件之前未进行过自动格式化且代码风格不符合pep8标准,那么格式化整个文件会带来很多不便:
- 不利于新老版本代码比较
- 代码评审时会看到大篇幅的代码格式化修改,喧宾夺主
使用external tools功能可以实现仅格式化“选定的代码”功能。
配置方法
- 安装autopep8工具。
- Preference -> Tools -> External Tools
- 点击+号,新增工具。主要参数如下:
Program: /usr/local/bin/autopep8
Arguments: --in-place --aggressive --aggressive $FilePath$ --line-range $SelectionStartLine$ $SelectionEndLine$
Working directory: $ProjectFileDir$
示例:
使用方法
选择要格式化的代码片段后,右键进行格式化: