Provided by: acheck-rules_0.3.1_all bug

NOM

       jeu.rules - Jeu de règles pour acheck

DESCRIPTION

       Les fichiers de jeu de règles contiennent les règles qu'acheck doit vérifier.

       Les lignes commençant par un dièse (« # ») et les lignes vides sont ignorées. Les espaces
       au début et à la fin d'une ligne sont aussi ignorés ainsi que les tabulations. Si vous
       avez besoin d'espaces à la fin ou au début d'une valeur, vous pouvez utilisez des
       guillemets anglo-saxons (« " »). Un commentaire commence par un dièse, il peut y avoir des
       espaces ou des tabulations devant le dièse. Les lignes longues peuvent être coupées en
       plusieurs lignes se terminant par une barre oblique inversée (« \ »).

       Quelques exemples :

        # cette ligne est ignorée
        champ    valeur
        champ    valeur                               # ceci est un commentaire
        champ         "valeur avec espaces à la fin   "
        champ    valeur\
                 se poursuivant sur la ligne suivante

       Vous devez protéger le caractère dièse avec une barre oblique inversée si vous voulez
       l'utiliser dans une valeur et utiliser des apostrophes si une valeur contient une barre
       oblique inversée.

       Les jeux de règles sont constitués de listes de règles. Ces listes peuvent être répétées
       un certain nombre de fois, jusqu'à ce que ou tant qu'une condition est vérifiée.

       Une règle détecte une erreur si le test correspondant est vrai et qu'aucun de ses tests de
       validation ne l'est. Chaque règle peut produire des corrections, un avertissement ou une
       erreur, et fournir des commentaires pour aider l'opérateur à corriger l'erreur.

       Des parties du texte peuvent être définies comme commentaires et ainsi aucune règle ni
       vérification orthographique de sera faite dessus.

FICHIER DE RÈGLES

RÈGLES DE SYNTAXE

       list

       Une liste débute à une indication « list » et se termine au premier « end_list » ou à la
       fin du fichier.

       Champs obligatoires :

       type type
           until, répète la liste jusqu'à ce que la ligne courante vérifie « test » ;
           while, répète la liste tant que la ligne courante vérifie « test » ;
           loop, répète la liste « test » fois.
       test regex / nombre
           Une expression rationnelle pour les listes « until » et « while ». Le nombre de fois
           que la liste doit être répétée pour « loop », ou « 0 » pour une boucle infinie.

       Champs optionnels :

       name nom
           Utilisez ceci pour nommer la liste.

       spell yes / no
           Positionner à « yes » (oui, valeur par défaut) ou « no » (non), selon que vous voulez
           ou pas que l'orthographe soit vérifiée pour les lignes de cette liste. Cette valeur
           est héritée par les sous-listes.

       Sous-règles :

       list [nom]
       rule [nom]
       comment [nom]
           Suivi par le nom de la sous-règle ou sa définition pour une sous-règle anonyme.

       rule

       Une règle débute à une indication « rule » et se termine au premier « end_rule » ou au
       début d'un commentaire ou d'une liste.

       Champs obligatoires :

       type type
           fix, règle fournissant dans corrections et des commentaires dans un menu ;
           autofix, règle corrigeant une erreur sans intéraction ;
           warning, règle produisant un avertissement ;
           error, règle produisant une erreur ;
           nop, règle spéciale ne faisant rien, les autres champs ne sont pas obligatoires.
       regex regex
           L'expression rationnelle qui doit être vérifiée pour trouver cette erreur. Des motifs
           peuvent être capturés pour être utilisés ensuite dans les expressions « fix ».

       fix expression
           Fournit une correction pour la règle, ce champ peut être répété pour fournir plusieurs
           choix. Seule la première est utilisée pour les règles « autofix ». Les règles
           « warning » et « error » ne fournissent pas de correction. Les motifs capturés sont
           utilisables ici avec les variables « $1 », « $2 », etc.

       hint texte
           Fournit des explications, elles sont utilisées comme commentaire de relecture en mode
           relecture.

       Champs optionnels :

       name nom
           Utilisez ceci pour nommer la règle.

       valid [name]
           Fournit un test de validation, il peut être nommé ou anonyme. Pour les validations
           anonymes, la définition du test doit suivre. Ce champ peut être répété plusieurs fois,
           il suffit que l'un des tests de validation soit réussi pour que la règle ne soit pas
           appliquée.

       valid

       Un test de validation débute à une indication « valid » et se termine au premier
       « end_valid » ou au début d'une règle, d'un commentaire, d'une liste, ou d'un autre test
       de validation.

       Champs obligatoires :

       pre regex
       in regex
       post regex
           Teste les expressions rationnelles, avant, dans et après le motif trouvé par
           l'expression rationnelle de la règle. Au moins l'un de ces test doit être fourni. Si
           tous les tests réussissent, la règle n'est pas appliquée.

       Champ optionnel :

       name nom
           Utilisez ceci pour nommer le test.

       comment

       Un commentaire débute à une indication « comment » et se termine au premier
       « end_comment » ou au début d'une règle, d'un commentaire ou d'une liste.

       Champs obligatoires :

       skip regex
           Une expression rationnelle correspondant au texte du commentaire. Ne pas utiliser
           « start » ou « stop » avec ceci.

       start regex
       stop regex
           Expressions rationnelles définissant le début et la fin d'un commentaire, tout le
           texte contenu entre est considéré comme commentaire. Ne pas utiliser « skip » avec
           ceci.

       Champs optionnels :

       name nom
           Utilisez ceci pour nommer le commentaire.

       start_offset
       stop_offset
           Définit où le commentaire commence et s'arrête réellement. Les valeurs possibles sont
           « s » pour le début du motif trouvé, « s+<n> » pour n caractères après le début du
           motif, « e » pour la fin du motif, ou « e-<n> » pour n caractères avant la fin du
           motif. Par défaut, « s » est utilisé pour les motifs de début de commentaire, et « e »
           pour ceux de fin.

VOYEZ AUSSI

       acheck(1), acheck(5)

AUTEUR

       Nicolas Bertolissio <nico.bertol@free.fr>