home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / TELECOM / GNU_ATP_1_40.lzh / SRC / text.c < prev   
Text File  |  1993-08-15  |  30KB  |  717 lines

  1. /*
  2.  
  3.      ATP QWK MAIL READER FOR READING AND REPLYING TO QWK MAIL PACKETS.
  4.      Copyright (C) 1992  Thomas McWilliams 
  5.      Copyright (C) 1990  Rene Cougnenc
  6.      
  7.      This program is free software; you can redistribute it and/or modify
  8.      it under the terms of the GNU General Public License as published by
  9.      the Free Software Foundation; either version 1, or (at your option)
  10.      any later version.
  11.      
  12.      This program is distributed in the hope that it will be useful,
  13.      but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15.      GNU General Public License for more details.
  16.      
  17.      You should have received a copy of the GNU General Public License
  18.      along with this program; if not, write to the Free Software
  19.      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  20.  
  21. */
  22.  
  23.  
  24. /* Change Log:
  25. $Log: text.c,v $
  26.  * Revision 1.400  1992/11/28  09:56:55  root
  27.  * second release
  28.  *
  29.  * Revision 1.310  1992/07/08  23:15:14  root
  30.  * first release -- minor bug fix in read.c
  31.  *
  32.  * Revision 1.30  1992/07/05  15:36:19  root
  33.  * first release of ATP
  34.  *
  35.  * Revision 1.2  1992/04/19  12:52:27  root
  36.  * 1st semifunctional UNIX version.
  37.  *
  38.  * 
  39.  * ATTENTION: There are two French language sections here. One uses
  40.  * the DOS character set and one uses the Linux character set. DO
  41.  * NOT edit the DOS set under Linux or the Linux set under DOS.
  42.  * It won't work.
  43.  *
  44.  * ATTENTION: Il y a deux sections dessous pour la langue francais.
  45.  * L'un pour MS-DOS, et l'autre pour le Linux. Ne pas editer l'un avec
  46.  * un editeur pour l'autre systeme. Ca ne marchera pas !  
  47.  *                                  '
  48.  */
  49.  
  50. #include <stdio.h>
  51. #include "system.h"
  52. #include "ansi.h"
  53. #include "reader.h"
  54. /*
  55. #include <sys/types.h>
  56.   */
  57. #ifndef NULL
  58. #define NULL ((char *)0)
  59. #endif
  60. /* const */ char *terms[] = {
  61.     
  62.      "ATP reader to read and reply to messages in QWK format mail packets.",
  63.      "Copyright (c) 1992  Thomas McWilliams ",
  64.      " ",
  65.      "This program is free software; you can redistribute it and/or modify",
  66.      "it under the terms of the GNU General Public License as published by",
  67.      "the Free Software Foundation; either version 1, or (at your option)",
  68.      "any later version. You may not deny to others the freedom which you",
  69.      "have been granted.",
  70.      " ", 
  71.      "This program is distributed in the hope that it will be useful,",
  72.      "but WITHOUT ANY WARRANTY; without even the implied warranty of",
  73.      "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the",
  74.      "GNU General Public License for more details.",
  75.      " ", 
  76.      "You should have received a copy of the GNU General Public License",
  77.      "along with this program; if not, write to the Free Software",
  78.      "Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.",
  79.      " ",
  80.      "Please don't contact the original authors concerning this version.",
  81.      "Send comments or questions to WHAMBLEN on the OS-9 forum on Delphi.",
  82.      " ",
  83.      NULL 
  84.      } ;
  85.      
  86. /*
  87.                    Language-dependant file
  88.                         
  89.  
  90.   All messages tous les messages displayed affichΘs by par this program
  91.   ce programme are sont in this file dans ce fichier :-)
  92.  
  93. */
  94.  
  95. /*<<<<< Define FRENCH or ENGLISH  in Makefile's CFLAGS >>>>>*/
  96.  
  97. #ifndef ENGLISH 
  98. #ifndef FRENCH
  99. #define FRENCH
  100. #endif
  101. #endif
  102.  
  103. /*=========================================================================*
  104.  *                                                                         *
  105.  *      EEEEEEE  NN   NN   GGGGG   LL       IIII   SSSSS   HH   HH         *
  106.  *      EE       NNN  NN  GG   GG  LL        II   SS   SS  HH   HH         *
  107.  *      EEEE     NNNN NN  GG       LL        II    SSSS    HHHHHHH         *
  108.  *      EE       NN NNNN  GG  GGG  LL        II       SS   HH   HH         *
  109.  *      EE       NN  NNN  GG   GG  LL        II   SS   SS  HH   HH         *
  110.  *      EEEEEEE  NN   NN   GGGG G  LLLLLLL  IIII   SSSSS   HH   HH         *
  111.  *                                                                         *
  112.  *=========================================================================*/
  113.  
  114. #ifdef ENGLISH
  115.  
  116. /* const */ char *txt[]=
  117. {
  118. /*    0  */   "RenΘ Cougnenc 1900",
  119. /*    1  */   "Memory allocation failed !",
  120. /*    2  */   "Warning !",
  121. /*    3  */   "You have replies for",
  122. /*    4  */   "Pack them ?",
  123. /*    5  */   "Loading",
  124. /*    6  */   "No mail found",
  125. /*    7  */   "Try the 'review' command...",
  126. /*    8  */   "Extracting Messages...",
  127. /*    9  */   "empty",
  128. /*   10  */   "Reader",                              /* 1st default prompt */
  129. /*   11  */   "'New' packet seems to be older than existing one",
  130. /*   12  */   "Do you really want to add the messages",
  131. /*   13  */   "No bbs found",
  132. /*   14  */   "Error in CONTROL.DAT.",
  133. /*   15  */   "First Message !",
  134. /*   16  */   "Seek Error",
  135. /*   17  */   "End of messages here.",
  136. /*   18  */   "Read Error",
  137. /*   19  */   " From : ",          /* This is the message header.        */
  138. /*   20  */   "   To : ",          /* Fields must be correctly aligned ! */
  139. /*   21  */   "Subj. : ",
  140. /*   22  */   " Date : ",
  141. /*   23  */   "Number : ",
  142. /*   24  */   " Ref.# : ",
  143. /*   25  */   "  Conf : ",
  144. /*   26  */   "  Time : ",
  145. /*   27  */   "PRIVATE MESSAGE",
  146. /*   28  */   "Unknown conference...",
  147. /*   29  */   "Conference",
  148. /*   30  */   "joined",
  149. /*   31  */   "No new mail",
  150. /*   32  */   "Enter 'n' in any field to abort entry of this message.",
  151. /*   33  */   "Message aborted",
  152. /*   34  */   "Entry too long !  25 chars max.",
  153. /*   35  */   "Too long !  R = Receiver only, N = none = public msg.",
  154. /*   36  */   "Receiver only",
  155. /*   37  */   "Public message",
  156. /*   38  */   "Calling Editor",
  157. /*   39  */   "Save this message in what file? ",
  158. /*   40  */   "Aborted",
  159. /*   41  */   "Message",
  160. /*   42  */   "Saved in",
  161. /*   43  */   "Appended to",
  162. /*   44  */   "No mail in conference",
  163. /*   45  */   "New BBS in this base.",
  164. /*   46  */   "Mail packet older than last base update",
  165. /*   47  */   "Mail not extracted",
  166. /*   48  */   "Unable to remove file",
  167. /*   49  */   "Unable to read file",
  168. /*   50  */   "Unable to create file",
  169. /*   51  */   "Unable to open file",
  170. /*   52  */   "Unable to open configuration file",
  171. /*   53  */   "Reading Configuration file",
  172. /*   54  */   "Error in configuration file",
  173. /*   55  */   "in line",
  174. /*   56  */   "Line",
  175. /*   57  */   "Cleaning",
  176. /*   58  */   "Error Reading file",
  177. /*   59  */   "Quoting message with",
  178. /*   60  */   "More",                      /* This is the 'more' message   */
  179. /*   61  */   "Y/N",                       /* This is the 'yes/no' message */
  180. /*   62  */   "File",                      /* '.. the file..." */
  181. /*   63  */   "Already exists",
  182. /*   64  */   "Delete it ?",
  183. /*   65  */   "Packing Replies in",
  184. /*   66  */   "Last Read pointer updated",
  185. /*   67  */   "No file",
  186. /*   68  */   "Hey !",
  187. /*   69  */   "There is no BBS loaded !",
  188. /*   70  */   "Use 'review' 'load' or 'help' command",
  189. /*   71  */   "Adding messages and creating Indexes",
  190. /*   72  */   "Message too long, sorry...",
  191. /*   73  */   "Error writing file",
  192. /*   74  */   "Error writing index file",
  193. /*   75  */   "Saving message",
  194. /*   76  */   "Adding message to file",
  195. /*   77  */   "Creating file",
  196. /*   78  */   "Conferences available on",
  197. /*   79  */   "Inactive",
  198. /*   80  */   "Active",
  199. /*   81  */   "Number out of range !",
  200. /*   82  */   "Valid messages are",
  201. /*   83  */   "to",
  202. /*   84  */   "Ansi output",
  203. /*   85  */   "on",
  204. /*   86  */   "off",
  205. /*   87  */   "Usage :",
  206. /*   88  */   "load bbs_name",
  207. /*   89  */   "review bbs_name",
  208. /*   90  */   "Conference_Number",
  209. /*   91  */   "or",
  210. /*   92  */   "Conference_Name",
  211. /*   93  */   "type 'conf' to list active conferences",
  212. /*   94  */   "setvbuf() failed in function ",
  213. /*   95  */   "Unauthorized Command !\n",
  214. /*   96  */   " ",  /* Dear, */
  215. /*   97  */   "  In a message on",
  216. /*   98  */   "wrote",
  217. /*   99  */   "you wrote to me",
  218. /*  100  */   "to",
  219. /*  101  */   "Automatic Header",
  220. /*  102  */   "Selective erasing of conference archives",
  221. /*  103  */   "Personal Mail",
  222. /*  104  */   "Reply Mail",
  223. /*  105  */   "KILLED MESSAGE",
  224. /*  106  */   "[Y/n]",
  225. /*  107  */   "[y/N]"
  226. };
  227.  
  228. /* const */ char *hlp[] =
  229. {
  230.  /*    0  */   "",
  231. #ifdef __MSDOS__ 
  232. /*     1  */   " Some of the ATP commands ( read atp.doc for indepth help ):",
  233. #else /* unix */
  234. /*     1  */   " Some of the ATP commands ( type 'man atp' for indepth help ):",
  235. #endif
  236.  /*    2  */   " Quit program"                                         ,
  237.  /*    3  */   " Kill a reply"                                         ,
  238.  /*    4  */   " System Command"                                       ,
  239.  /*    5  */   " Read Next message"                                    ,
  240.  /*    6  */   " Read Previous message"                                ,
  241.  /*    7  */   " Read Again current message"                           ,
  242.  /*    8  */   " Enter a message in current conference"                ,
  243.  /*    9  */   " Join a conference ( by name or by number )"           ,
  244.  /*   10  */   " Toggle ansi / tty output"                             ,
  245.  /*   11  */   " Join Next conference"                                 ,
  246.  /*   12  */   " Reply to current message"                             ,
  247.  /*   13  */   " [ file ] Save message in text file"                   ,
  248.  /*   14  */   " List Conferences"                                     ,
  249.  /*   15  */   " Selectively delete conference message archives"       ,
  250.  /*   16  */   " Load new mail from QWK packet into message base"      ,
  251.  /*   17  */   " Read mail in the base  ( `rev' is the short form ) "  ,
  252.  /*   18  */   " List new files  (`welcome' & `news' also valid )"     , 
  253.  /*   19  */   " Display tagline help menu"                            ,
  254.  /*   20  */   " Display last news"                                    ,
  255.  /*   21  */   " First Screen of the BBS."                             ,
  256.  /*   22  */   " Toggle Automatic Reply Header on / off"               ,
  257.  /*   23  */   " List QWK packets in mail spool directory"             ,
  258.  /*   24  */   " Scan headers forward from current message"                   
  259.  
  260.  };
  261.  
  262. /* const */ char *taghlp[] =
  263. {
  264.  /*    0  */   "",
  265.  /*    1  */   " Tagline Commands for ATP tagline manager: ", 
  266.  /*    2  */   "display list of taglines",
  267.  /*    3  */   "display current tagline",
  268.  /*    4  */   "select numbered tagline from list",
  269.  /*    5  */   "select a random tagline",
  270.  /*    6  */   "swap between volatile and persistent tagline",
  271.  /*    7  */   "toggle auto tagline selection ON/OFF",
  272.  /*    8  */   "when followed by sentence, defines volatile tagline",
  273.  /*    9  */   "displays this menu",
  274.  /*   10  */   "toggle Fidonet style tagline ON/OFF"
  275. };
  276.  
  277. /* const */ char *Months[] =
  278. {
  279.         "January", "February", "March", "April" ,"May", "June", "July",
  280.         "August"  , "September", "October",  "November" , "December"
  281. };
  282.  
  283. #endif  /* ENGLISH */
  284.  
  285. void Title(/* void */)
  286. {
  287.   white(); high();
  288. printf("\n\n\n");
  289. #define grON    "\016"
  290. #define grOFF   "\017"
  291. #define grX1     grON "x" 
  292. #define grX2     grON "x"  grOFF
  293. #define grX3     grON "xaa" grOFF
  294. #define grBGN1 "\t   " grX1
  295. #define grBGN2 "\t   " grX2
  296. #define grEND1 grX1  "\n"
  297. #define grEND2 grX3  "\n"
  298.  
  299. if(graphics){
  300. printf("\t   \016lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk\017\n");
  301. printf("\t   \016x   lqqqqqqqk  lqqqqqqqk  lqqqqqqqk   \017Ver. 1.40  \016x  \n" );
  302. printf("\t   \016x   x lqqqk xa mqqk lqqja x lqqqk xa              \016x  \n" ); 
  303. printf("\t   \016x   x xa  x xa  aax xaaaa x xa  x xa              \016xaa\017  \n" ); 
  304. printf("\t   \016x   x mqqqj xa    x xa    x mqqqj xa              \016xaa\017  \n" );
  305. printf("\t   \016x   x lqqqk xa    x xa    x lqqqqqja              \016xaa\017  \n" );
  306. printf("\t   \016x   x xaaax xa    x xa    x xaaaaaaa              \016xaa\017  \n" ); 
  307. printf("\t   \016x   mqja  mqja    mqja    mqja                    \016xaa\017  \n" );
  308. printf("\t   \016x     aa    aa      aa      aa \017QWK PACKET READER  \016xaa\017  \n" );
  309. printf("\t   \016x\017                                                 \016xaa\017  \n" );
  310. printf("\t   \016x\017                                                 \016xaa\017  \n" );
  311. printf("\t   \016x\017   Copyright 1992 (c) Thomas McWilliams          \016xaa\017  \n" ); 
  312. printf("\t   \016x\017                                                 \016xaa\017  \n" ); 
  313. printf("\t   \016x\017   Free Software subject to terms of Free Soft-  \016xaa\017  \n" ); 
  314. printf("\t   \016x\017   ware Foundation GNU General Public License.   \016xaa\017  \n" ); 
  315. printf("\t   \016x\017   ABSOLUTELY NO WARRANTY,  type `show terms'    \016xaa\017  \n" ); 
  316. printf("\t   \016mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjaa\017\n");
  317. printf("\t   \016   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\017\n");
  318.  
  319. }else if(charset) { /* latin1 or 7bit character set without vt100 graphics */
  320.  
  321. printf("\t   +-------------------------------------------------+\n");
  322. printf("\t   |    ======    =========   ========    Ver. 1.40  |\n");
  323. printf("\t   |   ===  ===   =========   ==     ==              |\n"); 
  324. printf("\t   |   ==    ==      ===      ==     ==              |\n"); 
  325. printf("\t   |   ========      ===      ========               |\n");
  326. printf("\t   |   ==    ==      ===      ==                     |\n");
  327. printf("\t   |   ==    ==      ===      ==                     |\n");       
  328. printf("\t   |   ==    ==      ===      ==  QWK PACKET READER  |\n");
  329. printf("\t   |                                                 |\n");
  330. printf("\t   |                                                 |\n");
  331. printf("\t   |   Copyright 1992 (c) Thomas McWilliams          |\n"); 
  332. printf("\t   |                                                 |\n"); 
  333. printf("\t   |   Free Software subject to terms of Free Soft-  |\n"); 
  334. printf("\t   |   ware Foundation GNU General Public License.   |\n"); 
  335. printf("\t   |   ABSOLUTELY NO WARRANTY,  type `show terms'    |\n"); 
  336. printf("\t   +-------------------------------------------------+\n\n");
  337. } else {  /* msdos character set */
  338. printf("\t   ┌─────────────────────────────────────────────────┐\n");
  339. printf("\t   │   ┌───────┐  ┌───────┐  ┌───────┐    Ver. 1.40  │\n");
  340. printf("\t   │   │ ┌───┐ │▒ └──┐ ┌──┘▒ │ ┌───┐ │▒              │\n");
  341. printf("\t   │   │ │▒  │ │▒  ▒▒│ │▒▒▒▒ │ │▒  │ │▒              │▒▒\n");
  342. printf("\t   │   │ └───┘ │▒    │ │▒    │ └───┘ │▒              │▒▒\n");
  343. printf("\t   │   │ ┌───  │▒    │ │▒    │ ┌─────┘▒              │▒▒\n");
  344. printf("\t   │   │ │▒▒▒│ │▒    │ │▒    │ │▒▒▒▒▒▒▒              │▒▒\n");
  345. printf("\t   │   └─┘▒  └─┘▒    └─┘▒    └─┘▒                    │▒▒\n");
  346. printf("\t   │     ▒▒    ▒▒      ▒▒      ▒▒  QWK PACKET READER │▒▒\n");
  347. printf("\t   │                                                 │▒▒\n");
  348. printf("\t   │                                                 │▒▒\n");
  349. printf("\t   │   Copyright 1992 (c) Thomas McWilliams          │▒▒\n");
  350. printf("\t   │                                                 │▒▒\n");
  351. printf("\t   │   Free Software subject to terms of Free Soft-  │▒▒\n");
  352. printf("\t   │   ware Foundation GNU General Public License.   │▒▒\n");
  353. printf("\t   │   ABSOLUTELY NO WARRANTY,  type `show terms'    │▒▒\n");
  354. printf("\t   └─────────────────────────────────────────────────┘▒▒\n");
  355. printf("\t      ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒\n");
  356. }
  357.   clear();
  358. }
  359.  
  360.  
  361.  
  362. /*=========================================================================*
  363.  *                                                                         *
  364.  *       FFFFFFF  RRRRRR   EEEEEEE  NN   NN   CCCCC   HH   HH              *
  365.  *       FF       RR   RR  EE       NNN  NN  CC   CC  HH   HH              *
  366.  *       FFFF     RR   RR  EEEE     NNNN NN  CC       HHHHHHH              *
  367.  *       FF       RRRRRR   EE       NN NNNN  CC       HH   HH              *
  368.  *       FF       RR  RR   EE       NN  NNN  CC   CC  HH   HH              *
  369.  *       FF       RR   RR  EEEEEEE  NN   NN   CCCCC   HH   HH              *
  370.  *                                                                         *
  371.  *=========================================================================*/
  372.  
  373. #ifdef FRENCH
  374.  
  375. #ifdef linux    /* use LINUX high ASCII characters */
  376.  
  377. /* const */ char *txt[]=
  378. {
  379. /*    0  */   "RenΘ Cougnenc 1990"   ,
  380. /*    1  */   "Allocation mΘmoire refusΘe !"  ,
  381. /*    2  */   "Attention !",
  382. /*    3  */   "Vous avez des rΘponses pour",
  383. /*    4  */   "Les compacter ?",
  384. /*    5  */   "Chargement de",
  385. /*    6  */   "Pas de courrier trouvΘ",
  386. /*    7  */   "Essayez la commande 'revois'...",
  387. /*    8  */   "DΘcompactage des messages...",
  388. /*    9  */   "vide",
  389. /*   10  */   "Reader",                              /* 1st default prompt */
  390. /*   11  */   "Le 'Nouveau' paquet semble plus vieux que la derniΦre misΘ α jour",
  391. /*   12  */   "Voulez-vous vraiment rajouter les messages",
  392. /*   13  */   "Pas de BBS trouvΘ",
  393. /*   14  */   "Erreur dans CONTROL.DAT.",
  394. /*   15  */   "Premier message !",
  395. /*   16  */   "Seek Error",
  396. /*   17  */   "Plus de messages ici.",
  397. /*   18  */   "Erreur de lecture",
  398.  
  399. /*   19  */   "Auteur: ",          /* This is the message header.        */
  400. /*   20  */   " Pour : ",          /* Fields must be correctly aligned ! */
  401. /*   21  */   "Sujet : ",
  402. /*   22  */   " Date : ",
  403. /*   23  */   "NumΘro : ",
  404. /*   24  */   "RΘf.N░ : ",
  405. /*   25  */   "  Conf : ",
  406. /*   26  */   " Heure : ",
  407. /*   27  */   "MESSAGE  PRIVE",
  408. /*   28  */   "ConfΘrence inconnue...",
  409. /*   29  */   "ConfΘrence",
  410. /*   30  */   "rejointe",
  411. /*   31  */   "Pas de nouveaux messages",
  412. /*   32  */   "Entrez 'n' pour abandonner la saisie de ce message.",
  413. /*   33  */   "Message abandonnΘ",
  414. /*   34  */   "EntrΘe trop longue !  25 caractΦres max.",
  415. /*   35  */   "Trop long !  R = Receceveur seul, N = message public.",
  416. /*   36  */   "Message PRIVE",
  417. /*   37  */   "Message Public",
  418. /*   38  */   "Appel de l'Θditeur",
  419. /*   39  */   "Sauver ce message dans le fichier : ",
  420. /*   40  */   "Abandon",
  421. /*   41  */   "Message",
  422. /*   42  */   "SauvΘ dans",
  423. /*   43  */   "RajoutΘ α",
  424. /*   44  */   "pas de message dans la confΘrence",
  425. /*   45  */   "Nouveau BBS dans cette base.",
  426. /*   46  */   "Paquet QWK plus ancien que la derniΦre mise α jour",
  427. /*   47  */   "Courrier non traitΘ",
  428. /*   48  */   "Impossible de supprimer le fichier",
  429. /*   49  */   "Impossible de lire le fichier",
  430. /*   50  */   "Impossible de crΘer le fichier",
  431. /*   51  */   "Impossible d'ouvrir le fichier",
  432. /*   52  */   "Impossible d'ouvrir le fichier de configuration",
  433. /*   53  */   "Lecture du fichier de configuration",
  434. /*   54  */   "Error dans le fichier de configuration",
  435. /*   55  */   "α la ligne",
  436. /*   56  */   "Ligne",
  437. /*   57  */   "Nettoyage de",
  438. /*   58  */   "Erreur de lecture sur le fichier",
  439. /*   59  */   "Annotation du message avec",
  440. /*   60  */   "Encore",                      /* This is the 'more' message   */
  441. /*   61  */   "O/N",                       /* This is the 'yes/no' message */
  442. /*   62  */   "Le fichier",                      /* '.. the file..." */
  443. /*   63  */   "existe dΘjα",
  444. /*   64  */   "Le supprimer ?",
  445. /*   65  */   "Compactage des rΘponses dans",
  446. /*   66  */   "Pointeur de lecture mis α jour",
  447. /*   67  */   "Pas de fichier",
  448. /*   68  */   "Hola !",
  449. /*   69  */   "Il n'y a pas de BBS chargΘ !",
  450. /*   70  */   "Utilisez les commandes 'revois' 'load' ou 'aide'",
  451. /*   71  */   "Ajout des messages α la base et crΘation des index",
  452. /*   72  */   "DΘsolΘ, il y a un message trop gros...",
  453. /*   73  */   "Erreur en Θcriture du fichier",
  454. /*   74  */   "Error d'Θcriture du fichier index",
  455. /*   75  */   "Sauvegarde du message",
  456. /*   76  */   "Ajout du message au fichier",
  457. /*   77  */   "CrΘation du fichier",
  458.  
  459. /*   78  */   "Liste des confΘrences sur",
  460. /*   79  */   "Inactive",
  461. /*   80  */   "Active",
  462.  
  463. /*   81  */   "Nombre hors limites !",
  464. /*   82  */   "Les messages valides vont de",
  465. /*   83  */   "α",
  466.  
  467. /*   84  */   "Mode Ansi",
  468. /*   85  */   "en service",
  469. /*   86  */   "hors service",
  470.  
  471. /*   87  */   "Syntaxe :",
  472. /*   88  */   "load nom_du_serveur",
  473. /*   89  */   "revois nom_du_serveur",
  474. /*   90  */   "NumΘro_de_confΘrence",
  475. /*   91  */   "ou",
  476. /*   92  */   "Nom_de_confΘrence",
  477. /*   93  */   "tapez 'conf' pour la liste des confΘrences",
  478.  
  479. /*   94  */   "setvbuf() refusΘ dans fonction ",
  480. /*   95  */   "Commande Interdite !\n"
  481.               "Vous devez compiler vous-mΩme le programme pour cela !\n",
  482.  
  483. /*   96  */   "Cher",
  484. /*   97  */   "Dans un message du",
  485. /*   98  */   "vous Θcrivez",
  486. /*   99  */   "vous m'Θcrivez",
  487. /*  100  */   "destinΘ α",
  488. /*  101  */   "En-tΩte automatique",
  489. /*  102  */   "Effacement sΘlectif des confΘrences", 
  490. /*  103  */   "Personnel" ,
  491. /*  104  */   "RΘponses",
  492. /*  105  */   "MESSAGE TUE",
  493. /*  106  */   "[O/n]",
  494. /*  107  */   "[o/N]"
  495. };
  496.  
  497. /* const */ char *hlp[] =
  498. {
  499.  /*    0  */   "",
  500.  /*    1  */   "Commandes disponibles :"                              ,
  501.  /*    2  */   "Quitter le programme, retour au systΦme"              ,
  502.  /*    3  */   "Tuer une rΘponse"                                     ,
  503.  /*    4  */   "Commande systΦme"                                     ,
  504.  /*    5  */   "Lecture du message suivant"                           ,
  505.  /*    6  */   "Lecture du message prΘcΘdant"                         ,
  506.  /*    7  */   "RΘaffichage du message courant"                       ,
  507.  /*    8  */   "Entrer un message dans la confΘrence courante"        ,
  508.  /*    9  */   "Rejoindre une confΘrence. ( par nom ou par numΘro )"  ,
  509.  /*   10  */   "Bascule affichage Ansi-Couleur / tty - monochrome"    ,
  510.  /*   11  */   "Rejoindre la confΘrence suivante"                     ,
  511.  /*   12  */   "RΘpondre au message courant"                          ,
  512.  /*   13  */   "[ fichier ] Sauver message dans fichier (mode append)",
  513.  /*   14  */   "Liste des confΘrences disponibles"                    ,
  514.  /*   15  */   "Effacement de(s) confΘrence(s)"                       ,
  515.  /*   16  */   "Charge le nouveau courrier d'un serveur"              ,
  516.  /*   17  */   "Lire le mail d'un serveur dans la base"               ,
  517.  /*   18  */   "Nouveaux fichiers pour cette session"                 ,
  518.  /*   19  */   "Remet la signature normale. (tag ?  = aide)"          ,
  519.  /*   20  */   "Affiche les derniΦres nouvelles s'il y en a..."       ,
  520.  /*   21  */   "Affiche le logo du serveur"                           ,
  521.  /*   22  */   "En-tΩte de lettre automatique oui / non"              ,
  522.  /*   23  */   "Liste des paquets QWK "                               ,
  523.  /*   24  */   "Scruter les en-tΩtes des messages"
  524.  
  525.  };
  526.  
  527. /* const */ char *taghlp[] =
  528. {
  529.  /*    0  */   "display list of taglines",
  530.  /*    1  */   "display current tagline",
  531.  /*    3  */   "select numbered tagline from list",
  532.  /*    2  */   "select a random tagline",
  533.  /*    4  */   "swap between volatile and persistent tagline",
  534.  /*    5  */   "toggle auto tagline selection ON/OFF",
  535.  /*    6  */   "when followed by any other text, defines volatile tagline",
  536.  /*    7  */   "displays this menu"
  537. };
  538.  
  539. /* const */ char *Months[] =
  540. {
  541.         "Janvier", "FΘvrier", "Mars", "Avril" ,"Mai", "Juin", "Juillet",
  542.         "Ao√t"  , "Septembre", "Octobre",  "Novembre" , "Decembre"
  543. };
  544.  
  545.  
  546. #else     /* DOS charcter set. */
  547.  
  548. /* const */ char *txt[]=
  549. {
  550. /*    0  */   "René Cougnenc 1990"   ,
  551. /*    1  */   "Allocation mémoire refusée !"  ,
  552. /*    2  */   "Attention !",
  553. /*    3  */   "Vous avez des réponses pour",
  554. /*    4  */   "Les compacter ?",
  555. /*    5  */   "Chargement de",
  556. /*    6  */   "Pas de courrier trouvé",
  557. /*    7  */   "Essayez la commande 'revois'...",
  558. /*    8  */   "Décompactage des messages...",
  559. /*    9  */   "vide",
  560. /*   10  */   "Reader",                              /* 1st default prompt */
  561. /*   11  */   "Le 'Nouveau' paquet semble plus vieux que la dernière misé à jour",
  562. /*   12  */   "Voulez-vous vraiment rajouter les messages",
  563. /*   13  */   "Pas de BBS trouvé",
  564. /*   14  */   "Erreur dans CONTROL.DAT.",
  565. /*   15  */   "Premier message !",
  566. /*   16  */   "Seek Error",
  567. /*   17  */   "Plus de messages ici.",
  568. /*   18  */   "Erreur de lecture",
  569.  
  570. /*   19  */   "Auteur: ",          /* This is the message header.        */
  571. /*   20  */   " Pour : ",          /* Fields must be correctly aligned ! */
  572. /*   21  */   "Sujet : ",
  573. /*   22  */   " Date : ",
  574. /*   23  */   "Numéro : ",
  575. /*   24  */   "Réf.N° : ",
  576. /*   25  */   "  Conf : ",
  577. /*   26  */   " Heure : ",
  578. /*   27  */   "MESSAGE  PRIVE",
  579. /*   28  */   "Conférence inconnue...",
  580. /*   29  */   "Conférence",
  581. /*   30  */   "rejointe",
  582. /*   31  */   "Pas de nouveaux messages",
  583. /*   32  */   "Entrez 'n' pour abandonner la saisie de ce message.",
  584. /*   33  */   "Message abandonné",
  585. /*   34  */   "Entrée trop longue !  25 caractères max.",
  586. /*   35  */   "Trop long !  R = Receceveur seul, N = message public.",
  587. /*   36  */   "Message PRIVE",
  588. /*   37  */   "Message Public",
  589. /*   38  */   "Appel de l'éditeur",
  590. /*   39  */   "Sauver ce message dans le fichier : ",
  591. /*   40  */   "Abandon",
  592. /*   41  */   "Message",
  593. /*   42  */   "Sauvé dans",
  594. /*   43  */   "Rajouté à",
  595. /*   44  */   "pas de message dans la conférence",
  596. /*   45  */   "Nouveau BBS dans cette base.",
  597. /*   46  */   "Paquet QWK plus ancien que la dernière mise à jour",
  598. /*   47  */   "Courrier non traité",
  599. /*   48  */   "Impossible de supprimer le fichier",
  600. /*   49  */   "Impossible de lire le fichier",
  601. /*   50  */   "Impossible de créer le fichier",
  602. /*   51  */   "Impossible d'ouvrir le fichier",
  603. /*   52  */   "Impossible d'ouvrir le fichier de configuration",
  604. /*   53  */   "Lecture du fichier de configuration",
  605. /*   54  */   "Error dans le fichier de configuration",
  606. /*   55  */   "à la ligne",
  607. /*   56  */   "Ligne",
  608. /*   57  */   "Nettoyage de",
  609. /*   58  */   "Erreur de lecture sur le fichier",
  610. /*   59  */   "Annotation du message avec",
  611. /*   60  */   "Encore",                      /* This is the 'more' message   */
  612. /*   61  */   "O/N",                       /* This is the 'yes/no' message */
  613. /*   62  */   "Le fichier",                      /* '.. the file..." */
  614. /*   63  */   "existe déjà",
  615. /*   64  */   "Le supprimer ?",
  616. /*   65  */   "Compactage des réponses dans",
  617. /*   66  */   "Pointeur de lecture mis à jour",
  618. /*   67  */   "Pas de fichier",
  619. /*   68  */   "Hola !",
  620. /*   69  */   "Il n'y a pas de BBS chargé !",
  621. /*   70  */   "Utilisez les commandes 'revois' 'load' ou 'aide'",
  622. /*   71  */   "Ajout des messages à la base et création des index",
  623. /*   72  */   "Désolé, il y a un message trop gros...",
  624. /*   73  */   "Erreur en écriture du fichier",
  625. /*   74  */   "Error d'écriture du fichier index",
  626. /*   75  */   "Sauvegarde du message",
  627. /*   76  */   "Ajout du message au fichier",
  628. /*   77  */   "Création du fichier",
  629.  
  630. /*   78  */   "Liste des conférences sur",
  631. /*   79  */   "Inactive",
  632. /*   80  */   "Active",
  633.  
  634. /*   81  */   "Nombre hors limites !",
  635. /*   82  */   "Les messages valides vont de",
  636. /*   83  */   "à",
  637.  
  638. /*   84  */   "Mode Ansi",
  639. /*   85  */   "en service",
  640. /*   86  */   "hors service",
  641.  
  642. /*   87  */   "Syntaxe :",
  643. /*   88  */   "load nom_du_serveur",
  644. /*   89  */   "revois nom_du_serveur",
  645. /*   90  */   "Numéro_de_conférence",
  646. /*   91  */   "ou",
  647. /*   92  */   "Nom_de_conférence",
  648. /*   93  */   "tapez 'conf' pour la liste des conférences",
  649.  
  650. /*   94  */   "setvbuf() refusé dans fonction ",
  651. /*   95  */   "Commande Interdite !\nVous devez compiler vous-même le programme pour cela !\n",
  652. /*   96  */   "Cher",
  653. /*   97  */   "Dans un message du",
  654. /*   98  */   "vous écrivez",
  655. /*   99  */   "vous m'écrivez",
  656. /*  100  */   "destiné à",
  657. /*  101  */   "En-tête automatique",
  658. /*  102  */   "Effacement sΘlectif des confΘrences", 
  659. /*  103  */   "Personnel" ,
  660. /*  104  */   "Réponses",
  661. /*  105  */   "MESSAGE TUE",
  662. /*  106  */   "[O/n]",
  663. /*  107  */   "[o/N]"
  664. };
  665.  
  666. /* const */ char *hlp[] =
  667. {
  668.  /*    0  */   "",
  669.  /*    1  */   "Commandes disponibles :"                              ,
  670.  /*    2  */   "Quitter le programme, retour au système"              ,
  671.  /*    3  */   "Tuer une réponse"                                     ,
  672.  /*    4  */   "Commande système"                                     ,
  673.  /*    5  */   "Lecture du message suivant"                           ,
  674.  /*    6  */   "Lecture du message précédant"                         ,
  675.  /*    7  */   "Réaffichage du message courant"                       ,
  676.  /*    8  */   "Entrer un message dans la conférence courante"        ,
  677.  /*    9  */   "Rejoindre une conférence. ( par nom ou par numéro )"  ,
  678.  /*   10  */   "Bascule affichage Ansi-Couleur / tty - monochrome"    ,
  679.  /*   11  */   "Rejoindre la conférence suivante"                     ,
  680.  /*   12  */   "Répondre au message courant"                          ,
  681.  /*   13  */   "[ fichier ] Sauver message dans fichier (mode append)",
  682.  /*   14  */   "Liste des conférences disponibles"                    ,
  683.  /*   15  */   "Effacement de(s) conférence(s)"                       ,
  684.  /*   16  */   "Charge le nouveau courrier d'un serveur"              ,
  685.  /*   17  */   "Lire le mail d'un serveur dans la base"               ,
  686.  /*   18  */   "Nouveaux fichiers pour cette session"                 ,
  687.  /*   19  */   "Remet la signature normale. (tag ?  = aide)"          ,
  688.  /*   20  */   "Affiche les dernières nouvelles s'il y en a..."       ,
  689.  /*   21  */   "Affiche le logo du serveur"                           ,
  690.  /*   22  */   "En-tête de lettre automatique oui / non"             ,
  691.  /*   23  */   "Liste des QWK paquets QWK"                              ,
  692.  /*   24  */   "Scruter les en-têtes des messages"
  693.  
  694.  };
  695.  
  696. /* const */ char *taghlp[] =
  697. {
  698.  /*    0  */   "display list of taglines",
  699.  /*    1  */   "display current tagline",
  700.  /*    3  */   "select numbered tagline from list",
  701.  /*    2  */   "select a random tagline",
  702.  /*    4  */   "swap between volatile and persistent tagline",
  703.  /*    5  */   "toggle auto tagline selection ON/OFF",
  704.  /*    6  */   "when followed by any other text, defines volatile tagline",
  705.  /*    7  */   "displays this menu"
  706. } ;
  707.  
  708. /* const */ char *Months[] =
  709. {
  710.         "Janvier", "Février", "Mars", "Avril" ,"Mai", "Juin", "Juillet",
  711.         "Août"  , "Septembre", "Octobre",  "Novembre" , "Decembre"
  712. };
  713.  
  714. #endif    /* linux */
  715.  
  716. #endif    /* FRENCH */ 
  717.