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

Shell et commandes GNU Discussion :

[vim] Comment vérifier la bonne fermeture des if et do


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 162
    Par défaut [vim] Comment vérifier la bonne fermeture des if et do
    Bonjour,

    J'ai fait un long script bash et j'utilise vim.
    À la fin vim surligne des fi et done laissant supposer que j'ai fermer plus de if que je n'en ai ouvert. Mais après vérification je n'ai pas trouvé d'où venait cette erreur. Et le script s’exécute sans erreur, un bug de vim ?
    Y a-t-il un moyen de vérifier tout ceci. Notamment existe-t-il un éditeur qui permette de fermer les différents if écrit un peux comme pour les éditeurs tex ou on peut compresser les \begin \end.
    Merci

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 635
    Par défaut
    ce n'est pas un bug de vim à proprement parler, mais du script de coloration syntaxique, qui ne prend pas ou mal en charge certains aspects du shell pour lequel tu code.

    solution facile : une indentation rigoureuse.
    pour plus : corriger le script de coloration syntaxique
    ...
    ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 162
    Par défaut
    Alors j'ai une indentation rigoureuse mais quand on ouvre une boucle sur 150 lignes difficile à la fin de vérifier.
    Sinon tu veux dire quoi par
    corriger le script de coloration syntaxique

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 635
    Par défaut
    sur Debian, il est sous /usr/share/vim/vim72/syntax/sh.vim
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 102
    Par défaut
    Citation Envoyé par Erlen Voir le message
    Y a-t-il un moyen de vérifier tout ceci.
    Comme je l'ai déjà dit ailleurs, je ne tape jamais aucun caractère d'indentation: je demande à mon éditeur de le faire pour moi.
    J'ai un peu testé vim il y a un an. Il y a plusieurs modules de coloration et d'indentation et j'ai eu un peu de mal à comprendre comment les utiliser.
    Du coup, je suis repassé sous mon emacs préféré...
    mais le module sh-mode n'est pas parfait!
    Il m'arrive parfois de repasser un coup un fichier sous vim et de lancer quelque chose comme "=G" pour réindenter tout le code et comparer avec ce que me propose emacs (avec C-x h C-M-\) pour comprendre l'origine des problèmes.
    Sinon il me semble avoir entendu parler d'une sorte de lint en ligne pour script shell... est-ce une voie?

    J'ai eu des soucis avec des backquotes mal fermées dans des strings qui ont tendance à paniquer les parsers. Du coup, je les remplace systématiquement par des $()

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 162
    Par défaut
    Bon en tout cas en utilisant la commande :
    Aucune erreur n'est signalée j'en déduit que c'est un bug.

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/09/2009, 17h48
  2. Réponses: 2
    Dernier message: 24/11/2007, 18h15
  3. Réponses: 2
    Dernier message: 22/11/2007, 12h00
  4. [PHP-JS] comment vérifier la saisie des champs ?
    Par tigzirt dans le forum Langage
    Réponses: 4
    Dernier message: 27/06/2006, 17h26
  5. [C#] La bonne utilisation des WinForms (ouverture-Fermeture)
    Par Harry dans le forum Windows Forms
    Réponses: 28
    Dernier message: 03/08/2005, 11h39

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