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

Qt Quick Discussion :

Qt 5.4 : outil de vérification de la syntaxe QML


Sujet :

Qt Quick

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut Qt 5.4 : outil de vérification de la syntaxe QML
    En QML, une erreur des plus fréquentes concerne la syntaxe des fichiers QML et JavaScript — y compris dans des applications en production, principalement pour des composants chargés de manière asynchrone. La plupart de ces erreurs ne sont que des typos, mais elles restent fort ennuyantes et facilement évitables.

    Pour éviter ce genre d’erreurs, Qt 5.4 proposera un outil en ligne de commande pour vérifier la syntaxe des fichiers QML. Il est prévu notamment pour s’intégrer facilement aux outils d’intégration continue, tout comme xmllint et json_verify sont utilisés pour les fichiers XML et JSON, respectivement :

    $ qmllint ClickableImage.qml
    ClickableImage.qml:17 : Expected token `numeric literal'
    
    $ find -type f -name \*qml -exec qmllint \{\} +
    ./qml/SettingsPage.qml:35: Unexpected token `if'
    ./qml/AboutPage.qml:35: Expected a qualified name id
    Cet outil ne fait que de la vérification syntaxique, pas sémantique : en cas d’erreur dans un nom de variable, par exemple, l’outil sera incapable de le détecter. La vérification de ce genre d’erreur est bien plus difficile, car la sémantique dépend également du contexte de l’application en cours d’exécution.

    Bar.qml:1 TypeFoo is not a type
    Bar.qml:2 module "QtQuickControls" is not installed
    Bar.qml:6:9: QML Rectangle: Cannot anchor to an item that isn't a parent or sibling.
    Source : KDAB contributions to Qt 5.4: qmllint

    Billet d'origine.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre du Club Avatar de zeecrowddev
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2013
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2013
    Messages : 73
    Points : 55
    Points
    55
    Par défaut
    C'est déjà un bon début ...

    A noter que QtCreator fait aussi une vérification syntaxique en les signalant dans son Ihm

    Il est vrai que c'est souvent rageant de découvrir les bugs de syntaxe à l’exécution ....

Discussions similaires

  1. [HTML 5] Outil de vérification des liens
    Par nicollivier dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 11/05/2011, 12h22
  2. Outil de vérification (fichiers orphelins)
    Par vandeyy dans le forum Langage
    Réponses: 3
    Dernier message: 19/01/2010, 16h17
  3. Recherche outil pour vérification d'appel
    Par Oberown dans le forum EDI/Outils
    Réponses: 2
    Dernier message: 25/07/2007, 16h17
  4. Outil de vérification SQL
    Par nikkoc@m dans le forum Langage SQL
    Réponses: 8
    Dernier message: 05/04/2006, 17h19
  5. Outil pour vérification automatique des liens
    Par zazaraignée dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 20/01/2005, 20h00

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