les variables d'environnement
(
par défaut),
(si non présente alors sortie du programme), et
(si présente), puis dans l'ordre :
est définie, elle passe devant toutes les options suivantes,
est définie alors
,
est définie alors
,
puis la fonction va chercher dans le fichier forum du serveur
le nombre total d'articles disponibles sur le serveur, le numéro du premier article, ainsi que le numéro du dernier article. Voici un exemple de fichier
:
26 14400 14425 |
signifie que le serveur dispose de 26 articles, l'article le plus ancien ayant le numéro 14400 et le plus récent 14425 (14425 - 14400 + 1 = 26, ce genre de vérification est faite dans la fonction).
Cette nomenclature est inspiré de la de Février 1986 concernant le `Network News Transfer Protocol',
en effet à la commande du client :
le serveur répond :
(n = nombre estimé d'articles dans le group,
p = premier numéro d'article du groupe,
d = dernier numéro d'article du groupe,
s = nom du groupe.)
Le lecteur lit le fichier contenant les numéros des articles lus, et stocke un booléen dans une case du tableau
(exemple :
pour l'article non lu numéro : `i + NumeroPremierArticle', article lu sinon) ;
c'est le rôle de la fonction .
Le lecteur propose alors un menu.
Le premier choix permet de voir la liste des articles non lus affiché par l'intermédiaire d'un fichier temporaire créé avec la fonction visualisé par la variable
à travers la fonction
qui repère les articles non lus gràce au
, l'utilisation d'un fichier temporaire un du
pour le visualiser à pour but de faciliter la recherche et la manipulation de la liste des articles non lus.
En choisissant un numéro d'articles lu ou non encore lu, si celui est compris entre et
, alors il est affiché gràce à la fonction
avec le
, une fois que l'article est lu la fonction
est appelée afin d'enlever l'article lu de la liste.
L'option `d' + `numéro d'article' marque l'article comme lu en mettant tout simplement un '1' dans la case correspondante dans le tableau . De la même façon, la fonction
appelle en boucle la fonction
sur tout le tableau
.
Avant de quitter le programme, le fichier
est réécrit à l'aide de la fonction
.