IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Linux Discussion :

Indentation script shell


Sujet :

Linux

  1. #1
    Rédacteur
    Avatar de lavazavio
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 673
    Points : 2 412
    Points
    2 412
    Par défaut Indentation script shell
    Bonjour,

    J'ai remarqué depuis longtemps que tous les scripts shell issus de package ou d'applications sont indentés "bizarrement".

    Quand je crée un script shell, j'utilise la touche tabulation mais la plus part des scripts shell sont indentés avec un espacement de 4-5 espaces, plus petit que l'espacement d'une tabulation...

    Est-ce que quelqu'un sait comment sont rédigés ces scripts shell par hasard ?
    Ou est-ce que les codeurs s'amusent à taper 4 fois sur espace à chaque fois pour indenter leur code ?

    Encore une question existentielle !

    Merci

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 596
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    Bonjour,

    j'ai google-é «vim tabulation 4 espaces»
    vim.wikia.com donne une réponse pour vim.

    l'équivalent existe certainement pour emacs.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 290
    Points : 426
    Points
    426
    Par défaut
    Je pense que beaucoup d'éditeur proposent une option pour utiliser une tabulation ou N espaces pour l'indentation.

    Sans être spécifique au shell, Python recommande des indentations de 4 espaces (les indentations sont un peu importantes en python ) et Ruby propose des indentations de 2 espaces par exemple...

    En fait, c'est un peu vieille école d'utiliser l'indentation avec tab (excepté sur les Makefiles, bien entendu) !

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 410
    Points : 23 809
    Points
    23 809
    Par défaut
    Citation Envoyé par lavazavio Voir le message
    Quand je crée un script shell, j'utilise la touche tabulation mais la plus part des scripts shell sont indentés avec un espacement de 4-5 espaces, plus petit que l'espacement d'une tabulation...
    Ça arrive tout-à-fait !

    Mais d'une manière générale, une tendance générale consiste à remplacer toutes les tabulations par des espaces dans un code source, justement parce qu'on ne peut plus garantir que la largeur de celles-ci soient la même partout.

    Plus précisément, les « tabulations » servent à la base à organiser des informations sous forme de « table ». C'est donc une demande explicite à passer à la colonne suivante et c'est aussi pour cela que les tableurs les reconnaissent directement.

    Maintenant, s'il s'agissait uniquement d'indenter des paragraphes, cela ne poserait pas de problème, mais étant donné l'organisation des codes sources comtemporains, une mauvaise valeur désorganise complètement leur mise en page.

    C'est pourquoi les éditeurs telles que vim, par exemple, proposent des commandes comme :expandtab et :retab qui permettent respectivement de générer des espaces à la place du caractère 09 quand on saisit une tabulation, et de réécrire les tabulations dans le texte selon le format actuel.

    La plupart des codes source fournis aujourd'hui sont donc organisés avec des espaces, de façon à garantir que le code final sera toujours affiché de la même façon partout pour autant que l'on utilise une police à chasse fixe.

  5. #5
    Rédacteur
    Avatar de lavazavio
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 673
    Points : 2 412
    Points
    2 412
    Par défaut
    Merci beaucoup pour ses explications.

    En effet, le faits de remplacer les tabulations par des espaces va m'éviter beaucoup de désagréments !

    Je suis moins bête maintenant .

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 739
    Points : 31 068
    Points
    31 068
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    C'est pourquoi les éditeurs telles que vim, par exemple, proposent des commandes comme :expandtab et :retab qui permettent respectivement de générer des espaces à la place du caractère 09 quand on saisit une tabulation, et de réécrire les tabulations dans le texte selon le format actuel.
    Salut

    Je ne connaissais pas ces spécifications vim. Ca va me servir (surtout :retab). Merci de l'info

    Citation Envoyé par lavazavio Voir le message
    En effet, le faits de remplacer les tabulations par des espaces va m'éviter beaucoup de désagréments !
    Chacun sa façon de voir. Moi j'ai mis :set ts=4 et les tabulations de mes scripts sont toutes à 4 positions. Et en le mettant dans le fichier .exrc c'est automatiquement activé quand j'appelle vim/gvim...

  7. #7
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 410
    Points : 23 809
    Points
    23 809
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Chacun sa façon de voir. Moi j'ai mis :set ts=4 et les tabulations de mes scripts sont toutes à 4 positions. Et en le mettant dans le fichier .exrc c'est automatiquement activé quand j'appelle vim/gvim...
    Tu peux également déposer des fichiers dans « ~/.vim/ftplugin/<typedefichier>.vim ».
    Ainsi, je passe automatiquement :ts à 4 lorsque j'ouvre des fichiers *.c ou autre, et laisse la largeur par défaut dans les autres cas.

  8. #8
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 739
    Points : 31 068
    Points
    31 068
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    Tu peux également déposer des fichiers dans « ~/.vim/ftplugin/<typedefichier>.vim ».
    Ainsi, je passe automatiquement :ts à 4 lorsque j'ouvre des fichiers *.c ou autre, et laisse la largeur par défaut dans les autres cas.
    Joli.
    Les choses évoluent tellement vite ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Script shell
    Par anzar dans le forum Linux
    Réponses: 4
    Dernier message: 03/12/2004, 15h41
  2. [JSP] script shell
    Par goolix dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 06/08/2004, 10h08
  3. Exécution d'un script shell
    Par Manu0086 dans le forum Linux
    Réponses: 8
    Dernier message: 15/06/2004, 17h31
  4. Explication script shell
    Par crasho007 dans le forum Linux
    Réponses: 2
    Dernier message: 14/06/2004, 14h54
  5. Cron + terminal + script shell
    Par nicolas.pissard dans le forum Linux
    Réponses: 3
    Dernier message: 17/03/2004, 10h24

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