Dans mon projet j'ai des outils installés en dépendances de dev avec
poetry
pre-commit
Ces outils sont lancés lors du
push
push
Donc l'idée est de lancer la partie linter de mon pre-commit soit
pre-commit run flake8
Pour cela nous allons configurer un File Watchers, pour cela allez dans Settings

- Dans le champ Scope il faut mettre Current File qui permettra d'exécuter uniquement le lint sur le fichier en cours
- Dans le champ Program, il faut mettre le chemin de la librairie qui est installé dans votre env. Moi j'utilise
pre-commit
et pour connaitre le chemin je lance la commandepoetry
poetry env info
- Dans le champ Arguments je précise les options de ma commande comme je souhaite lancer mon linter je rajoute
pre-commit,
Il faut au préalable bien sûr avoir installérun flake8 --files $FilePath$.
comme dépendance de dev de votre projetflake8
- Dans le champ Working Directory je mets le dossier racine de mon projet qui sera à analyser par le watcher
- Dans le champ Create output file from stdout doit être activé car il permet d'aller lire la sortie de la commande pour la réinjecter dans l'IDE (onglet Problems...)
- Dans le champ Output filters il faut préciser le format de message de qui mettra à PyCharm d'aller extraire les bonnes informations et les ré-injecter dans l'IDE
flake8
Et c'est tout !
Maintenant quand le linter
flake8
- Vous avez le soulignement jaune pour l'non utilisé, avec son code F401
import
- Vous avez dans l'onglet Problems le message de
flake8
