Comment définir la longueur de ligne maximale dans PyCharm?

269

J'utilise PyCharm sur Windows et je souhaite modifier les paramètres pour limiter la longueur de ligne maximale aux 79caractères, par opposition à la limite par défaut des 120caractères.

Où puis-je modifier le nombre maximal de caractères par ligne dans PyCharm?

Ansuman Bebarta
la source

Réponses:

423

Voici une capture d'écran de mon Pycharm. Les paramètres requis se trouvent dans le chemin suivant:File -> Settings -> Editor -> Code Style -> General: Right margin (columns)

Capture d'écran des paramètres de Pycharm 4

Alex GP
la source
37
Je me demande pourquoi la valeur par défaut est fixée à 120 caractères. PEP 8 stipule clairement: Limitez toutes les lignes à un maximum de 79 caractères .
Krøllebølle
17
@ Krøllebølle PEP 8 n'est qu'une recommandation, pas une exigence obligatoire.
Alex GP
25
En effet, et rétrospectivement pour le projet où nous avons suivi PEP 8, nous étions bien trop stricts. Suite à la limitation de 79 lignes, le code devient rapidement illisible et impossible à maintenir. Citons PEP-8 :A style guide is about consistency. Consistency with this style guide is important. Consistency within a project is more important. Consistency within one module or function is most important. But most importantly: know when to be inconsistent -- sometimes the style guide just doesn't apply.
Krøllebølle
33
PEP8 E501 - ligne trop longue (> 79 caractères) - est désormais obsolète. Même les grands projets bien connus comme Django ne l'utilisent plus ( code.djangoproject.com/ticket/23395 ), comme vous pouvez le voir ici:One big exception to PEP 8 is our preference of longer line lengths. We’re well into the 21st Century, and we have high-resolution computer screens that can fit way more than 79 characters on a screen. Don’t limit lines of code to 79 characters if it means the code looks significantly uglier or is harder to read.
JChris
27
@ChrisCogdon J'ai un argument pour contrer l'homme de paille des "anciens terminaux" (?) De Django: Sur mon écran large de 1920px, je peux insérer 3 fichiers source d'une largeur maximale ~ 79 colonnes horizontalement. Je crois que cela me donne un meilleur aperçu de ce avec quoi je travaille car je peux avoir le module de bibliothèque ainsi que le fichier de modèle ouvert juste à côté de la vue sur laquelle je travaille.
joar
38

Pour PyCharm 2018.1 sur Mac:

Préférences ( + ,), puis Editor -> Code Style:

entrez la description de l'image ici

Pour PyCharm 2018.3 sur Windows:

Fichier -> Paramètres ( Ctrl+ Alt+ S), puis Editor -> Code Style:

Pour suivre PEP-8 réglé Hard wrap atsur 80.

lmiguelvargasf
la source
Wrap on typing est très utile lors de l'écriture de commentaires!
delucasvb
23

Pour PyCharm 4

Fichier >> Paramètres >> Éditeur >> Style de code: marge droite (colonnes)

suggestion: jetez un oeil à d'autres options dans cet onglet, elles sont très utiles

Marco Sanchez
la source
6

Vous pouvez même définir une marge droite distincte pour HTML. Sous le chemin spécifié:

Fichier >> Paramètres >> Editeur >> Style de code >> HTML >> Onglet Autre >> Marge droite (colonnes)

Ceci est très utile car généralement HTML et JS peuvent généralement être longs sur une seule ligne que Python. :)

Andy
la source
1
Je cherchais ça. Merci @andy, mais en augmentant même la marge de droite pour HTML, le texte continue de s'encapsuler dans la 79e colonne. Y a-t-il un réglage supplémentaire?
Caco
3

Pour tout le monde ou moi-même si je recharge ma machine, pour qui cela ne fonctionne pas lorsque vous effectuez un reformatage de code, il existe une option supplémentaire à vérifier sous éditeur-> style de code-> python: assurez-vous que la marge droite n'est pas dépassée. Une fois cette option sélectionnée, le reformatage fonctionnerait.

préférence_ surligné

Steve Stacha
la source
1

Pour PyCharm 2017

Nous pouvons suivre ci-dessous: Fichier >> Paramètres >> Editeur >> Style de code.

Fournissez ensuite des valeurs pour Hard Wrap& Visual Guides for wrappingtout en tapant, cochez la case.

NB: regardez également d'autres onglets, à savoir. Python, HTML, JSON etc.

AB Abhi
la source