Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    mars 2013
    Messages
    4 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : mars 2013
    Messages : 4 670
    Points : 121 784
    Points
    121 784
    Par défaut EditorConfig permet d'avoir des styles de codage uniformes dans différents éditeurs et EDI
    EditorConfig permet d'avoir des styles de codage uniformes dans différents éditeurs et EDI,
    petit tour d'horizon de cet utilitaire

    EditorConfig aide à maintenir des styles de codage cohérents pour plusieurs développeurs travaillant sur le même projet dans différents éditeurs et IDE. Le projet EditorConfig comprend un format de fichier permettant de définir les styles de codage et un ensemble de plug-ins d'éditeur de texte permettant aux éditeurs de lire le format de fichier et de respecter les styles définis. Les fichiers EditorConfig sont facilement lisibles et fonctionnent parfaitement avec les systèmes de contrôle de version.

    À quoi ressemble un fichier EditorConfig ?

    Quelques projets utilisent EditorConfig, parmi lesquels

    • Projet A11Y: un projet mené par la communauté pour faciliter l'accessibilité du Web.
    • Amaze UI: un framework front-end originaire de Chine.
    • AngularJS: HTML amélioré pour les applications Web
    • Angular Strap : directives Bootstrap pour Angular
    • Angular Leaflet Directive: directives Angular pour la bibliothèque Leaflet
    • animate.css: bibliothèque d'animation CSS
    • async: utilitaires asynchrones pour le noeud et le navigateur
    • Autofac: Un conteneur addictif .NET IoC.
    • Autogen: générateur d'en-tête copyright + license pour plusieurs langues
    • Babel: compilateur pour l'écriture de JavaScript de nouvelle génération
    • basket.js: un chargeur de scripts de validation de concept pour la mise en cache / chargement de scripts avec localStorage
    • Bootstrap: infrastructure de développement Web front-end


    Nom : editorconfig.png
Affichages : 4947
Taille : 11,7 Ko

    Vous trouverez ci-dessous un exemple de styles de fin de ligne et d'indentation des fichiers .editorconfig pour les fichiers Python et JavaScript.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    # EditorConfig is awesome: https://EditorConfig.org
    
    # top-most EditorConfig file
    root = true
    
    # Unix-style newlines with a newline ending every file[*]
    end_of_line = lf
    insert_final_newline = true
    
    # Matches multiple files with brace expansion notation
    # Set default charset
    [*.{js,py}]
    charset = utf-8
    
    # 4 space indentation
    [*.py]
    indent_style = space
    indent_size = 4
    
    # Tab indentation (no size specified)
    [Makefile]
    indent_style = tab
    
    # Indentation override for all JS under lib directory
    [lib/**.js]
    indent_style = space
    indent_size = 2
    
    # Matches the exact files either package.json or .travis.yml
    [{package.json,.travis.yml}]
    indent_style = space
    indent_size = 2
    Où ces fichiers sont-ils stockés?

    Lors de l'ouverture d'un fichier, les plugins EditorConfig recherchent un fichier nommé .editorconfig dans le répertoire du fichier ouvert et dans chaque répertoire parent. Une recherche de fichiers .editorconfig s'arrête si le chemin d'accès au fichier racine est atteint ou si un fichier EditorConfig avec root = true est trouvé.

    Les fichiers EditorConfig sont lus de haut en bas et les règles les plus récentes trouvées ont priorité. Les propriétés des sections EditorConfig correspondantes sont appliquées dans l'ordre dans lequel elles ont été lues. Par conséquent, les propriétés des fichiers plus proches sont prioritaires.

    Pour les utilisateurs Windows: Pour créer un fichier .editorconfig dans l'explorateur Windows, vous devez créer un fichier nommé .editorconfig., Que l'explorateur Windows renommera automatiquement en .editorconfig.

    Propriétés prises en charge

    Notez que toutes les propriétés ne sont pas supportées par tous les plugins. Voici une liste de quelques propriétés qui sont supportées

    • indent_style: définissez “tab” ou “space” pour utiliser respectivement la tabulation ou un espace.
    • indent_size: nombre entier définissant le nombre de colonnes utilisées pour chaque niveau d'indentation et la largeur des espaces (si pris en charge). Lorsqu'il est défini sur “tab”, la valeur de tab_width (si spécifiée) sera utilisée.
    • tab_width: nombre entier définissant le nombre de colonnes utilisées pour représenter un caractère de tabulation. La valeur par défaut est indent_size et n'a généralement pas besoin d'être spécifiée.
    • end_of_line: définissez sur lf, cr ou crlf pour contrôler la manière dont les sauts de ligne sont représentés.
    • charset: mis à latin1, utf-8, utf-8-bom, utf-16be ou utf-16le pour contrôler le jeu de caractères.
    • trim_trailing_whitespace: défini sur true pour supprimer tous les caractères d'espacement précédant les caractères de nouvelle ligne et sur false pour s'assurer que ce n'est pas le cas.
    • insert_final_newline: défini sur true pour garantir que le fichier se termine par une nouvelle ligne lors de la sauvegarde et sur false pour le garantir.
    • root: propriété spéciale devant être spécifiée en haut du fichier en dehors de toute section. Définissez sur “true” pour arrêter la recherche de fichiers .editorconfig sur le fichier actuel.


    Nom : editor.png
Affichages : 3143
Taille : 6,5 Ko

    Pour toutes les propriétés, la valeur de “unset” est de supprimer l’effet de cette propriété, même si elle a été définie auparavant. Par exemple, ajoutez indent_size = unset pour supprimer la propriété indent_size (et utilisez l'éditeur par défaut).

    Actuellement, toutes les propriétés et valeurs ne respectent pas la casse. Ils sont minuscules lorsqu'ils sont analysés. En règle générale, si une propriété n'est pas spécifiée, les paramètres de l'éditeur seront utilisés, c'est-à-dire que EditorConfig n'aura aucun effet sur cette partie.

    Il est acceptable et souvent préférable de laisser certaines propriétés EditorConfig non spécifiées. Par exemple, tab_width n'a pas besoin d'être spécifié, sauf s'il diffère de la valeur de indent_size. De plus, lorsque indent_style est défini sur tab, il peut être souhaitable de laisser indent_size non spécifié afin que les lecteurs puissent visualiser le fichier en utilisant leur largeur d'indentation préférée. De plus, si une propriété n'est pas normalisée dans votre projet (end_of_line par exemple), il peut être préférable de la laisser vide.

    Un plugin n’est pas toujours nécessaire

    Certains éditeurs sont fournis avec le support natif de EditorConfig. C’est le cas par exemple de CodeLight, Intellij IDEA, KTextEditor, Visual Studio ou PyCharm

    Nom : support natif.png
Affichages : 3380
Taille : 125,3 Ko
    Éditeurs avec un support natif

    Microsoft explique par exemple que

    Citation Envoyé par Microsoft
    Dans Visual Studio 2017, vous pouvez ajouter un fichier EditorConfig à votre projet ou base de code pour appliquer des styles de codage cohérents pour tous les utilisateurs qui travaillent sur la base de code. Les paramètres EditorConfig sont prioritaires par rapport aux paramètres globaux de l’éditeur de texte Visual Studio. Vous pouvez donc personnaliser chaque base de code pour utiliser des paramètres de l’éditeur de texte qui sont propres au projet. Vous pouvez toujours définir vos propres préférences d’éditeur personnelles dans la boîte de dialogue Options de Visual Studio. Ces paramètres s’appliquent à chaque fois que vous travaillez sur une base de code sans fichier .editorconfig, ou quand le fichier .editorconfig ne remplace pas un paramètre particulier. Le style de mise en retrait (tabulations ou espaces) constitue un exemple de préférence de ce type.

    Les paramètres EditorConfig sont pris en charge par de nombreux éditeurs de code et IDE, notamment Visual Studio. C’est un composant portable qui accompagne votre code et peut appliquer des styles de codage même en dehors de Visual Studio.

    Quand vous ajoutez un fichier EditorConfig à votre projet dans Visual Studio, la mise en forme du code existant ne change pas, sauf si vous mettez en forme le document (Edition > Avancé > Mettre le document en forme ou Ctrl+K, Ctrl+D dans le profil par défaut). Toutefois, les nouvelles lignes de code sont mises en forme selon les paramètres EditorConfig.

    Pour les éditeurs comme Atom, NetBeans PHPStorm ou en encore EMacs, l’utilisateur va devoir télécharger un plugin.

    Nom : support plugin.png
Affichages : 3128
Taille : 86,5 Ko
    Éditeurs qui nécessitent un plugin

    D’ailleurs, à ce propos, l’équipe derrière EditConfig a publié la version 0.4.0 du plug-in Notepad ++.

    Dans le changelog du plug-in sur GitHub nous pouvons lire u’il :
    • Offre de construction x64 du plugin.
    • Permet de convertir end_of_line avant de sauvegarder.
    • Ajoute une commande pour afficher les paramètres de configuration actuels.
    • Corrige la logique de combinaison de propriétés.
    • Permet de définir la coloration syntaxique du fichier .editorconfig sur ini.


    Liste complète des propriétés supportées

    Sources : EditorConfig , Microsoft

    Et vous ?

    Vous êtes-vous déjà servi d'EditorConfig ? Sur quel EDI / éditeur ?
    Qu'en avez-vous pensé ?

    Voir aussi :

    IntelliJ IDEA 2019.1 EAP5 permet de visualiser les emplacement récents de code, et prend en charge les modifications apportées par Android Studio 3.3
    Sortie d'Oxygen XML Editor 21 : tour d'horizon des nouveautés de la dernière version annuelle de l'éditeur XML
    La Release Candidate (RC) de Visual Studio 2019 est disponible au téléchargement, un mois avant la sortie de la version stable de l'EDI de Microsoft
    C'est un téléphone annoncé comme open source et personnalisable via l'EDI pour Arduino : le WiPhone est estimé à moins de 100 $
    Lazarus 2.0.0 disponible au téléchargement, la nouvelle version majeure de l'EDI open source bâti autour de Free Pascal est stable
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    janvier 2011
    Messages
    2 819
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : janvier 2011
    Messages : 2 819
    Points : 8 141
    Points
    8 141
    Par défaut
    Je ne connaissais pas, et je ne pense pas avoir à l'utiliser.
    Dans mon équipe les outils sont définis dès le départ ainsi que les configurations.
    Cela fait donc plusieurs années que je n'ai rien configuré dans mon EDI...

    Certains ont des besoins de reconfiguration permanente de leurs EDIs ?

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    avril 2002
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : avril 2002
    Messages : 2 066
    Points : 13 553
    Points
    13 553
    Par défaut
    C'est surtout intéressant pour ceux qui utilisent plusieurs EDI
    Ne prenez pas la vie au sérieux, vous n'en sortirez pas vivant ...

  4. #4
    Membre averti Avatar de scandinave
    Homme Profil pro
    Développeur Java, NodeJs/Angular
    Inscrit en
    mai 2009
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java, NodeJs/Angular

    Informations forums :
    Inscription : mai 2009
    Messages : 225
    Points : 448
    Points
    448
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Je ne connaissais pas, et je ne pense pas avoir à l'utiliser.
    Dans mon équipe les outils sont définis dès le départ ainsi que les configurations.
    Cela fait donc plusieurs années que je n'ai rien configuré dans mon EDI...
    
    Certains ont des besoins de reconfiguration permanente de leurs EDIs ?
    Je considère que l'IDE est le propre du développeur. Si l'un considère qu'il code plus vite sur Eclipse, l'autre sur NetBeans et le dernier sur Sublime Text, du moment qu'ils maitrise suffisamment leur IDE pour le configurer de manière à respecter les choix de dev, autant ne pas leur imposer un IDE qu'il n'aime pas.

    Ce genre d'outil permet de gagner du temps, avec une configuration partiellement automatique.

Discussions similaires

  1. Réponses: 40
    Dernier message: 30/06/2019, 22h24
  2. [XL-2010] Utilisation des "Styles de Cellules" intégrés dans une macro
    Par Pico----- dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/10/2014, 15h41
  3. Avoir des panneaux réductibles et extensibles dans un WinForm
    Par ager1912 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 24/07/2007, 10h10
  4. Réponses: 1
    Dernier message: 09/02/2007, 08h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo