ftp.nice.ch/pub/next/unix/text/NeXT_French_Dictionary.3.1.08.I.bs.tar.gz#/NeXT_French_Dictionary3.1.08/src/next_francais/conv_iso_next/iso2next.c

This is iso2next.c in view mode; [Download] [Up]

#include <stdio.h>


FILE   *fileIn,*fileOut;
char   fileNameIn[30];
char   fileNameOut[30];
char   shCommand[80];
int    pipeOk = 0;


int localGet(valuePtr)
int *valuePtr;
{
  if (pipeOk == 0){
    *valuePtr = getc(fileIn);
  }else{ 
    *valuePtr = getchar();
  }
  return *valuePtr;
}

localPut(value)
int  value;
{
  if (pipeOk == 0){
    putc(value,fileOut);
  }else{
    putchar(value);
  }
}

processFile()
{
     int current_char;

     while ( localGet(&current_char) != EOF)
     {
        if (current_char < 128){
	   localPut(current_char);
	}else{
	   switch ( current_char)
	   { 
	     case (int)128 : localPut(32);
                      break;
	     case (int)129 : localPut(32);
                      break;
	     case (int)130 : localPut(32);
                      break;
	     case (int)131 : localPut(32);
                      break;
	     case (int)132 : localPut(32);
                      break;
	     case (int)133 : localPut(32);
                      break;
	     case (int)134 : localPut(32);
                      break;
	     case (int)135 : localPut(32);
                      break;
	     case (int)136 : localPut(32);
                      break;
	     case (int)137 : localPut(32);
                      break;
	     case (int)138 : localPut(32);
                      break;
	     case (int)139 : localPut(32);
                      break;
	     case (int)140 : localPut(32);
                      break;
	     case (int)141 : localPut(32);
                      break;
	     case (int)142 : localPut(32);
                      break;
	     case (int)143 : localPut(32);
                      break;
	     case (int)144:  localPut(245);
                      break;
	     case (int)145 : localPut(193);
                      break;
	     case (int)146 : localPut(194);
                      break;
	     case (int)147 : localPut(195);
                      break;
	     case (int)148 : localPut(196);
                      break;
	     case (int)149 : localPut(197);
                      break;
	     case (int)150 : localPut(198);
                      break;
	     case (int)151 : localPut(199);
                      break;
	     case (int)152 : localPut(200);
                      break;
	     case (int)153 : localPut(32);
                      break;
	     case (int)154 : localPut(202);
                      break;
	     case (int)155 : localPut(203);
                      break;
	     case (int)156 : localPut(32);
                      break;
	     case (int)157 : localPut(205);
                      break;
	     case (int)158 : localPut(206);
                      break;
	     case (int)159 : localPut(207);
                      break;
	     case (int)160 : localPut(32);
                      break;
	     case (int)161 : localPut(161);
                      break;
	     case (int)162 : localPut(162);
                      break;
	     case (int)163 : localPut(163);
                      break;
	     case (int)164 : localPut(168);
                      break;
	     case (int)165 : localPut(165);
                      break;
	     case (int)166 : localPut(181);
                      break;
	     case (int)167 : localPut(167);
                      break;
	     case (int)168 : localPut(200);
                      break;
	     case (int)169 : localPut(160);
                      break;
	     case (int)170 : localPut(227);
                      break;
	     case (int)171 : localPut(171);
                      break;
	     case (int)172 : localPut(190);
                      break;
	     case (int)173 : localPut(45);
                      break;
	     case (int)174 : localPut(176);
                      break;
	     case (int)175 : localPut(197);
                      break;
	     case (int)176 : localPut(202);
                      break;
	     case (int)177 : localPut(209);
                      break;
	     case (int)178 : localPut(201);
                      break;
	     case (int)179 : localPut(204);
                      break;
	     case (int)180 : localPut(194);
                      break;
	     case (int)181 : localPut(157);
                      break;
	     case (int)182 : localPut(182);
                      break;
	     case (int)183 : localPut(180);
                      break;
	     case (int)184 : localPut(203);
                      break;
	     case (int)185 : localPut(192);
                      break;
	     case (int)186 : localPut(235);
                      break;
	     case (int)187 : localPut(187);
                      break;
	     case (int)188 : localPut(210);
                      break;
	     case (int)189 : localPut(211);
                      break;
	     case (int)190 : localPut(212);
                      break;
	     case (int)191 : localPut(191);
                      break;
	     case (int)192 : localPut(129);
                      break;
	     case (int)193 : localPut(130);
                      break;
	     case (int)194 : localPut(131);
                      break;
	     case (int)195 : localPut(132);
                      break;
	     case (int)196 : localPut(133);
                      break;
	     case (int)197 : localPut(134);
                      break;
	     case (int)198 : localPut(225);
                      break;
	     case (int)199 : localPut(135);
                      break;
	     case (int)200 : localPut(136);
                      break;
	     case (int)201 : localPut(137);
                      break;
	     case (int)202 : localPut(138);
                      break;
	     case (int)203 : localPut(139);
                      break;
	     case (int)204 : localPut(140);
                      break;
	     case (int)205 : localPut(141);
                      break;
	     case (int)206 : localPut(142);
                      break;
	     case (int)207 : localPut(143);
                      break;
	     case (int)208 : localPut(144);
                      break;
	     case (int)209 : localPut(145);
                      break;
	     case (int)210 : localPut(146);
                      break;
	     case (int)211 : localPut(147);
                      break;
	     case (int)212 : localPut(148);
                      break;
	     case (int)213 : localPut(149);
                      break;
	     case (int)214 : localPut(150);
                      break;
	     case (int)215 : localPut(158);
                      break;
	     case (int)216 : localPut(233);
                      break;
	     case (int)217 : localPut(151);
                      break;
	     case (int)218 : localPut(152);
                      break;
	     case (int)219 : localPut(153);
                      break;
	     case (int)220 : localPut(154);
                      break;
	     case (int)221 : localPut(155);
                      break;
	     case (int)222 : localPut(156);
                      break;
	     case (int)223 : localPut(251);
                      break;
	     case (int)224 : localPut(213);
                      break;
	     case (int)225 : localPut(214);
                      break;
	     case (int)226 : localPut(215);
                      break;
	     case (int)227 : localPut(216);
                      break;
	     case (int)228 : localPut(217);
                      break;
	     case (int)229 : localPut(218);
                      break;
	     case (int)230 : localPut(241);
                      break;
	     case (int)231 : localPut(219);
                      break;
	     case (int)232 : localPut(220);
                      break;
	     case (int)233 : localPut(221);
                      break;
	     case (int)234 : localPut(222);
                      break;
	     case (int)235 : localPut(223);
                      break;
	     case (int)236 : localPut(224);
                      break;
	     case (int)237 : localPut(226);
                      break;
	     case (int)238 : localPut(228);
                      break;
	     case (int)239 : localPut(229);
                      break;
	     case (int)240 : localPut(230);
                      break;
	     case (int)241 : localPut(231);
                      break;
	     case (int)242 : localPut(236);
                      break;
	     case (int)243 : localPut(237);
                      break;
	     case (int)244 : localPut(238);
                      break;
	     case (int)245 : localPut(239);
                      break;
	     case (int)246 : localPut(240);
                      break;
	     case (int)247 : localPut(159);
                      break;
	     case (int)248 : localPut(249);
                      break;
	     case (int)249 : localPut(242);
                      break;
	     case (int)250 : localPut(243);
                      break;
	     case (int)251 : localPut(244);
                      break;
	     case (int)252 : localPut(246);
                      break;
	     case (int)253 : localPut(247);
                      break;
	     case (int)254 : localPut(252);
                      break;
	     case (int)255 : localPut(253);
                      break;
	     default : localPut(current_char);
	               break;
	   }
	}
    }
}


main(argc,argv)
char **argv;
int  argc;
{
   int k;
   int m=1;
   int keepOrig = 1;
   char *p;
       
   /* test du nombre de parametres */
   if ( argc < 2 )
   {
       pipeOk = 1;
       processFile();
   }else{
       p = argv[1];
       if (*p == '-'){
         m++;
	 if (*(p+1) == 'd'){
	   keepOrig = 0;
         }
	 if (*(p+1) == 'h'){
	   printf("iso2next V1.0 April 94 by Franck Vamparys@litnext1.epfl.ch\n");
	   printf("    -d  to not keep the original file\n");
	   printf("    -h  help\n");
	   printf("ex: iso2next file1\n");
	   printf("    iso2next -d *.rtf\n");
	   printf("    cat file1 | iso2next > file2\n");
	   exit(0);
         }
       }
       for (k=m;k<argc;k++){
	 
         strcpy(fileNameIn,argv[k]);
         strcat(fileNameIn,".old_iso2next");
         strcpy(fileNameOut,argv[k]);

         strcpy(shCommand,"mv ");
         strcat(shCommand,fileNameOut);
         strcat(shCommand," ");
         strcat(shCommand,fileNameIn);
	 system(shCommand);

         fileIn = fopen(fileNameIn,"r");

         /* ouvrir le fichier en entree */
         if ( fileIn == NULL ) 
	 {
	   printf("cannot access the file: %s\n", argv[k]);
	   exit (-1);
	 };
       
       /* ouvrir le fichier en sortie */

         if ( (fileOut = fopen(fileNameOut,"w")) == NULL )
	 {
	   printf("cannot open file: %s\n", fileNameOut);
	   exit (-1);
	 }

         processFile();

         fclose(fileIn);
         fclose(fileOut);

	 if (keepOrig == 0){
           strcpy(shCommand,"rm ");
           strcat(shCommand,fileNameIn);
           system(shCommand);
	 }

         };
    };
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.