File: acheck-rules.fr.5.pod

package info (click to toggle)
acheck-rules 0.3.7
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 132 kB
  • sloc: makefile: 16
file content (264 lines) | stat: -rw-r--r-- 7,070 bytes parent folder | download | duplicates (2)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
#!/usr/bin/perl -w

=encoding UTF-8

=head1 NOM

jeu.rules - Jeu de règles pour acheck

=head1 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 («E<nbsp>B<#>E<nbsp>») 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
(«E<nbsp>B<">E<nbsp>»).
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 («E<nbsp>B<\>E<nbsp>»).

Quelques exemplesE<nbsp>:

 # 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.

=head1 FICHIER DE RÈGLES

=head1 RÈGLES DE SYNTAXE

=head2 list

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

Champs obligatoiresE<nbsp>:

=over 4

=item I<type> type

=over 4

=item I<until>, répète la liste jusqu'à ce que la ligne courante vérifie «E<nbsp>I<test>E<nbsp>»E<nbsp>;

=item I<while>, répète la liste tant que la ligne courante vérifie «E<nbsp>I<test>E<nbsp>»E<nbsp>;

=item I<loop>, répète la liste «E<nbsp>I<test>E<nbsp>» fois.

=back

=item I<test> regex / nombre

Une expression rationnelle pour les listes «E<nbsp>I<until>E<nbsp>» et
«E<nbsp>I<while>E<nbsp>». Le nombre de fois que la liste doit être répétée pour
«E<nbsp>I<loop>E<nbsp>», ou «E<nbsp>0E<nbsp>» pour une boucle infinie.

=back

Champs optionnelsE<nbsp>:

=over 4

=item I<name> nom

Utilisez ceci pour nommer la liste.

=item I<spell> yes / no

Positionner à «E<nbsp>I<yes>E<nbsp>» (oui, valeur par défaut) ou
«E<nbsp>noE<nbsp>» (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.

=back

Sous-règlesE<nbsp>:

=over 4

=item I<list> [nom]

=item I<rule> [nom]

=item I<comment> [nom]

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

=back

=head2 rule

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

Champs obligatoiresE<nbsp>:

=over 4

=item I<type> type

=over 4

=item I<fix>, règle fournissant dans corrections et des commentaires dans un menuE<nbsp>;

=item I<autofix>, règle corrigeant une erreur sans intéractionE<nbsp>;

=item I<warning>, règle produisant un avertissementE<nbsp>;

=item I<error>, règle produisant une erreurE<nbsp>;

=item I<nop>, règle spéciale ne faisant rien, les autres champs ne sont pas obligatoires.

=back

=item I<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
«E<nbsp>I<fix>E<nbsp>».

=item I<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
«E<nbsp>I<autofix>E<nbsp>». Les règles «E<nbsp>I<warning>E<nbsp>» et
«E<nbsp>I<error>E<nbsp>» ne fournissent pas de correction. Les motifs capturés
sont utilisables ici avec les variables «E<nbsp>I<$1>E<nbsp>»,
«E<nbsp>I<$2>E<nbsp>», etc.

=item I<hint> texte

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

=back

Champs optionnelsE<nbsp>:

=over 4

=item I<name> nom

Utilisez ceci pour nommer la règle.

=item I<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.

=back

=head2 valid

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

Champs obligatoiresE<nbsp>:

=over 4

=item I<pre> regex

=item I<in> regex

=item I<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.

=back

Champ optionnelE<nbsp>:

=over 4

=item I<name> nom

Utilisez ceci pour nommer le test.

=back

=head2 comment

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

Champs obligatoiresE<nbsp>:

=over 4

=item I<skip> regex

Une expression rationnelle correspondant au texte du commentaire. Ne pas
utiliser «E<nbsp>I<start>E<nbsp>» ou «E<nbsp>I<stop>E<nbsp>» avec ceci.

=item I<start> regex

=item I<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
«E<nbsp>I<skip>E<nbsp>» avec ceci.

=back

Champs optionnelsE<nbsp>:

=over 4

=item I<name> nom

Utilisez ceci pour nommer le commentaire.

=item I<start_offset>

=item I<stop_offset>

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

=back

=head1 VOYEZ AUSSI

acheck(1), acheck(5)

=head1 AUTEUR

Nicolas Bertolissio <nico.bertol@free.fr>
  
=cut