version 1.4, 2010/02/10 10:14:25
|
version 1.80, 2025/04/15 10:17:56
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.0.11 |
RPL/2 (R) version 4.1.36 |
Copyright (C) 1989-2010 Dr. BERTRAND Joël |
Copyright (C) 1989-2025 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 20
|
Line 20
|
*/ |
*/ |
|
|
|
|
#include "rpl.conv.h" |
#include "rpl-conv.h" |
#include "tex.conv.h" |
#include "tex-conv.h" |
|
|
|
|
/* |
/* |
Line 67 creation_fichier_tex(struct_processus *s
|
Line 67 creation_fichier_tex(struct_processus *s
|
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\documentclass[%s,%s]{%s}\n\n", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\documentclass[%s,%s]{%s}\n\n", |
(*s_etat_processus).format_papier, ds_tex_taille_corps, |
(*s_etat_processus).format_papier, ds_tex_taille_corps, |
ds_tex_classe_document) < 0) |
ds_tex_classe_document) < 0) |
{ |
{ |
Line 76 creation_fichier_tex(struct_processus *s
|
Line 77 creation_fichier_tex(struct_processus *s
|
} |
} |
|
|
|
|
if (fprintf(fichier_impression, "\\usepackage[%s]{fontenc}\n", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
ds_tex_encodage_1) < 0) |
"\\usepackage[%s]{fontenc}\n", ds_tex_encodage_1) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage[%s]{inputenc}\n", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
ds_tex_encodage_2) < 0) |
"\\usepackage[%s]{inputenc}\n", ds_tex_encodage_2) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage[%s]{babel}\n\n", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
ds_tex_langue) < 0) |
"\\usepackage[%s]{babel}\n\n", ds_tex_langue) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage{latexsym}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\usepackage{latexsym}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage[dvips]{color}\n\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\usepackage[dvips]{color}\n\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage{amsmath}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\usepackage{amsmath}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage{amsfonts}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\usepackage{amsfonts}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\usepackage{amssymb}\n\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\usepackage{amssymb}\n\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\title{Fichier d'impression}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\title{Fichier d'impression}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\author{RPL/2 Version %s}\n", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
d_version_rpl) < 0) |
"\\author{RPL/2 Version %s}\n", d_version_rpl) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\date{}\n\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "\\date{}\n\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\begin{document}\n\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{document}\n\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\thispagestyle{%s}\n", ds_tex_style) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\thispagestyle{%s}\n", ds_tex_style) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
} |
} |
|
|
if (fprintf(fichier_impression, "\\pagestyle{%s}\n\n", ds_tex_style) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\pagestyle{%s}\n\n", ds_tex_style) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return(NULL); |
return(NULL); |
Line 214 formateur_tex(struct_processus *s_etat_p
|
Line 224 formateur_tex(struct_processus *s_etat_p
|
|
|
if ((*s_objet).type == BIN) |
if ((*s_objet).type == BIN) |
{ |
{ |
if (fprintf(fichier_impression, "$$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 223 formateur_tex(struct_processus *s_etat_p
|
Line 233 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "$$\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$$\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 239 formateur_tex(struct_processus *s_etat_p
|
Line 249 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 254 formateur_tex(struct_processus *s_etat_p
|
Line 264 formateur_tex(struct_processus *s_etat_p
|
((*s_objet).type == INT) || |
((*s_objet).type == INT) || |
((*s_objet).type == REL)) |
((*s_objet).type == REL)) |
{ |
{ |
if (fprintf(fichier_impression, "$$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 263 formateur_tex(struct_processus *s_etat_p
|
Line 273 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "$$\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$$\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 276 formateur_tex(struct_processus *s_etat_p
|
Line 286 formateur_tex(struct_processus *s_etat_p
|
|
|
else if ((*s_objet).type == NOM) |
else if ((*s_objet).type == NOM) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{center}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{center}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 285 formateur_tex(struct_processus *s_etat_p
|
Line 296 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\\end{center}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{center}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 300 formateur_tex(struct_processus *s_etat_p
|
Line 312 formateur_tex(struct_processus *s_etat_p
|
((*s_objet).type == VIN) || |
((*s_objet).type == VIN) || |
((*s_objet).type == VRL)) |
((*s_objet).type == VRL)) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 309 formateur_tex(struct_processus *s_etat_p
|
Line 322 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\\nonumber\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\nonumber\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\end{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 330 formateur_tex(struct_processus *s_etat_p
|
Line 345 formateur_tex(struct_processus *s_etat_p
|
((*s_objet).type == MRL) || |
((*s_objet).type == MRL) || |
((*s_objet).type == MCX)) |
((*s_objet).type == MCX)) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 339 formateur_tex(struct_processus *s_etat_p
|
Line 355 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\\nonumber\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\nonumber\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\end{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 359 formateur_tex(struct_processus *s_etat_p
|
Line 377 formateur_tex(struct_processus *s_etat_p
|
else if (((*s_objet).type == RPN) || |
else if (((*s_objet).type == RPN) || |
((*s_objet).type == LST)) |
((*s_objet).type == LST)) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{center}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{center}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 368 formateur_tex(struct_processus *s_etat_p
|
Line 387 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\\end{center}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{center}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 381 formateur_tex(struct_processus *s_etat_p
|
Line 401 formateur_tex(struct_processus *s_etat_p
|
|
|
else if ((*s_objet).type == ALG) |
else if ((*s_objet).type == ALG) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 390 formateur_tex(struct_processus *s_etat_p
|
Line 411 formateur_tex(struct_processus *s_etat_p
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
s_objet, environnement); |
s_objet, environnement); |
|
|
if (fprintf(fichier_impression, "\\nonumber\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\nonumber\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\end{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 474 formateur_elementaire_tex(struct_process
|
Line 497 formateur_elementaire_tex(struct_process
|
unsigned char test_instruction; |
unsigned char test_instruction; |
unsigned char *tampon; |
unsigned char *tampon; |
|
|
unsigned long i; |
integer8 i; |
unsigned long j; |
integer8 j; |
unsigned long niveau; |
integer8 niveau; |
unsigned long nombre_arguments; |
integer8 nombre_arguments; |
|
|
/* |
/* |
* Entier binaire |
* Entier binaire |
Line 494 formateur_elementaire_tex(struct_process
|
Line 517 formateur_elementaire_tex(struct_process
|
base = ligne[strlen(ligne) - 1]; |
base = ligne[strlen(ligne) - 1]; |
ligne[strlen(ligne) - 1] = d_code_fin_chaine; |
ligne[strlen(ligne) - 1] = d_code_fin_chaine; |
|
|
if (fprintf(fichier_impression, "\\#\\,%s\\text{%c}", |
if (tex_fprintf(s_etat_processus, fichier_impression, |
&(ligne[1]), base) < 0) |
"\\#\\,%s\\text{%c}", &(ligne[1]), base) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 521 formateur_elementaire_tex(struct_process
|
Line 544 formateur_elementaire_tex(struct_process
|
correction_formateur_tex(s_etat_processus, &ligne); |
correction_formateur_tex(s_etat_processus, &ligne); |
} |
} |
|
|
if (fprintf(fichier_impression, "%s", ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "%s", ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 559 formateur_elementaire_tex(struct_process
|
Line 582 formateur_elementaire_tex(struct_process
|
|
|
if ((*s_etat_processus).instruction_valide == 'Y') |
if ((*s_etat_processus).instruction_valide == 'Y') |
{ |
{ |
if ((instruction_majuscule = conversion_majuscule( |
if ((instruction_majuscule = conversion_majuscule(s_etat_processus, |
(*s_etat_processus).instruction_courante)) == NULL) |
(*s_etat_processus).instruction_courante)) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 568 formateur_elementaire_tex(struct_process
|
Line 591 formateur_elementaire_tex(struct_process
|
|
|
if (strcmp(instruction_majuscule, "PI") == 0) |
if (strcmp(instruction_majuscule, "PI") == 0) |
{ |
{ |
if (fprintf(fichier_impression, "$\\pi$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"$\\pi$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 576 formateur_elementaire_tex(struct_process
|
Line 600 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, "\\textrm{%s}", ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\textrm{%s}", ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 587 formateur_elementaire_tex(struct_process
|
Line 612 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, "\\textit{%s}", ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\textit{%s}", ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 615 formateur_elementaire_tex(struct_process
|
Line 641 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\left(") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "\\left(") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 632 formateur_elementaire_tex(struct_process
|
Line 658 formateur_elementaire_tex(struct_process
|
|
|
if (test_cfsf(s_etat_processus, 48) == d_vrai) |
if (test_cfsf(s_etat_processus, 48) == d_vrai) |
{ |
{ |
if (fprintf(fichier_impression, ".\\,") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, ".\\,") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 640 formateur_elementaire_tex(struct_process
|
Line 666 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, ",") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, ",") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 650 formateur_elementaire_tex(struct_process
|
Line 676 formateur_elementaire_tex(struct_process
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
&s_objet_elementaire, environnement); |
&s_objet_elementaire, environnement); |
|
|
if (fprintf(fichier_impression, "\\right)") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "\\right)") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 671 formateur_elementaire_tex(struct_process
|
Line 697 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "%s", ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "%s", ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 686 formateur_elementaire_tex(struct_process
|
Line 712 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == MCX) |
else if ((*s_objet).type == MCX) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 695 formateur_elementaire_tex(struct_process
|
Line 722 formateur_elementaire_tex(struct_process
|
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes; i++) |
.nombre_colonnes; i++) |
{ |
{ |
if (fprintf(fichier_impression, "c") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "c") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
} |
} |
|
|
if (fprintf(fichier_impression, "}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 737 formateur_elementaire_tex(struct_process
|
Line 764 formateur_elementaire_tex(struct_process
|
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes - 1)) |
.nombre_colonnes - 1)) |
{ |
{ |
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 746 formateur_elementaire_tex(struct_process
|
Line 774 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, " & ") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" & ") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 758 formateur_elementaire_tex(struct_process
|
Line 787 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 771 formateur_elementaire_tex(struct_process
|
Line 801 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == MIN) |
else if ((*s_objet).type == MIN) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 780 formateur_elementaire_tex(struct_process
|
Line 811 formateur_elementaire_tex(struct_process
|
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes; i++) |
.nombre_colonnes; i++) |
{ |
{ |
if (fprintf(fichier_impression, "c") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "c") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
} |
} |
|
|
if (fprintf(fichier_impression, "}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 818 formateur_elementaire_tex(struct_process
|
Line 849 formateur_elementaire_tex(struct_process
|
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes - 1)) |
.nombre_colonnes - 1)) |
{ |
{ |
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 827 formateur_elementaire_tex(struct_process
|
Line 859 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, " & ") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" & ") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 839 formateur_elementaire_tex(struct_process
|
Line 872 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 852 formateur_elementaire_tex(struct_process
|
Line 886 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == MRL) |
else if ((*s_objet).type == MRL) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 861 formateur_elementaire_tex(struct_process
|
Line 896 formateur_elementaire_tex(struct_process
|
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
for(i = 0; i < (*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes; i++) |
.nombre_colonnes; i++) |
{ |
{ |
if (fprintf(fichier_impression, "c") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "c") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
} |
} |
|
|
if (fprintf(fichier_impression, "}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 899 formateur_elementaire_tex(struct_process
|
Line 934 formateur_elementaire_tex(struct_process
|
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
if (j == ((*((struct_matrice *) (*s_objet).objet)) |
.nombre_colonnes - 1)) |
.nombre_colonnes - 1)) |
{ |
{ |
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 908 formateur_elementaire_tex(struct_process
|
Line 944 formateur_elementaire_tex(struct_process
|
} |
} |
else |
else |
{ |
{ |
if (fprintf(fichier_impression, " & ") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" & ") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = |
(*s_etat_processus).erreur_systeme = |
d_es_erreur_fichier; |
d_es_erreur_fichier; |
Line 920 formateur_elementaire_tex(struct_process
|
Line 957 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 939 formateur_elementaire_tex(struct_process
|
Line 977 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
for(i = 0; i < strlen(ligne); i++) |
for(i = 0; i < (integer8) strlen(ligne); i++) |
{ |
{ |
switch(ligne[i]) |
switch(ligne[i]) |
{ |
{ |
Line 954 formateur_elementaire_tex(struct_process
|
Line 992 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
strncpy(tampon, ligne, i); |
strncpy(tampon, ligne, (size_t) i); |
strcpy(&(tampon[i]), "\\times 10^{"); |
strcpy(&(tampon[i]), "\\times 10^{"); |
strcat(tampon, &(ligne[++i])); |
strcat(tampon, &(ligne[++i])); |
strcat(tampon, "}"); |
strcat(tampon, "}"); |
Line 976 formateur_elementaire_tex(struct_process
|
Line 1014 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
strncpy(tampon, ligne, ++i); |
strncpy(tampon, ligne, (size_t) ++i); |
strcpy(&(tampon[i]), "\\!"); |
strcpy(&(tampon[i]), "\\!"); |
strcat(tampon, &(ligne[i])); |
strcat(tampon, &(ligne[i])); |
i += 2; |
i += 2; |
Line 989 formateur_elementaire_tex(struct_process
|
Line 1027 formateur_elementaire_tex(struct_process
|
} |
} |
} |
} |
|
|
if (fprintf(fichier_impression, "%s", ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "%s", ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1004 formateur_elementaire_tex(struct_process
|
Line 1042 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == VCX) |
else if ((*s_objet).type == VCX) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{c}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{c}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1031 formateur_elementaire_tex(struct_process
|
Line 1070 formateur_elementaire_tex(struct_process
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
&s_objet_elementaire, environnement); |
&s_objet_elementaire, environnement); |
|
|
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1040 formateur_elementaire_tex(struct_process
|
Line 1080 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1053 formateur_elementaire_tex(struct_process
|
Line 1094 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == VIN) |
else if ((*s_objet).type == VIN) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{c}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{c}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1077 formateur_elementaire_tex(struct_process
|
Line 1119 formateur_elementaire_tex(struct_process
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
&s_objet_elementaire, environnement); |
&s_objet_elementaire, environnement); |
|
|
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1086 formateur_elementaire_tex(struct_process
|
Line 1129 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1099 formateur_elementaire_tex(struct_process
|
Line 1143 formateur_elementaire_tex(struct_process
|
|
|
else if ((*s_objet).type == VRL) |
else if ((*s_objet).type == VRL) |
{ |
{ |
if (fprintf(fichier_impression, "\\left(\\begin{array}{c}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left(\\begin{array}{c}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1123 formateur_elementaire_tex(struct_process
|
Line 1168 formateur_elementaire_tex(struct_process
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
&s_objet_elementaire, environnement); |
&s_objet_elementaire, environnement); |
|
|
if (fprintf(fichier_impression, " \\\\\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
" \\\\\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1132 formateur_elementaire_tex(struct_process
|
Line 1178 formateur_elementaire_tex(struct_process
|
|
|
free(s_objet_elementaire.objet); |
free(s_objet_elementaire.objet); |
|
|
if (fprintf(fichier_impression, "\\end{array}\\right)\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{array}\\right)\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1150 formateur_elementaire_tex(struct_process
|
Line 1197 formateur_elementaire_tex(struct_process
|
.nom_fonction, "-") == 0) || (strcmp((*((struct_fonction *) |
.nom_fonction, "-") == 0) || (strcmp((*((struct_fonction *) |
(*s_objet).objet)).nom_fonction, "/") == 0)) |
(*s_objet).objet)).nom_fonction, "/") == 0)) |
{ |
{ |
if (fprintf(fichier_impression, "$%s$", (*((struct_fonction *) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$%s$", |
(*s_objet).objet)).nom_fonction) < 0) |
(*((struct_fonction *) (*s_objet).objet)).nom_fonction) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1160 formateur_elementaire_tex(struct_process
|
Line 1207 formateur_elementaire_tex(struct_process
|
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
"*") == 0) |
"*") == 0) |
{ |
{ |
if (fprintf(fichier_impression, "$\\times$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"$\\times$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1169 formateur_elementaire_tex(struct_process
|
Line 1217 formateur_elementaire_tex(struct_process
|
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
"^") == 0) |
"^") == 0) |
{ |
{ |
if (fprintf(fichier_impression, "$\\,\\hat{}\\,$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"$\\,\\hat{}\\,$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1178 formateur_elementaire_tex(struct_process
|
Line 1227 formateur_elementaire_tex(struct_process
|
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
else if (strcmp((*((struct_fonction *) (*s_objet).objet)).nom_fonction, |
"->") == 0) |
"->") == 0) |
{ |
{ |
if (fprintf(fichier_impression, "$\\rightarrow$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"$\\rightarrow$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1199 formateur_elementaire_tex(struct_process
|
Line 1249 formateur_elementaire_tex(struct_process
|
|
|
correction_formateur_tex(s_etat_processus, &ligne); |
correction_formateur_tex(s_etat_processus, &ligne); |
|
|
if (fprintf(fichier_impression, ligne) < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, ligne) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1218 formateur_elementaire_tex(struct_process
|
Line 1268 formateur_elementaire_tex(struct_process
|
{ |
{ |
if ((*s_objet).type == LST) |
if ((*s_objet).type == LST) |
{ |
{ |
if (fprintf(fichier_impression, "\\begin{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\begin{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\left\\{\\text{%%\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\left\\{\\text{%%\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1245 formateur_elementaire_tex(struct_process
|
Line 1297 formateur_elementaire_tex(struct_process
|
((*(*l_element_courant).donnee).type == MCX) || |
((*(*l_element_courant).donnee).type == MCX) || |
((*(*l_element_courant).donnee).type == BIN)) |
((*(*l_element_courant).donnee).type == BIN)) |
{ |
{ |
if (fprintf(fichier_impression, "$") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "$") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1254 formateur_elementaire_tex(struct_process
|
Line 1306 formateur_elementaire_tex(struct_process
|
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
formateur_elementaire_tex(s_etat_processus, fichier_impression, |
(*l_element_courant).donnee, environnement); |
(*l_element_courant).donnee, environnement); |
|
|
if (fprintf(fichier_impression, "$%%") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"$%%") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1266 formateur_elementaire_tex(struct_process
|
Line 1319 formateur_elementaire_tex(struct_process
|
(*l_element_courant).donnee, environnement); |
(*l_element_courant).donnee, environnement); |
} |
} |
|
|
if (fprintf(fichier_impression, "\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, "\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1277 formateur_elementaire_tex(struct_process
|
Line 1330 formateur_elementaire_tex(struct_process
|
|
|
if ((*s_objet).type == LST) |
if ((*s_objet).type == LST) |
{ |
{ |
if (fprintf(fichier_impression, "}\\right\\}\\nonumber\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"}\\right\\}\\nonumber\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\end{equation}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{equation}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 1484 formateur_elementaire_tex(struct_process
|
Line 1539 formateur_elementaire_tex(struct_process
|
{ |
{ |
niveau = 0; |
niveau = 0; |
|
|
for(i = 1; i < (strlen((unsigned char *) |
for(i = 1; i < (integer8) |
|
(strlen((unsigned char *) |
(*s_sous_objet_1).objet) - 1); i++) |
(*s_sous_objet_1).objet) - 1); i++) |
{ |
{ |
if (((unsigned char *) (*s_sous_objet_1) |
if (((unsigned char *) (*s_sous_objet_1) |
Line 1506 formateur_elementaire_tex(struct_process
|
Line 1562 formateur_elementaire_tex(struct_process
|
|
|
if (niveau == 0) |
if (niveau == 0) |
{ |
{ |
sprintf((unsigned char *) (*s_sous_objet_1) |
memmove(((unsigned char *) (*s_sous_objet_1) |
.objet, "%s", &(((unsigned char *) |
.objet), ((unsigned char *) |
(*s_sous_objet_1).objet)[1])); |
(*s_sous_objet_1).objet) + 1, |
((unsigned char *) (*s_sous_objet_1).objet) |
strlen((unsigned char *) |
[strlen((unsigned char *) |
(*s_sous_objet_1).objet)); |
(*s_sous_objet_1).objet) - 1] = |
|
d_code_fin_chaine; |
|
} |
} |
} |
} |
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, "^"); |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, "^"); |
|
|
if ((*s_sous_objet_1).objet == NULL) |
if ((*s_sous_objet_1).objet == NULL) |
{ |
{ |
Line 1546 formateur_elementaire_tex(struct_process
|
Line 1601 formateur_elementaire_tex(struct_process
|
{ |
{ |
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
(*((struct_fonction *) |
&chaine_parametre, (*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
|
|
Line 1560 formateur_elementaire_tex(struct_process
|
Line 1615 formateur_elementaire_tex(struct_process
|
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_2).objet; |
(*s_sous_objet_2).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
(*((struct_fonction *) |
&chaine_parametre, (*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
|
|
Line 1644 formateur_elementaire_tex(struct_process
|
Line 1699 formateur_elementaire_tex(struct_process
|
{ |
{ |
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, |
(*((struct_fonction *) |
(*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
Line 1658 formateur_elementaire_tex(struct_process
|
Line 1714 formateur_elementaire_tex(struct_process
|
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_2).objet; |
(*s_sous_objet_2).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, |
(*((struct_fonction *) |
(*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
Line 1927 formateur_elementaire_tex(struct_process
|
Line 1984 formateur_elementaire_tex(struct_process
|
|
|
if ((*s_etat_processus).instruction_valide == 'Y') |
if ((*s_etat_processus).instruction_valide == 'Y') |
{ |
{ |
for(i = 0; i < strlen(chaine); i++) |
for(i = 0; i < (integer8) strlen(chaine); i++) |
{ |
{ |
if ((chaine[i] >= 'A') && (chaine[i] <= 'Z')) |
if ((chaine[i] >= 'A') && (chaine[i] <= 'Z')) |
{ |
{ |
chaine[i] += ('a' - 'A'); |
chaine[i] = (unsigned char) |
|
(chaine[i] + ('a' - 'A')); |
} |
} |
} |
} |
} |
} |
Line 1988 formateur_elementaire_tex(struct_process
|
Line 2046 formateur_elementaire_tex(struct_process
|
ptrl = chaine_sauvegarde; |
ptrl = chaine_sauvegarde; |
ptre = (unsigned char *) (*s_sous_objet).objet; |
ptre = (unsigned char *) (*s_sous_objet).objet; |
|
|
for(ptrl++, i = strlen(chaine_sauvegarde) - 2; i > 0; |
for(ptrl++, i = (integer8) (strlen(chaine_sauvegarde) - 2); |
i--, *ptre++ = *ptrl++); |
i > 0; i--, *ptre++ = *ptrl++); |
|
|
(*ptre) = d_code_fin_chaine; |
(*ptre) = d_code_fin_chaine; |
|
|
free(chaine_sauvegarde); |
free(chaine_sauvegarde); |
|
|
chaine_majuscule = conversion_majuscule((*((struct_nom *) |
chaine_majuscule = conversion_majuscule(s_etat_processus, |
(*(*l_element_courant).donnee).objet)).nom); |
(*((struct_nom *) (*(*l_element_courant).donnee) |
|
.objet)).nom); |
|
|
if (strcmp(chaine_majuscule, "PI") == 0) |
if (strcmp(chaine_majuscule, "PI") == 0) |
{ |
{ |
Line 2065 formateur_elementaire_tex(struct_process
|
Line 2124 formateur_elementaire_tex(struct_process
|
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "%s", |
if (tex_fprintf(s_etat_processus, fichier_impression, "%s", |
(unsigned char *) (*s_sous_objet).objet) < 0) |
(unsigned char *) (*s_sous_objet).objet) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
|
|
liberation(s_etat_processus, s_sous_objet); |
liberation(s_etat_processus, s_sous_objet); |
liberation(s_etat_processus, s_copie_objet); |
liberation(s_etat_processus, s_copie_objet); |
} |
} |
Line 2100 correction_formateur_tex(struct_processu
|
Line 2158 correction_formateur_tex(struct_processu
|
logical1 mode_mathematique; |
logical1 mode_mathematique; |
|
|
unsigned char *tampon; |
unsigned char *tampon; |
unsigned long i; |
|
|
integer8 i; |
|
|
mode_mathematique = d_faux; |
mode_mathematique = d_faux; |
|
|
for(i = 0; i < strlen((*ligne)); i++) |
for(i = 0; i < (integer8) strlen((*ligne)); i++) |
{ |
{ |
switch((*ligne)[i]) |
switch((*ligne)[i]) |
{ |
{ |
Line 2132 correction_formateur_tex(struct_processu
|
Line 2191 correction_formateur_tex(struct_processu
|
*/ |
*/ |
|
|
case '#' : |
case '#' : |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
|
|
case '_' : |
case '_' : |
{ |
{ |
if (mode_mathematique == d_vrai) |
if (mode_mathematique == d_vrai) |
{ |
{ |
break; |
break; |
} |
} |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
} |
} |
|
|
case '%' : |
case '%' : |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
case '&' : |
case '&' : |
{ |
{ |
if ((tampon = (unsigned char *) malloc((strlen((*ligne)) + 2) * |
if ((tampon = (unsigned char *) malloc((strlen((*ligne)) + 2) * |
Line 2151 correction_formateur_tex(struct_processu
|
Line 2220 correction_formateur_tex(struct_processu
|
return; |
return; |
} |
} |
|
|
strncpy(tampon, (*ligne), i); |
strncpy(tampon, (*ligne), (size_t) i); |
strcpy(&(tampon[i]), "\\"); |
strcpy(&(tampon[i]), "\\"); |
strcat(tampon, &((*ligne)[i++])); |
strcat(tampon, &((*ligne)[i++])); |
|
|
Line 2190 impression_tex(struct_processus *s_etat_
|
Line 2259 impression_tex(struct_processus *s_etat_
|
file *fichier_impression; |
file *fichier_impression; |
|
|
unsigned char *commande; |
unsigned char *commande; |
|
unsigned char *executable_candidat; |
unsigned char *nom_fichier_aux; |
unsigned char *nom_fichier_aux; |
unsigned char *nom_fichier_dvi; |
unsigned char *nom_fichier_dvi; |
unsigned char *nom_fichier_log; |
unsigned char *nom_fichier_log; |
unsigned char *nom_fichier_tex; |
unsigned char *nom_fichier_tex; |
unsigned char *nom_fichier_ps; |
unsigned char *nom_fichier_ps; |
|
|
unsigned long longueur_nom_base; |
size_t longueur_nom_base; |
|
|
longueur_nom_base = strlen((*s_etat_processus).nom_fichier_impression); |
longueur_nom_base = strlen((*s_etat_processus).nom_fichier_impression); |
|
|
Line 2262 impression_tex(struct_processus *s_etat_
|
Line 2332 impression_tex(struct_processus *s_etat_
|
return; |
return; |
} |
} |
|
|
if (fprintf(fichier_impression, "\\end{document}\n") < 0) |
if (tex_fprintf(s_etat_processus, fichier_impression, |
|
"\\end{document}\n") < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
Line 2274 impression_tex(struct_processus *s_etat_
|
Line 2345 impression_tex(struct_processus *s_etat_
|
return; |
return; |
} |
} |
|
|
if (alsprintf(&commande, ds_tex_commande, |
if ((*s_etat_processus).rpl_home == NULL) |
d_exec_path, d_exec_path, d_exec_path, |
|
(*s_etat_processus).nom_fichier_impression, |
|
(*s_etat_processus).nom_fichier_impression, nom_fichier_tex, |
|
(*s_etat_processus).chemin_fichiers_temporaires, |
|
nom_fichier_tex, nom_fichier_dvi, nom_fichier_ps) < 0) |
|
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
if (alsprintf(s_etat_processus, &commande, ds_tex_commande, |
return; |
d_exec_path, d_exec_path, d_exec_path, |
|
(*s_etat_processus).nom_fichier_impression, |
|
d_exec_path, d_exec_path, |
|
(*s_etat_processus).nom_fichier_impression, nom_fichier_tex, |
|
(*s_etat_processus).chemin_fichiers_temporaires, |
|
nom_fichier_tex, nom_fichier_dvi, nom_fichier_ps) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rpliconv", |
|
d_exec_path) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (controle_integrite(s_etat_processus, executable_candidat, |
|
"rpliconv") != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return; |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rplfile", |
|
d_exec_path) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (controle_integrite(s_etat_processus, executable_candidat, |
|
"rplfile") != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return; |
|
} |
|
|
|
free(executable_candidat); |
|
} |
|
else |
|
{ |
|
if (alsprintf(s_etat_processus, &commande, ds_tex_commande, |
|
(*s_etat_processus).rpl_home, |
|
(*s_etat_processus).rpl_home, |
|
(*s_etat_processus).rpl_home, |
|
(*s_etat_processus).nom_fichier_impression, |
|
(*s_etat_processus).rpl_home, |
|
(*s_etat_processus).rpl_home, |
|
(*s_etat_processus).nom_fichier_impression, nom_fichier_tex, |
|
(*s_etat_processus).chemin_fichiers_temporaires, |
|
nom_fichier_tex, nom_fichier_dvi, nom_fichier_ps) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rpliconv", |
|
(*s_etat_processus).rpl_home) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (controle_integrite(s_etat_processus, executable_candidat, |
|
"rpliconv") != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return; |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rplfile", |
|
(*s_etat_processus).rpl_home) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
if (controle_integrite(s_etat_processus, executable_candidat, |
|
"rplfile") != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return; |
|
} |
|
|
|
free(executable_candidat); |
} |
} |
|
|
if (system(commande) != 0) |
if (system(commande) != 0) |
Line 2294 impression_tex(struct_processus *s_etat_
|
Line 2450 impression_tex(struct_processus *s_etat_
|
{ |
{ |
free(commande); |
free(commande); |
|
|
if (alsprintf(&commande, ds_tex_postscript, nom_fichier_ps) < 0) |
if (alsprintf(s_etat_processus, &commande, ds_tex_postscript, |
|
nom_fichier_ps) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
Line 2395 impression_tex(struct_processus *s_etat_
|
Line 2552 impression_tex(struct_processus *s_etat_
|
*/ |
*/ |
|
|
void |
void |
conversion_element_tex(unsigned char **element, unsigned char *fonction) |
conversion_element_tex(struct_processus *s_etat_processus, |
|
unsigned char **element, unsigned char *fonction) |
{ |
{ |
unsigned char *chaine; |
unsigned char *chaine; |
unsigned char *element_courant; |
unsigned char *element_courant; |
unsigned char *extrait; |
unsigned char *extrait; |
|
|
unsigned long debut_fonction; |
integer8 debut_fonction; |
unsigned long i; |
integer8 i; |
unsigned long niveau; |
integer8 niveau; |
unsigned long nombre_passages_par_zero; |
integer8 nombre_passages_par_zero; |
|
|
element_courant = (*element); |
element_courant = (*element); |
niveau = 0; |
niveau = 0; |
Line 2418 conversion_element_tex(unsigned char **e
|
Line 2576 conversion_element_tex(unsigned char **e
|
{ |
{ |
if (niveau == 0) |
if (niveau == 0) |
{ |
{ |
extrait = extraction_chaine((*element), debut_fonction, i - 1); |
extrait = extraction_chaine(s_etat_processus, |
|
(*element), debut_fonction, i - 1); |
|
|
if (strcmp(extrait, fonction) != 0) |
if (strcmp(extrait, fonction) != 0) |
{ |
{ |