#Abstract
autopep8
でフォーマットしながらPythonコードを書いているとき,オートフォーマットされたくない行の最後に#nopep
を付ける
Background
VSCode
でautopep8
でフォーマットしながらPythonコードを書いているとき,
./neko/modules/nekofuguri.py
をインポートしたいがため
import sys
sys.path.append('./neko/modules/')
import nekofuguri
て書いてたのが,
import sys
import nekofuguri
sys.path.append('./neko/modules/')
ってセーブするときとかに勝手にされてしまっていた.
Solution
いかで色々挙げられているが
https://stackoverflow.com/questions/54030320/vscode-autopep8-allow-statements-before-imports
- VSCodeの
settings.json
にて"python.formatting.autopep8Args": ["--ignore", "E402"]
と設定する- 402エラーがimportがファイルのトップレベルに来てないっていうエラーらしいなのでこれを無視するように設定するということらしい
- 多分ワークスペース毎のsetttings.jsonの方が良い?
- オートフォーマットされたくない行の最後に
#noqa
または#nopep
を付ける
すなわち
import nekofuguri #nopep
みたいな.
いずれかで対応すればよい
なんとなく,sys.path.append行を別のファイルに書いてそれをimportしてもいい気もするが,野暮ったい気がするので試してもない.