summaryrefslogtreecommitdiff
path: root/Build/source/texk/tex4htk/tex4ht.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/tex4htk/tex4ht.c')
-rw-r--r--Build/source/texk/tex4htk/tex4ht.c15742
1 files changed, 0 insertions, 15742 deletions
diff --git a/Build/source/texk/tex4htk/tex4ht.c b/Build/source/texk/tex4htk/tex4ht.c
deleted file mode 100644
index b90067ffc0b..00000000000
--- a/Build/source/texk/tex4htk/tex4ht.c
+++ /dev/null
@@ -1,15742 +0,0 @@
-
-#line 231 "./tex4ht-c.tex"
-
-/* tex4ht.c (2018-07-03-10:36), generated from tex4ht-c.tex
- Copyright 2009-2018 TeX Users Group
- Copyright 1996-2009 Eitan M. Gurari
-
-#line 1 "./tex4ht-c.tex"
-
-%
-% This work may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either
-% version 1.3c of this license or (at your option) any
-% later version. The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3c or later is part of all distributions
-% of LaTeX version 2005/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% The Current Maintainer of this work
-% is the TeX4ht Project <http://tug.org/tex4ht>.
-%
-% If you modify this program, changing the
-% version identification would be appreciated.
- */
-
-#line 245 "./tex4ht-c.tex"
-
-/* Compiler options (uncommented | command line), as comments:
-
- Classic C (CC) default
-#define ANSI ansi-c, c++
-#define DOS_C
-#define HAVE_STRING_H <string.h>
-#define HAVE_DIRENT_H <dirent.h>
-#define HAVE_SYS_NDIR_H <sys/ndir.h>
-#define HAVE_SYS_DIR_H <sys/dir.h>
-#define HAVE_NDIR_H <ndir.h>
-#define HAVE_IO_H <io.h>
-#define HAVE_UNISTD_H <unistd.h>
-#define WIN32
-#define KPATHSEA
-#define CDECL .......
-#define BCC32 bordland c++
-
-*************************************************
- Tex4ht variables *
- (uncommented | command line) *
------------------------------------------------ */
-
-#line 8844 "./tex4ht-c.tex"
-
-#ifndef LGFNT
-#define LGFNT "Font(\"%s\",\"%s\",\"%d\",\"%d\")\n"
-#endif
-
-
-#line 10841 "./tex4ht-c.tex"
-
-#ifndef LGCLS
-#define LGCLS "Font_Class(%d,\"%s\"): %s\n"
-#endif
-
-
-#line 11065 "./tex4ht-c.tex"
-
-#ifndef LGPIC
-#define LGPIC "--- needs --- %%1.idv[%%2] ==> %%3 ---\n%"
-#endif
-
-
-#line 11102 "./tex4ht-c.tex"
-
-#ifndef LGSEP
-#define LGSEP "--- characters ---\n"
-#endif
-
-
-#line 11130 "./tex4ht-c.tex"
-
-#ifndef LGTYP
-#define LGTYP ".png"
-#endif
-
-
-#line 13170 "./tex4ht-c.tex"
-
-#ifndef ENVFILE
-
-#endif
-
-
-#line 13552 "./tex4ht-c.tex"
-
-#ifndef TFMDIR
-
-#endif
-
-
-#line 13924 "./tex4ht-c.tex"
-
-#ifndef HTFDIR
-
-#endif
-
-
-/* ******************************************** */
-
-
-#line 294 "./tex4ht-c.tex"
-
-#ifdef BCC32
-#define DOS_WIN32
-#define ANSI
-#define HAVE_DIRENT_H
-#define PLATFORM "ms-win32"
-#endif
-
-
-
-#line 305 "./tex4ht-c.tex"
-
-#ifdef BCC
-#define DOS_C
-#define ANSI
-#define HAVE_DIRENT_H
-#define PLATFORM "ms-dos"
-#ifndef PATH_MAX
-#define PATH_MAX 256
-#endif
-#endif
-
-
-
-#line 615 "./tex4ht-c.tex"
-
-#ifdef __DJGPP__
-#define DOS_WIN
-#define ANSI
-#ifndef HAVE_STRING_H
-#define HAVE_STRING_H 1
-#endif
-#endif
-
-
-#ifdef DOS_C
-#define DOS
-#endif
-#ifdef DOS
-#define DOS_WIN32
-#define HAVE_STRING_H <string.h>
-#endif
-#ifdef WIN32
-#define DOS_WIN32
-#ifndef KPATHSEA
-#define HAVE_STRING_H <string.h>
-#endif
-#endif
-
-#line 15685 "./tex4ht-c.tex"
-
-#ifdef DOS_WIN32
-#define STRUCT_DIRENT
-#endif
-
-
-
-#line 441 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-#ifdef WIN32
-#define KWIN32
-#endif
-#endif
-
-
-
-#line 361 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-#include <kpathsea/config.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-
-
-#line 375 "./tex4ht-c.tex"
-
-#ifdef HAVE_STRING_H
-#include <string.h>
-#endif
-
-
-#line 457 "./tex4ht-c.tex"
-
-#ifdef WIN32
-#ifdef KPATHSEA
-#undef CDECL
-#define CDECL __cdecl
-#else
-#include <windows.h>
-#endif
-#else
-#ifdef KPATHSEA
-#define CDECL
-#endif
-#endif
-
-
-#line 1036 "./tex4ht-c.tex"
-
-#include <limits.h>
-
-
-#line 1120 "./tex4ht-c.tex"
-
-#include <signal.h>
-
-
-#line 13767 "./tex4ht-c.tex"
-
-#ifndef F_OK
-#ifdef DOS_WIN32
-#define F_OK 0
-#endif
-#ifndef KPATHSEA
-#ifndef DOS_WIN32
-#define HAVE_UNISTD_H
-#endif
-#endif
-#endif
-#ifdef HAVE_IO_H
-#include <io.h>
-#endif
-#ifndef KPATHSEA
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#endif
-
-
-#line 14872 "./tex4ht-c.tex"
-
-
-#line 1231 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-#include <kpathsea/c-errno.h>
-#include <kpathsea/c-ctype.h>
-#include <kpathsea/c-fopen.h>
-#include <kpathsea/c-pathmx.h>
-#include <kpathsea/proginit.h>
-#include <kpathsea/tex-file.h>
-#include <kpathsea/tex-make.h>
-#include <kpathsea/variable.h>
-#include <signal.h>
-#if !defined(_AMIGA) && !defined(WIN32)
-#include <sys/time.h>
-#endif
-#include <fcntl.h>
-#include <setjmp.h>
-#endif
-
-
-
-
-#line 15623 "./tex4ht-c.tex"
-
-#ifdef DOS_WIN32
-#include <io.h>
-#endif
-
-
-#line 15674 "./tex4ht-c.tex"
-
-#include <sys/stat.h>
-
-
-
-#line 15692 "./tex4ht-c.tex"
-
-#ifdef HAVE_DIRENT_H
-
-#line 15707 "./tex4ht-c.tex"
-
-#include <dirent.h>
-
-
-#else
-#ifndef STRUCT_DIRENT
-#define STRUCT_DIRECT
-#endif
-
-#line 15712 "./tex4ht-c.tex"
-
-#ifdef HAVE_SYS_NDIR_H
-#include <sys/ndir.h>
-#endif
-#ifdef HAVE_SYS_DIR_H
-#include <sys/dir.h>
-#endif
-#ifdef HAVE_NDIR_H
-#include <ndir.h>
-#endif
-
-
-#endif
-
-
-
-#line 10877 "./tex4ht-c.tex"
-
-#ifdef DOS
-#define HTM
-#endif
-
-
-
-
-#line 17267 "./tex4ht-c.tex"
-
-#ifdef DOS
-#define PROTOTYP
-#endif
-#ifdef ANSI
-#define PROTOTYP
-#endif
-#ifdef KWIN32
-#define PROTOTYP
-#endif
-
-
-
-
-#line 1308 "./tex4ht-c.tex"
-
-
-#line 369 "./tex4ht-c.tex"
-
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE 1
-#endif
-
-
-#line 1015 "./tex4ht-c.tex"
-
-#if INT_MAX < 2147483647L
-#define LONG L
-#endif
-
-
-#line 1040 "./tex4ht-c.tex"
-
-#ifdef LONG
-#define INTEGER long
-#else
-#define INTEGER int
-#endif
-#define U_CHAR char
-
-
-#line 1396 "./tex4ht-c.tex"
-
-#define m_alloc(typ,n) (typ *) malloc_chk((int) ((n) * sizeof(typ)))
-
-
-#line 1558 "./tex4ht-c.tex"
-
-#ifndef PATH_MAX
-#define PATH_MAX 512
-#endif
-
-
-#line 4276 "./tex4ht-c.tex"
-
-#define IGNORED void
-
-
-#line 4568 "./tex4ht-c.tex"
-
-struct files_rec{
- FILE *file, *prev_file;
- char* name;
- struct files_rec *next, *prev;
-};
-
-
-#line 4669 "./tex4ht-c.tex"
-
-struct sys_call_rec{
- char* filter;
- struct sys_call_rec *next;
-};
-
-
-#line 4850 "./tex4ht-c.tex"
-
-#define HEIGHT 120
-
-
-#line 4892 "./tex4ht-c.tex"
-
-#define NULL_MAP (struct map_line_type*) 0
-
-
-#line 4952 "./tex4ht-c.tex"
-
-#define XRESOLUTION MARGINSP
-#ifdef LONG
-#define YRESOLUTION 786432L
-#else
-#define YRESOLUTION 786432
-#endif
-
-
-#line 5084 "./tex4ht-c.tex"
-
-#define MAX_MAP_LINE 500
-
-
-#line 6038 "./tex4ht-c.tex"
-
-#define idv_int(val) int_to_dvi((long int) val,4)
-
-
-#line 6293 "./tex4ht-c.tex"
-
-struct halign_rec{
- char * str;
- int refs;
-};
-
-
-#line 8636 "./tex4ht-c.tex"
-
-#define design_size_to_pt(n) ((double)n / (double)(1L<<20))
-
-
-#line 8715 "./tex4ht-c.tex"
-
-#define new_font font_tbl[font_tbl_size]
-
-
-#line 9734 "./tex4ht-c.tex"
-
-#ifdef LONG
-#define MARGINSP 344061L
-#else
-#define MARGINSP 344061
-#endif
-
-
-#line 10124 "./tex4ht-c.tex"
-
-#define HTF_ALIAS 10000000
-
-
-#line 10627 "./tex4ht-c.tex"
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-#ifndef FALSE
-#define FALSE 0
-#endif
-#ifndef BOOL
-#define BOOL int
-#endif
-
-
-#line 10869 "./tex4ht-c.tex"
-
-#define GIF_I "-%x%s"
-#define GIF_II "-%x-%x%s"
-#define GIF_VII "%s"
-
-
-#line 10883 "./tex4ht-c.tex"
-
-#ifdef HTM
-#define DOS_GIF_FILE
-#endif
-
-
-#line 11310 "./tex4ht-c.tex"
-
-#define BASE 36
-
-
-#line 11330 "./tex4ht-c.tex"
-
-#define store_bit_I(ch,i) ch[(i)/8]|=(1<<((i)%8));
-#define store_bit_Z(ch,i) ch[(i)/8]&=~(1<<((i)%8))
-#define add_bit(ch,i,b) ch[(i)/8] |= ((b) << ((i)%8))
-#define get_bit(ch,i) ((ch[(i)/8] >> ((i)%8)) & 1)
-
-
-#line 11675 "./tex4ht-c.tex"
-
-#define gif_open span_open
-#define gif_alt span_name
-#define gif_class span_size
-#define gif_size span_mag
-#define gif_mag span_ord
-#define gif_ord span_ch
-#define gif_end end_span
-
-
-#line 13414 "./tex4ht-c.tex"
-
-struct env_c_rec{
- char *option;
- struct env_c_rec *next;
-};
-
-
-#line 13496 "./tex4ht-c.tex"
-
-#ifndef MAXFDIRS
-#define MAXFDIRS 100
-#endif
-
-
-#line 15568 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
-#define dir_path_slash(str) (is_forward_slash(str)? '/' : '\\')
-#else
-#define dir_path_slash(str) '/'
-#endif
-
-
-#line 15633 "./tex4ht-c.tex"
-
-#ifndef S_ISDIR
-#define S_ISDIR(M) (((M) & _S_IFMT)==_S_IFDIR)
-#endif
-
-#ifndef _S_IFDIR
-#define _S_IFDIR S_IFDIR
-#endif
-
-#ifndef _S_IFMT
-#define _S_IFMT S_IFMT
-#endif
-
-
-#line 15663 "./tex4ht-c.tex"
-
-#if defined(DOS_WIN32) || !defined(S_ISLNK)
-#define LSTAT stat
-#else
-#define LSTAT lstat
-#endif
-#define STSTAT stat
-
-
-#line 15883 "./tex4ht-c.tex"
-
-#define MAX_UNI_CODE 20
-
-
-#line 16076 "./tex4ht-c.tex"
-
-#define BASE_A 55
-#define BASE_a 87
-
-
-#line 16737 "./tex4ht-c.tex"
-
-#define get_unt(n) fget_unt(dvi_file,n)
-
-
-#line 16761 "./tex4ht-c.tex"
-
-#define get_int(n) fget_int(dvi_file,n)
-
-
-#line 16827 "./tex4ht-c.tex"
-
-#define eq_str(x,y) (!strcmp(x,y))
-#define gt_str(x,y) (strcmp(x,y)>0)
-
-
-#line 17007 "./tex4ht-c.tex"
-
-#define bad_arg err_i(0)
-#define bad_in_file(name) err_i_str(1,name)
-#define bad_out_file(name) err_i_str(2,name)
-#define bad_special(name) warn_i_str(3,name)
-#define bad_mem err_i(4)
-#define bad_char(chr) warn_i_int(5,chr)
-#define bad_dvi err_i(7)
-
-
-#line 17231 "./tex4ht-c.tex"
-
-#if defined(DOS_WIN32) || defined(__MSDOS__)
-#define READ_BIN_FLAGS "rb"
-#define READ_TEXT_FLAGS "r"
-#define WRITE_BIN_FLAGS "wb"
-#ifdef WIN32
-#define WRITE_TEXT_FLAGS "wb"
-#else
-#define WRITE_TEXT_FLAGS "w"
-#endif
-#else
-#define READ_BIN_FLAGS "r"
-#define READ_TEXT_FLAGS "r"
-#define WRITE_BIN_FLAGS "w"
-#define WRITE_TEXT_FLAGS "w"
-#endif
-
-
-#line 17279 "./tex4ht-c.tex"
-
-#ifdef PROTOTYP
-#define MYVOID void
-#define ARG_I(x) x
-#define ARG_II(x,y) x,y
-#define ARG_III(x,y,z) x,y,z
-#define ARG_IV(x,y,z,w) x,y,z,w
-#define ARG_V(x,y,z,w,v) x,y,z,w,v
-#define ARG_VI(x,y,z,w,v,u) x,y,z,w,v,u
-#define ARG_VII(x,y,z,w,v,u,t) x,y,z,w,v,u,t
-#else
-#define MYVOID
-#define ARG_I(x)
-#define ARG_II(x,y)
-#define ARG_III(x,y,z)
-#define ARG_IV(x,y,z,w)
-#define ARG_V(x,y,z,w,v)
-#define ARG_VI(x,y,z,w,v,u)
-#define ARG_VII(x,y,z,w,v,u,t)
-#endif
-
-
-
-#line 4212 "./tex4ht-c.tex"
-
-struct hcode_repl_typ { char *str;
- struct hcode_repl_typ *next; };
-
-
-#line 4738 "./tex4ht-c.tex"
-
-struct count_rec{
- char* str;
- int i, depth, max;
- int* stack;
- struct count_rec* next;
-};
-
-
-#line 4830 "./tex4ht-c.tex"
-
-struct ch_map_rec{
- char* line;
- int max, chars;
-};
-
-
-#line 6669 "./tex4ht-c.tex"
-
-struct stack_entry{
- long int x_val, y_val;
- INTEGER dx_1, dx_2, dy_1, dy_2;
- BOOL text_on;
- BOOL
-#line 12464 "./tex4ht-c.tex"
-
-accented
-
-;
-
-#line 6348 "./tex4ht-c.tex"
-
-struct halign_rec *halign[8];
-BOOL halign_on, halign_info, row_no, col_no;
-
-
-#line 6697 "./tex4ht-c.tex"
-
-int stack_id;
-struct group_info * begin;
-struct stack_end_entry * end;
-
-
-#line 7789 "./tex4ht-c.tex"
-
-struct group_path * path_start, * path_end;
-
-
-#line 12872 "./tex4ht-c.tex"
-
-char *class_open, *class_close,
- *temp_class_open, *temp_class_close;
-BOOL temp_class_del, ignore_subclass_del, active_class_del,
- no_left_del, sv_no_left_del;
-
-
-};
-
-
-#line 6704 "./tex4ht-c.tex"
-
-struct group_info{
- int stack_id;
- U_CHAR *info;
- struct group_info* next;
-};
-
-
-#line 6762 "./tex4ht-c.tex"
-
-struct stack_end_entry{
- struct stack_end_entry *next;
- U_CHAR *send;
-};
-
-
-#line 7444 "./tex4ht-c.tex"
-
-struct del_stack_entry{
- struct del_stack_entry *next;
- U_CHAR ch;
- int fnt, id;
-};
-
-
-#line 7530 "./tex4ht-c.tex"
-
-struct send_back_entry{
- struct send_back_entry *next;
- U_CHAR *send;
- int id;
-};
-
-
-#line 7794 "./tex4ht-c.tex"
-
-struct group_path{
- U_CHAR action;
- U_CHAR *path;
- U_CHAR *info;
- struct group_path * next;
-};
-
-
-#line 8620 "./tex4ht-c.tex"
-
-struct font_entry {
- INTEGER num;
- INTEGER scale;
- INTEGER design_sz;
-
-#line 8772 "./tex4ht-c.tex"
-
-INTEGER mag;
-
-
-
-#line 8776 "./tex4ht-c.tex"
-
-char *family_name, *font_size;
-
-
-
-#line 9446 "./tex4ht-c.tex"
-
- INTEGER design_pt;
- int char_f, char_l;
- U_CHAR *char_wi;
- U_CHAR *char_hidp;
- int wtbl_n;
- int htbl_n;
- int dtbl_n;
- INTEGER *wtbl;
- INTEGER *htbl;
- INTEGER *dtbl;
- INTEGER word_sp;
- INTEGER it;
- INTEGER ex;
-
-
-
-#line 9954 "./tex4ht-c.tex"
-
-char *name, *gif_on, *ch_str, ch255;
-unsigned U_CHAR **str, *ch, *gif1;
-
-
-#line 12073 "./tex4ht-c.tex"
-
-unsigned U_CHAR *accent, *accented;
-unsigned int *accent_array, *accented_array, accent_N, accented_N;
-
-
-
-#line 12764 "./tex4ht-c.tex"
-
-char *math, *math_closing;
-
-
-
-#line 8941 "./tex4ht-c.tex"
-
-INTEGER layout_dir;
-unsigned long rgba_color;
-
-
-};
-
-
-#line 10274 "./tex4ht-c.tex"
-
-struct html_font_rec{ char* name;
- int i; };
-
-
-#line 11222 "./tex4ht-c.tex"
-
-
-struct gif_file_rec{
- U_CHAR code[4];
- U_CHAR *name;
- struct gif_file_rec *next; };
-
-
-
-#line 11863 "./tex4ht-c.tex"
-
-struct css_ext_rec{ char* name;
- struct css_ext_rec *next; };
-
-
-#line 11973 "./tex4ht-c.tex"
-
-struct visited_file_rec{ char *name;
- struct visited_file_rec *next; };
-
-
-#line 13655 "./tex4ht-c.tex"
-
-struct env_var_rec{ char* base;
- struct env_var_rec *next; };
-
-
-#line 13733 "./tex4ht-c.tex"
-
-struct cache_font_rec{ char* dir;
- struct cache_file_rec * cache_file;
- struct cache_font_rec* next; };
-struct cache_file_rec{ struct cache_file_rec* next;
- U_CHAR * file; };
-
-
-#line 13854 "./tex4ht-c.tex"
-
-struct htf_com_rec{ char* name;
- struct htf_com_rec* next; };
-
-
-#line 16042 "./tex4ht-c.tex"
-
-struct charset_rec{ int ch;
- char* str; };
-
-
-#line 16454 "./tex4ht-c.tex"
-
-struct htf_4hf_rec { int ch, type1, type2;
- char* str; };
-
-
-
-#line 528 "./tex4ht-c.tex"
-
-#ifdef WIN32
-static U_CHAR dirname[PATH_MAX];
-#endif
-
-
-#line 625 "./tex4ht-c.tex"
-
-static BOOL dos_file_names =
-#ifdef DOS_GIF_FILE
- TRUE
-#else
- FALSE
-#endif
-;
-
-
-#line 1381 "./tex4ht-c.tex"
-
-static FILE* dot_file;
-
-
-#line 1572 "./tex4ht-c.tex"
-
-static FILE* dvi_file;
-
-
-#line 1629 "./tex4ht-c.tex"
-
-static U_CHAR *ext = NULL;
-
-
-#line 1670 "./tex4ht-c.tex"
-
-static char* job_name;
-static int job_name_n;
-
-
-#line 1779 "./tex4ht-c.tex"
-
-static U_CHAR *no_root_file;
-
-
-#line 1840 "./tex4ht-c.tex"
-
-static FILE *out_file = (FILE *) 0,
- *root_file = (FILE *) 0,
- *cur_o_file = (FILE *) 0;
-
-
-#line 2166 "./tex4ht-c.tex"
-
-static int version_id;
-
-
-#line 2213 "./tex4ht-c.tex"
-
-static int stack_len;
-
-
-#line 2581 "./tex4ht-c.tex"
-
-static BOOL start_span = FALSE, in_span_ch = FALSE;
-
-
-#line 2726 "./tex4ht-c.tex"
-
-static BOOL in_trace_char = FALSE, block_start = FALSE;
-static int trace_dvi_P = 0, trace_dvi_C = 0,
- trace_dvi_H = 0, trace_dvi_R = 0, trace_dvi_V = 0;
-static U_CHAR *trace_dvi_del_P, *end_trace_dvi_del_P,
- *trace_dvi_del_p, *end_trace_dvi_del_p,
- *trace_dvi_del_C, *end_trace_dvi_del_C,
- *trace_dvi_del_c, *end_trace_dvi_del_c,
- *trace_dvi_del_H, *end_trace_dvi_del_H,
- *trace_dvi_del_h, *end_trace_dvi_del_h,
- *trace_dvi_del_R, *end_trace_dvi_del_R,
- *trace_dvi_del_r, *end_trace_dvi_del_r,
- *trace_dvi_del_V, *end_trace_dvi_del_V,
- *trace_dvi_del_v, *end_trace_dvi_del_v;
-static int push_depth=0, push_id=0, push_st[256];
-
-
-#line 2959 "./tex4ht-c.tex"
-
-static long int x_val = 0, max_x_val = -10000,
- max_y_val = 0, prev_y_val = 0;
-
-
-#line 3071 "./tex4ht-c.tex"
-
-static INTEGER dx_1 = 0, dx_2 = 0;
-
-
-#line 3172 "./tex4ht-c.tex"
-
-static INTEGER dy_1 = 0, dy_2 = 0;
-static long int y_val = 0;
-
-
-#line 3415 "./tex4ht-c.tex"
-
-static U_CHAR *eoln_str = (char *)0;
-
-
-#line 3436 "./tex4ht-c.tex"
-
-static U_CHAR *space_str = (char *)0;
-
-
-#line 3447 "./tex4ht-c.tex"
-
-static int ignore_chs=0, ignore_spaces=0, recover_spaces=0;
-
-
-#line 3600 "./tex4ht-c.tex"
-
-static BOOL text_on = FALSE;
-
-
-#line 3673 "./tex4ht-c.tex"
-
-static U_CHAR rule_ch = '_';
-static BOOL
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- = FALSE;
-
-
-#line 3819 "./tex4ht-c.tex"
-
-static int cur_fnt = -1;
-
-
-#line 3937 "./tex4ht-c.tex"
-
-static U_CHAR special_hd[10];
-
-
-#line 4218 "./tex4ht-c.tex"
-
-static struct hcode_repl_typ *hcode_repl
- = (struct hcode_repl_typ*) 0;
-
-
-#line 4270 "./tex4ht-c.tex"
-
-static BOOL nomargin = FALSE;
-static int next_char = -1;
-static U_CHAR *next_str = (char *) 0;
-
-
-#line 4357 "./tex4ht-c.tex"
-
-static BOOL keepChar = FALSE;
-
-
-#line 4563 "./tex4ht-c.tex"
-
-static struct files_rec
- *opened_files = (struct files_rec *) 0, *p;
-
-
-#line 4677 "./tex4ht-c.tex"
-
-static BOOL system_yes;
-static struct sys_call_rec *system_calls = (struct sys_call_rec *) 0;
-
-
-#line 4747 "./tex4ht-c.tex"
-
-static struct count_rec *counter = (struct count_rec *) 0;
-
-
-#line 4838 "./tex4ht-c.tex"
-
-static struct ch_map_rec ch_map[HEIGHT];
-static int max_map_line, min_map_line;
-
-
-#line 4884 "./tex4ht-c.tex"
-
-static BOOL ch_map_flag = FALSE;
-
-
-#line 4939 "./tex4ht-c.tex"
-
-static INTEGER xresolution, yresolution;
-
-
-#line 5039 "./tex4ht-c.tex"
-
-static U_CHAR ok_map = TRUE;
-
-
-#line 5078 "./tex4ht-c.tex"
-
-static int prevcol = -1, prevrow;
-static double prev_x;
-
-
-#line 5385 "./tex4ht-c.tex"
-
-static BOOL dvi_flag = FALSE, dvi_page = FALSE;
-static FILE *idv_file;
-
-
-#line 5426 "./tex4ht-c.tex"
-
-static int errCode = 0;
-
-
-#line 5485 "./tex4ht-c.tex"
-
-static int id_version = -1;
-
-
-#line 5964 "./tex4ht-c.tex"
-
-static FILE* log_file;
-
-
-#line 5973 "./tex4ht-c.tex"
-
-static INTEGER mid_page_y, mid_page_x;
-
-
-#line 6106 "./tex4ht-c.tex"
-
-static int page_n, file_n;
-
-
-#line 6289 "./tex4ht-c.tex"
-
-static struct halign_rec *halign[8];
-
-
-#line 6374 "./tex4ht-c.tex"
-
-static BOOL new_halign = FALSE;
-
-
-#line 6600 "./tex4ht-c.tex"
-
-static BOOL group_dvi = FALSE;
-
-
-#line 6664 "./tex4ht-c.tex"
-
-static int stack_n = 0;
-static struct stack_entry* stack;
-
-
-#line 6798 "./tex4ht-c.tex"
-
-static int ignore_end_group;
-
-
-#line 7435 "./tex4ht-c.tex"
-
-static struct del_stack_entry *del_stack;
-
-
-#line 7460 "./tex4ht-c.tex"
-
-static int ch_id, sv_id, id_latex, back_id_off;
-
-
-#line 7539 "./tex4ht-c.tex"
-
-static struct send_back_entry *back_token, *back_group;
-
-
-#line 8442 "./tex4ht-c.tex"
-
-static BOOL pos_dvi = FALSE;
-static U_CHAR *pos_body, * pos_text, * pos_line,
- *end_pos_body, * end_pos_text;
-static double pos_x_A, pos_x_B, pos_y_C, pos_y_D, pos_y_E;
-static long int base_pos_x, base_pos_y, min_pos_x,
- max_pos_x, min_pos_y, max_pos_y;
-static short rect_pos;
-
-
-#line 8640 "./tex4ht-c.tex"
-
-static struct font_entry* font_tbl;
-static int font_tbl_size = 0;
-
-
-#line 8709 "./tex4ht-c.tex"
-
-static char* new_font_name;
-
-
-#line 8851 "./tex4ht-c.tex"
-
-static U_CHAR *lg_font_fmt = NULL;
-
-
-#line 9742 "./tex4ht-c.tex"
-
-static double word_sp = 999999.0, margin_sp;
-
-
-#line 9976 "./tex4ht-c.tex"
-
-static int ignore_ch = 0;
-
-
-#line 10020 "./tex4ht-c.tex"
-
-static unsigned U_CHAR null_str = '\0';
-
-
-#line 10486 "./tex4ht-c.tex"
-
-static short dump_htf_files = 0;
-static BOOL dump_env_files = FALSE;
-
-
-#line 10536 "./tex4ht-c.tex"
-
-static BOOL dumped_env = FALSE;
-
-
-#line 10693 "./tex4ht-c.tex"
-
-static BOOL verb_ch = FALSE;
-
-
-#line 10848 "./tex4ht-c.tex"
-
-static U_CHAR *class_fmt = NULL;
-
-
-#line 11072 "./tex4ht-c.tex"
-
-static U_CHAR *font_gif = NULL;
-
-
-#line 11109 "./tex4ht-c.tex"
-
-static U_CHAR *begin_char_gif = NULL;
-
-
-#line 11137 "./tex4ht-c.tex"
-
-static U_CHAR *gif = NULL;
-
-
-#line 11235 "./tex4ht-c.tex"
-
-
-static struct gif_file_rec * gif_file = (struct gif_file_rec *) 0;
-
-
-
-#line 11314 "./tex4ht-c.tex"
-
-
-static U_CHAR xeh[]="0123456789abcdefghijklmnopqrstuvxyz";
-
-
-
-#line 11386 "./tex4ht-c.tex"
-
-static BOOL gif_ch = TRUE;
-static int design_ch = 0;
-
-
-#line 11436 "./tex4ht-c.tex"
-
-static int pause_style = 0, default_font = -1, base_font_size=6533;
-static BOOL
- span_name_on = FALSE,
- span_on = FALSE;
-
-
-#line 11638 "./tex4ht-c.tex"
-
-static BOOL not_notify = FALSE;
-
-
-#line 11654 "./tex4ht-c.tex"
-
-static U_CHAR * span_name[256], * span_open[256], * span_size[256],
- * span_mag[256], * span_ch[256], * end_span[256],
- * span_ord[256], * gif_id[256];
-static U_CHAR class_on[32];
-
-
-#line 12334 "./tex4ht-c.tex"
-
-static BOOL needs_accent_sym = FALSE, needs_end_accent = FALSE;
-static char * t_accent_template = (char *) 0,
- * t_accent_first, * t_accent_second,
- * t_accent_third, * t_accent_fourth, * t_accent_fifth,
- * m_accent_template = (char *) 0,
- * m_accent_first, * m_accent_second,
- * m_accent_third, * m_accent_fourth, * m_accent_fifth;
-
-
-#line 12435 "./tex4ht-c.tex"
-
-static BOOL needs_accented_sym = 0;
-static char * a_accent_template = (char *) 0,
- * a_accent_first, * a_accent_second,
- * a_accent_third, * a_accent_fourth, * a_accent_fifth;
-
-
-#line 12451 "./tex4ht-c.tex"
-
-static char * i_accent_template = (char *) 0,
- * i_accent_first, * i_accent_second,
- * i_accent_third, * i_accent_fourth, * i_accent_fifth;
-
-
-#line 12553 "./tex4ht-c.tex"
-
-static BOOL math_class_on = FALSE, show_class = FALSE;
-static int open_del = 256, math_class, pause_class, ignore_subclass_del;
-
-
-#line 12561 "./tex4ht-c.tex"
-
-static int sv_group_dvi, sv_trace_dvi_C, sv_in_trace_char, sv_span_on,
- sv_in_span_ch;
-
-
-#line 12707 "./tex4ht-c.tex"
-
-static U_CHAR *open_class[
-#line 12743 "./tex4ht-c.tex"
-
-82
-
-],
- *close_class[
-#line 12743 "./tex4ht-c.tex"
-
-82
-
-];
-
-
-#line 13058 "./tex4ht-c.tex"
-
-static BOOL dump_env_search = FALSE;
-
-
-#line 13421 "./tex4ht-c.tex"
-
-static struct env_c_rec *envChoice
- = (struct env_c_rec*) 0;
-
-
-#line 13489 "./tex4ht-c.tex"
-
-static U_CHAR *fontdir[MAXFDIRS];
-static int fontdir_count = 0;
-
-
-#line 13724 "./tex4ht-c.tex"
-
-static struct cache_font_rec *cache_font, *cur_cache_font;
-
-
-#line 14140 "./tex4ht-c.tex"
-
-#ifndef KPATHSEA
-static BOOL tex4ht_fls = FALSE;
-static char *tex4ht_fls_name = (char *) 0;
-#endif
-
-
-#line 14203 "./tex4ht-c.tex"
-
-static U_CHAR *HOME_DIR;
-
-
-#line 14332 "./tex4ht-c.tex"
-
-#ifndef KPATHSEA
-static FILE* cache_files;
-#endif
-
-
-#line 14656 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
-static char * export_str_chars = (char *) 0;
-#endif
-
-
-#line 15062 "./tex4ht-c.tex"
-
-static BOOL dump_htf_search = FALSE;
-
-
-#line 15876 "./tex4ht-c.tex"
-
-static FILE* put_4ht_file = (FILE *) 0;
-static int put_4ht_off = 1;
-static char uni_code[MAX_UNI_CODE];
-static short uni_code_p = 0;
-
-
-#line 16047 "./tex4ht-c.tex"
-
-static int charset_n = 0, max_charset_n;
-static struct charset_rec *charset;
-
-
-#line 16215 "./tex4ht-c.tex"
-
-static BOOL u10 = FALSE;
-
-
-#line 16358 "./tex4ht-c.tex"
-
-static BOOL utf8 = FALSE;
-
-
-#line 16459 "./tex4ht-c.tex"
-
-static int htf_4hf_n = 0, max_htf_4hf_n;
-static struct htf_4hf_rec *htf_4hf;
-
-
-#line 16633 "./tex4ht-c.tex"
-
-static BOOL special_on = FALSE;
-
-
-#line 16901 "./tex4ht-c.tex"
-
-static const U_CHAR *warn_err_mssg[]={
-#line 16842 "./tex4ht-c.tex"
-
-
-#line 1530 "./tex4ht-c.tex"
-
-"improper command line\ntex4ht [-f<path-separator-ch>]in-file[.dvi]\n"
-" [-.<ext>] replacement to default file extension name .dvi\n"
-" [-c<tag name>] choose named segment in env file\n"
-" [-e<env-file>]\n"
-" [-f<path-separator-ch>] remove path from the file name\n"
-" [-F<ch-code>] replacement for missing font characters; 0--255; default 0\n"
-" [-g<bitmap-file-ext>]\n"
-" [-h[efFgsvVA]] trace: e-errors/warnings, f-htf, F-htf search\n"
-" g-groups, s-specials, v-env, V-env search, A-all\n"
-" [-i<htf-font-dir>]\n"
-" [-l<bookkeeping-file>]\n"
-" [-P(*|<filter>)] permission for system calls: *-always, filter\n"
-" [-S<image-script>]\n"
-" [-s<css-file-ext>] default: -s4cs; multiple entries allowed\n"
-" [-t<tfm-font-dir>]\n"
-" [-u10] base 10 for unicode characters\n"
-" [-utf8] utf-8 encoding for unicode characters\n"
-" [-v<idv version>] replacement for the given dvi version\n"
-" [-xs] ms-dos file names for automatically generated gifs\n"
-
-,
-"Can't find/open file `%s'\n",
-"Can't open output file for `%s'\n",
-"Can't close file `%s' (file is not open)\n",
-"Insufficient memory\n",
-"Bad character code: %d\n",
-"Can't find font number %d\n",
-"Improper dvi file\n",
-"Improper op while scanning font defs in postamble\n",
-"Problem with command line\n",
-"Font definition repeated in postamble\n",
-"Empty entry in font environment variable\n",
-"Can't access directory `%s\n'",
-"Too many directories in font environment variable\n",
-"Missing fonts, can't proceed\n",
-"Invalid header in file `%s'\n",
-"Checksum inconsistent\n",
-"MAXFONTS too small: %d\n",
-"Improper signature at end of file `%s.htf'\n",
-"Improper signature at start of file `%s.htf'\n",
-"Improper file `%s.htf'\n",
-"Couldn't find font `%s.htf' (char codes: ",
-"File `%s.htf' starts/ends with character code %d (instead of %d)\n",
-"Implementation problem\n",
-"Improper groups in \\special{t4ht+}... idv[%d]\n",
-"Too many characters (> %d) for map line: `%c'\n",
-"Extra characters in \\special{t4ht%c...",
-"Page break within a ch map/picture\n",
-"Char code >255 in htf file: %d\n",
-"Improper char for code in htf file: %c\n",
-
-#line 1220 "./tex4ht-c.tex"
-
-"Illegal storage address\n",
-"Floating-point\n",
-"Interrupt with Cntr-C\n",
-
-
-#ifdef DOS_WIN32
-"%c-script too long in tex4ht.env \n",
-#else
-"%c-script too long in tex4ht.env (.tex4ht)\n",
-#endif
-"Too many rows (> %d) for map: `%c'\n",
-"More than 256 strings in font\n",
-"\\special{t4ht;%c...}?\n",
-"\\special{t4ht;|%s}?\n",
-"\\special{t4ht~!%s}?\n",
-"\\special{t4ht\"...%s}?\n",
-"System error 40\n",
-"`%c' in \\special{t4ht@...} or \\special{t4ht@-...}?\n",
-"\\special{t4ht~...} without \\special{t4ht~}\n",
-"Ignoring \\special{t4ht.%s}\n",
-"PUSH for \\special{t4ht<...%s}?\n",
-"Bad character code (%d) in \\special{t4h~}...\n",
-"Page break in \\special{t4h~}...\n",
-"tex4ht.fls: Couldn't find file `%s'\n",
-"Improper entry (line %d)\n",
-"Improper environment variable %s: `%s'\n",
-"Missing %s\n",
-"Can't back from file `%s\n'",
-"\\special{t4ht%s}?\n",
-"Improper -v option\n",
-
- "" };
-
-
-#line 17132 "./tex4ht-c.tex"
-
-static BOOL err_context = FALSE;
-
-
-#line 17149 "./tex4ht-c.tex"
-
-static U_CHAR *err_mark = (char *) 0;
-
-
-#line 17169 "./tex4ht-c.tex"
-
-static BOOL trace_special = FALSE;
-
-
-
-#line 482 "./tex4ht-c.tex"
-
-#ifdef WIN32
-static BOOL sigint_handler(ARG_I(DWORD));
-#endif
-
-
-#line 1124 "./tex4ht-c.tex"
-
-static void
-
-#line 507 "./tex4ht-c.tex"
-
-#ifdef CDECL
-CDECL
-#endif
-
-
-sig_err(ARG_I(int));
-
-
-#line 1402 "./tex4ht-c.tex"
-
-static void* malloc_chk(ARG_I(int));
-
-
-#line 1418 "./tex4ht-c.tex"
-
-static void* r_alloc(ARG_II(void *, size_t));
-
-
-#line 1681 "./tex4ht-c.tex"
-
-static void strct( ARG_II(char *, const U_CHAR *) );
-
-
-#line 1720 "./tex4ht-c.tex"
-
-static void open_o_file( ARG_I(void) );
-
-
-#line 1820 "./tex4ht-c.tex"
-
-static FILE* open_html_file( ARG_I(char*) );
-
-
-#line 2798 "./tex4ht-c.tex"
-
-static void set_del( ARG_II(char **, U_CHAR **) );
-
-
-#line 2989 "./tex4ht-c.tex"
-
-static void try_new_line( ARG_I(void) );
-
-
-#line 3078 "./tex4ht-c.tex"
-
-static INTEGER move_x( ARG_I(register INTEGER) );
-
-
-#line 3177 "./tex4ht-c.tex"
-
-static INTEGER move_y( ARG_I(register INTEGER) );
-
-
-#line 3647 "./tex4ht-c.tex"
-
-static void rule_x( ARG_I(BOOL) );
-
-
-#line 3877 "./tex4ht-c.tex"
-
-static BOOL tex4ht_special( ARG_II( int*, long int*) );
-
-
-#line 4962 "./tex4ht-c.tex"
-
-static void init_ch_map( ARG_I(void) );
-
-
-#line 4999 "./tex4ht-c.tex"
-
-static void insert_ch_map( ARG_II(char,BOOL) );
-
-
-#line 5289 "./tex4ht-c.tex"
-
-static void dump_ch_map( ARG_I(void) );
-
-
-#line 5783 "./tex4ht-c.tex"
-
-static void set_loc( ARG_II(int, long int) );
-
-
-#line 6002 "./tex4ht-c.tex"
-
-static void idv_char( ARG_I(int) );
-
-
-#line 6015 "./tex4ht-c.tex"
-
-static void cond_idv_char( ARG_I(int) );
-
-
-#line 6030 "./tex4ht-c.tex"
-
-static void idv_copy( ARG_I(void) );
-
-
-#line 6045 "./tex4ht-c.tex"
-
-static void cond_idv_int( ARG_II(long int, int) );
-
-
-#line 6059 "./tex4ht-c.tex"
-
-static void int_to_dvi( ARG_II(long int, int) );
-
-
-#line 6081 "./tex4ht-c.tex"
-
-static void cond_string( ARG_II(int, int) );
-
-
-#line 6111 "./tex4ht-c.tex"
-
-static INTEGER advance_idv_page( ARG_II( INTEGER,char*) );
-
-
-#line 6154 "./tex4ht-c.tex"
-
-static void store_mv( ARG_II( int, INTEGER) );
-
-
-#line 7237 "./tex4ht-c.tex"
-
-static void push_stack( ARG_I(void) );
-
-
-#line 7284 "./tex4ht-c.tex"
-
-static void pop_stack( ARG_I(void) );
-
-
-#line 7385 "./tex4ht-c.tex"
-
-static struct del_stack_entry* push_del( ARG_II(char, int) );
-
-
-#line 7406 "./tex4ht-c.tex"
-
-static struct del_stack_entry* pop_del( ARG_III(char,int,int) );
-
-
-#line 7618 "./tex4ht-c.tex"
-
-static
-struct send_back_entry * rev_list( ARG_I(struct send_back_entry *) );
-
-
-#line 7672 "./tex4ht-c.tex"
-
-static struct send_back_entry *
- back_insert( ARG_II(struct send_back_entry *, int) );
-
-
-#line 8546 "./tex4ht-c.tex"
-
-static double pos_dbl( ARG_I(long int *) );
-
-
-#line 9266 "./tex4ht-c.tex"
-
-static void doGlyphArray( ARG_I(BOOL) );
-
-
-#line 9314 "./tex4ht-c.tex"
-
-static int search_font_tbl( ARG_I(int) );
-
-
-#line 10415 "./tex4ht-c.tex"
-
-static int get_html_ch( ARG_I(FILE*) );
-
-
-#line 10436 "./tex4ht-c.tex"
-
-static FILE* f_open( ARG_II(const char*,const char*) );
-
-
-#line 10460 "./tex4ht-c.tex"
-
-static void dump_htf( ARG_I(FILE*) );
-
-
-#line 10512 "./tex4ht-c.tex"
-
-static void dump_env( ARG_I(void) );
-
-
-#line 10545 "./tex4ht-c.tex"
-
-static void htf_to_lg( ARG_IV(struct html_font_rec*,char*,int,FILE*));
-
-
-#line 10595 "./tex4ht-c.tex"
-
-static INTEGER get_html_file_id( ARG_IV(FILE*, int, int, int) );
-
-
-#line 10729 "./tex4ht-c.tex"
-
-static void notify_class_info( ARG_I(int) );
-
-
-#line 10953 "./tex4ht-c.tex"
-
-static void script( ARG_IV(char *, U_CHAR *, int, U_CHAR *) );
-
-
-#line 11175 "./tex4ht-c.tex"
-
-
-static void dos_gif_file( ARG_III(char *, int, int) );
-
-
-
-#line 11344 "./tex4ht-c.tex"
-
-static void put_alt_ch( ARG_II( int, BOOL) );
-
-
-#line 12347 "./tex4ht-c.tex"
-
-static void get_open_accent(
- ARG_VII(char**, char**, char**, char**, char**, char**, long int*));
-
-
-#line 12589 "./tex4ht-c.tex"
-
-static int scan_class( ARG_I(int) );
-
-
-#line 12629 "./tex4ht-c.tex"
-
-static INTEGER set_ch_class( ARG_I(int) );
-
-
-#line 12684 "./tex4ht-c.tex"
-
-static int math_class_of( ARG_II(int,int) );
-
-
-#line 13290 "./tex4ht-c.tex"
-
-static char* get_script( ARG_III(char *, const U_CHAR *, int) );
-
-
-#line 13340 "./tex4ht-c.tex"
-
-static BOOL search_dot_file( ARG_I( int) );
-
-
-#line 13580 "./tex4ht-c.tex"
-
-static struct env_var_rec * get_env_var( ARG_I(const char *) );
-
-
-#line 13883 "./tex4ht-c.tex"
-
-static void com_dir( ARG_I(char*) );
-
-
-#line 14574 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-static void export_htf( ARG_II(char**, char[]) );
-#endif
-
-
-#line 15304 "./tex4ht-c.tex"
-
-static FILE* search_in_dot_file( ARG_IV( int, const U_CHAR *, const U_CHAR *,
- struct env_var_rec *) );
-
-
-#line 15349 "./tex4ht-c.tex"
-
-static FILE* search_file_base( ARG_IV( const U_CHAR *, const U_CHAR *, const U_CHAR *,
- struct env_var_rec *) );
-
-
-#line 15381 "./tex4ht-c.tex"
-
-static char * abs_addr( ARG_II( const U_CHAR *, const U_CHAR *) );
-
-
-#line 15422 "./tex4ht-c.tex"
-
-static FILE* search_file( ARG_III(const char *, const U_CHAR *, const U_CHAR *) );
-
-
-#line 15482 "./tex4ht-c.tex"
-
-static void add_to_cache( ARG_III(const char*,const char*,int) );
-
-
-#line 15503 "./tex4ht-c.tex"
-
-static FILE* search_file_ext( ARG_III(const char *, const U_CHAR *, const U_CHAR *) );
-
-
-#line 15578 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
- static BOOL is_forward_slash( ARG_I(const char*) );
-#endif
-
-
-#line 15802 "./tex4ht-c.tex"
-
-static FILE* f_open_pathed_filename( ARG_II(const char*,const char*) );
-
-
-#line 15836 "./tex4ht-c.tex"
-
-static INTEGER put_4ht_ch( ARG_II(int,FILE *) );
-
-
-#line 15910 "./tex4ht-c.tex"
-
-static void flush_uni( ARG_I(void) );
-
-
-#line 16573 "./tex4ht-c.tex"
-
-static INTEGER insert_ch( ARG_I(int) );
-
-
-#line 16611 "./tex4ht-c.tex"
-
-static void put_char( ARG_I(int) );
-
-
-#line 16644 "./tex4ht-c.tex"
-
-static void print_f( ARG_I(const char*) );
-
-
-#line 16664 "./tex4ht-c.tex"
-
-static void print_f_4ht( ARG_I(const char*) );
-
-
-#line 16689 "./tex4ht-c.tex"
-
-static int get_char( ARG_I(void) );
-
-
-#line 16701 "./tex4ht-c.tex"
-
-static int get_noop( ARG_I(void) );
-
-
-#line 16717 "./tex4ht-c.tex"
-
-static char* get_str( ARG_I(int) );
-
-
-#line 16741 "./tex4ht-c.tex"
-
-static long fget_unt( ARG_II(FILE*, int) );
-
-
-#line 16765 "./tex4ht-c.tex"
-
-static long fget_int( ARG_II(FILE *, int) );
-
-
-#line 16801 "./tex4ht-c.tex"
-
-static long cond_int( ARG_I(register INTEGER) );
-
-
-#line 16908 "./tex4ht-c.tex"
-
-static void warn_i( ARG_I(int) );
-
-
-#line 16932 "./tex4ht-c.tex"
-
-static void warn_i_int( ARG_II(int,int) );
-
-
-#line 16948 "./tex4ht-c.tex"
-
-static void warn_i_int_2( ARG_III(int,int,int) );
-
-
-#line 16964 "./tex4ht-c.tex"
-
-static void warn_i_str( ARG_II(int,const char *) );
-
-
-#line 16984 "./tex4ht-c.tex"
-
-static void warn_i_str2( ARG_III(int,const char *,const char *) );
-
-
-#line 17018 "./tex4ht-c.tex"
-
-static void err_i( ARG_I(int) );
-
-
-#line 17035 "./tex4ht-c.tex"
-
-static void err_i_int( ARG_II(int,int) );
-
-
-#line 17051 "./tex4ht-c.tex"
-
-static void err_i_str( ARG_II(int,char *) );
-
-
-#line 17098 "./tex4ht-c.tex"
-
-static void show_err_context( ARG_I(void) );
-
-
-
-#line 488 "./tex4ht-c.tex"
-
-#ifdef WIN32
-
-
-
-static BOOL sigint_handler
-#ifdef ANSI
-#define SEP ,
-( DWORD dwCtrlType
-)
-#undef SEP
-#else
-#define SEP ;
-(dwCtrlType) DWORD dwCtrlType
-;
-#undef SEP
-#endif
-{
-
-#line 502 "./tex4ht-c.tex"
-
-if( dwCtrlType ){ (IGNORED) printf(" "); }
-
-
- err_i(32);
- return FALSE;
-}
-#endif
-
-
-#line 1133 "./tex4ht-c.tex"
-
-
-static void
-
-#line 507 "./tex4ht-c.tex"
-
-#ifdef CDECL
-CDECL
-#endif
-
-
-sig_err
-#ifdef ANSI
-#define SEP ,
-( int s
-)
-#undef SEP
-#else
-#define SEP ;
-(s) int s
-;
-#undef SEP
-#endif
-{
- (void) signal(s,SIG_IGN);
- switch( s ){
-#ifdef SIGSEGV
- case SIGSEGV: err_i(30);
-#endif
- case SIGFPE : err_i(31);
-#if defined(SIGINT) && !defined(WIN32)
- case SIGINT : err_i(32);
-#endif
- }
-
-#line 750 "./tex4ht-c.tex"
-
-#ifdef __DJGPP__
- if (s != SIGINT && s != SIGQUIT)
- exit(EXIT_FAILURE);
-#endif
-
-
-}
-
-
-#line 1406 "./tex4ht-c.tex"
-
-
-static void* malloc_chk
-#ifdef ANSI
-#define SEP ,
-( int n
-)
-#undef SEP
-#else
-#define SEP ;
-( n ) int n
-;
-#undef SEP
-#endif
-{ void* p;
- if((p = (void *) malloc( (size_t) n)) == NULL ) bad_mem;
- return p;
-}
-
-
-#line 1422 "./tex4ht-c.tex"
-
-
-static void* r_alloc
-#ifdef ANSI
-#define SEP ,
-(
- void *q SEP
- size_t n
-)
-#undef SEP
-#else
-#define SEP ;
-( q, n )
- void *q SEP
- size_t n
-;
-#undef SEP
-#endif
-{ void* p;
- if((p = (void *) realloc( q, (size_t) n)) == NULL) bad_mem;
- return p;
-}
-
-
-#line 1685 "./tex4ht-c.tex"
-
-
-static void strct
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR * str1 SEP
- const U_CHAR * str2
-
-)
-#undef SEP
-#else
-#define SEP ;
-( str1, str2 )
- U_CHAR * str1 SEP
- const U_CHAR * str2
-
-;
-#undef SEP
-#endif
-{ U_CHAR * ch;
- ch = str1 + (int) strlen((char *) str1);
- (IGNORED) strcpy((char *) ch, str2 );
-}
-
-
-#line 1724 "./tex4ht-c.tex"
-
-static void open_o_file(MYVOID)
-{
-
-#line 1735 "./tex4ht-c.tex"
-
- struct files_rec* p;
-p = m_alloc(struct files_rec, 1);
-if( opened_files != (struct files_rec*) 0 ) opened_files->prev = p;
-p->prev = (struct files_rec *) 0;
-p->next = opened_files; opened_files = p;
-p->name = no_root_file;
-p->file =
-
-
- cur_o_file = root_file = open_html_file(no_root_file);
- no_root_file = (char *) 0;
-}
-
-
-#line 1824 "./tex4ht-c.tex"
-
-
-static FILE* open_html_file
-#ifdef ANSI
-#define SEP ,
-(
- char* name
-)
-#undef SEP
-#else
-#define SEP ;
-(name)
- char* name
-;
-#undef SEP
-#endif
-{ FILE* file;
- char* str;
- str = m_alloc(char, (int) strlen((char *) name) + 1);
- (IGNORED) strcpy((char *) str, (char *) name);
- (IGNORED) printf(" file %s\n", str);
- (IGNORED) fprintf(log_file, "File: %s\n", str);
- if( (file = fopen(str, WRITE_TEXT_FLAGS)) == NULL ) bad_in_file(str);
- free((void *) str);
- return file;
-}
-
-
-#line 2802 "./tex4ht-c.tex"
-
-
-static void set_del
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR ** del SEP
- U_CHAR ** end_del
-)
-#undef SEP
-#else
-#define SEP ;
-( del, end_del )
- U_CHAR ** del SEP
- U_CHAR ** end_del
-;
-#undef SEP
-#endif
-{
- *del = m_alloc(char, 1); **del = '\0';
- *end_del = m_alloc(char, 1); **end_del = '\0';
-}
-
-
-#line 2993 "./tex4ht-c.tex"
-
-static void try_new_line(MYVOID)
-{ long int v;
- double dy;
- dy = (cur_fnt == -1)? 0.0 : (
-#line 3016 "./tex4ht-c.tex"
-
-(
-#line 9905 "./tex4ht-c.tex"
-
-design_size_to_pt( 1.7 * (double) font_tbl[cur_fnt].ex )
-* (double) font_tbl[cur_fnt].scale
-
- < 0? -1 : 1)
-
- *
-#line 9905 "./tex4ht-c.tex"
-
-design_size_to_pt( 1.7 * (double) font_tbl[cur_fnt].ex )
-* (double) font_tbl[cur_fnt].scale
-
-) ;
- v = y_val - prev_y_val;
- if( !text_on && (y_val > max_y_val) ){
- if( v > dy/2.5 ){
-
-#line 1748 "./tex4ht-c.tex"
-
-if( !no_root_file ){
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
- if( !
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- ){ put_char('\n'); }
-}
-
- max_x_val = -10000;
- prev_y_val = max_y_val = stack_n? y_val : 0;
- }
- }else{
- if( v > dy ){
-#line 1748 "./tex4ht-c.tex"
-
-if( !no_root_file ){
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
- if( !
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- ){ put_char('\n'); }
-}
-
- max_x_val = x_val;
- prev_y_val = stack_n? y_val : 0;
- }else if( v < -(dy / 1.4) ) prev_y_val = stack_n? y_val : 0;
-} }
-
-
-#line 3082 "./tex4ht-c.tex"
-
-
-static INTEGER move_x
-#ifdef ANSI
-#define SEP ,
-(
- register INTEGER d
-)
-#undef SEP
-#else
-#define SEP ;
-( d )
- register INTEGER d
-;
-#undef SEP
-#endif
-{ register long i, dx;
- x_val += d;
- if( (x_val > max_x_val) && x_val ){
- if( max_x_val == -10000) max_x_val = x_val - d;
-
-#line 3237 "./tex4ht-c.tex"
-
-i = (INTEGER) ( (double) (dx = x_val - max_x_val)
- / (text_on? word_sp : margin_sp)
- + 0.5 );
-
-#line 3252 "./tex4ht-c.tex"
-
-if( i==0 ){
- i = (INTEGER) ( (double) dx
- / word_sp
- + 0.5 );
-}
-
-
-if( i<0 ) i=0;
-if( i==0 ){
-#line 3457 "./tex4ht-c.tex"
-
- long curr_pos;
- BOOL done;
- int ch, cr_fnt;
-curr_pos = ftell(dvi_file);
-done = FALSE;
-while( !done ){
- ch = get_char();
- switch( ch ){
-
-
-
-#line 3764 "./tex4ht-c.tex"
-
-case
-#line 17460 "./tex4ht-c.tex"
-
-246
-: (void) get_char();
-case
-#line 17457 "./tex4ht-c.tex"
-
-245
-: (void) get_char();
-case
-#line 17454 "./tex4ht-c.tex"
-
-244
-: (void) get_char();
-case
-#line 17451 "./tex4ht-c.tex"
-
-243
-: {
- for( i=0; i<14; i++ ){ ch = get_char(); }
- for( i=ch + get_char(); i>0; i--) (void) get_char();
- break;
-}
-
-
- case
-#line 17326 "./tex4ht-c.tex"
-
-141
-:
- case
-#line 17329 "./tex4ht-c.tex"
-
-142
-: { break; }
- default: {
- if( (ch <
-#line 17417 "./tex4ht-c.tex"
-
-171
-) || (ch >
-#line 17423 "./tex4ht-c.tex"
-
-234
-) ){
- done = TRUE;
- } else {
-
-#line 3482 "./tex4ht-c.tex"
-
- double word_sp;
-cr_fnt = ch -
-#line 17417 "./tex4ht-c.tex"
-
-171
-;
-cr_fnt = search_font_tbl( cr_fnt );
-word_sp = design_size_to_pt( font_tbl[cr_fnt].word_sp )
- * (double) font_tbl[cr_fnt].scale;
-i = (INTEGER) ( (double) dx
- / (text_on? word_sp : margin_sp)
- + 0.5 );
-
-#line 3252 "./tex4ht-c.tex"
-
-if( i==0 ){
- i = (INTEGER) ( (double) dx
- / word_sp
- + 0.5 );
-}
-
-
-if( i>0 ){ i =1; }
-
-
-} } } }
-(IGNORED) fseek(dvi_file, curr_pos,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-
- }
-if( i ){
-#line 2822 "./tex4ht-c.tex"
-
-if( trace_dvi_H && !ch_map_flag ){
- if( *trace_dvi_del_H != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d", trace_dvi_del_H, (int) dx);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_H);
-}
-
- }
-if( !ignore_spaces ){
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
- while( i-- ) { text_on=TRUE; put_char(' '); }
-} else { recover_spaces = (int) i; }
-max_x_val = x_val;
-
-
- } else if( d && text_on && (x_val != max_x_val) ){
-
-#line 3128 "./tex4ht-c.tex"
-
-if( !ignore_spaces ){
- i = (INTEGER) ( (double) (dx = d) / word_sp + 0.5 );
- if( i<0 ) i=0;
- if( !i ) i = dx>99999L;
- if( i ){ put_char(' '); }
-}
-
-
- }
- return d;
-}
-
-
-#line 3181 "./tex4ht-c.tex"
-
-
-static INTEGER move_y
-#ifdef ANSI
-#define SEP ,
-( register INTEGER d
-)
-#undef SEP
-#else
-#define SEP ;
-( d ) register INTEGER d
-;
-#undef SEP
-#endif
-{ y_val += d;
-
-#line 2831 "./tex4ht-c.tex"
-
-if( trace_dvi_V && !ch_map_flag ){
- if( *trace_dvi_del_V != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d", trace_dvi_del_V, d);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_V);
-}
-
-
- return d;
-}
-
-
-#line 3652 "./tex4ht-c.tex"
-
-
-static void rule_x
-#ifdef ANSI
-#define SEP ,
-(
- BOOL tag
-)
-#undef SEP
-#else
-#define SEP ;
-( tag )
- BOOL tag
-;
-#undef SEP
-#endif
-{ long i, right, up;
- up = (INTEGER) get_int(4);
- right = (INTEGER) get_int(4);
- if( ch_map_flag ){
-#line 5246 "./tex4ht-c.tex"
-
- long int sv_x_val, sv_y_val, sv_right, sv;
- int ch;
-sv_x_val = x_val;
-sv_y_val = y_val;
-sv_right = right;
-y_val-=up;
-if( right < 0 ){ x_val += right; right = -right; }
-if( up < 0 ){ y_val += up; up = -up; }
-ch = ( (right > xresolution) && (up > yresolution) ) ?
-
-#line 4861 "./tex4ht-c.tex"
-
-3
- : ( ( right > up )?
-#line 4855 "./tex4ht-c.tex"
-
-1
- :
-#line 4858 "./tex4ht-c.tex"
-
-2
- );
-right += x_val;
-up += sv = y_val;
-for( ; x_val < right; x_val += xresolution )
- for( y_val = sv ; y_val < up; y_val += yresolution )
- insert_ch_map((char) ch, FALSE);
-x_val = sv_x_val;
-y_val = sv_y_val;
-if( sv_x_val + sv_right > max_x_val ) max_x_val = sv_x_val + sv_right;
-if(
-#line 4994 "./tex4ht-c.tex"
-
-tag
- ) x_val += sv_right;
-
- }
- else if( pos_dvi ){
-
-#line 8351 "./tex4ht-c.tex"
-
- long int d;
-if( (up > 0) && (right > 0) ){
- if( *pos_line ){
- double from_x, from_y;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- from_x = pos_x_A * (x_val - base_pos_x) + pos_x_B;
- from_y = pos_y_C * (y_val - pos_y_E * up - base_pos_y) + pos_y_D;
- switch (rect_pos){
- case 1: {
- (IGNORED) fprintf(cur_o_file, pos_line,
- from_x, from_y,
- pos_x_A * right + pos_x_B + from_x,
- pos_y_C * up + pos_y_D + from_y );
- break; }
- case 2: {
- (IGNORED) fprintf(cur_o_file, pos_line,
- from_x, from_y,
- pos_x_A * right + pos_x_B + from_x,
- from_y,
- pos_y_C * up + pos_y_D );
- break; }
- default: {
- (IGNORED) fprintf(cur_o_file, pos_line,
- from_x, from_y,
- pos_x_A * right,
- pos_y_C * up);
- }
- }
- }
- if( x_val < min_pos_x ) min_pos_x = x_val;
- if( (d = x_val + right) > max_pos_x ) max_pos_x = d;
- if( (d = y_val - up) < min_pos_y ) min_pos_y = d;
- if( y_val > max_pos_y ) max_pos_y = y_val;
-}
-
-
- if( tag ) x_val += right;
- } else if( (up>0) && (right>0) ) {
-
-#line 3703 "./tex4ht-c.tex"
-
-if( (x_val + right) &&
- ( ((x_val + right) > max_x_val)
- || ( !text_on && !ignore_chs )
- )
-){
- if( (max_x_val == -10000) || ((x_val + right) <= max_x_val) )
- { max_x_val = x_val; }
- i = (INTEGER) ( (double) (x_val + right - max_x_val)
- / (text_on? word_sp : margin_sp)
- + 0.5 );
-
-#line 3728 "./tex4ht-c.tex"
-
-if( i==0 ){
- i = (INTEGER) ( (double) (x_val + right - max_x_val)
- / word_sp
- + 0.5 );
-}
-
-
- if( i && !text_on ) try_new_line();
-
-#line 2844 "./tex4ht-c.tex"
-
-if( trace_dvi_R && !ch_map_flag ){
- if( *trace_dvi_del_R != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_R, (int) x_val, (int) y_val);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_R);
-}
-
-
- while( i-- ) { text_on=TRUE;
- if( rule_ch && !
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- ){ put_char(rule_ch); }
- }
-
-#line 2855 "./tex4ht-c.tex"
-
-if( trace_dvi_R && !ch_map_flag ){
- if( *trace_dvi_del_r != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_R, (int) right, (int) up);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_r);
-}
-
-
- max_x_val = x_val + right;
-}
-
-
- if( tag ) x_val += right;
- } else {
-
-#line 3746 "./tex4ht-c.tex"
-
-
-#line 2844 "./tex4ht-c.tex"
-
-if( trace_dvi_R && !ch_map_flag ){
- if( *trace_dvi_del_R != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_R, (int) x_val, (int) y_val);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_R);
-}
-
-
-
-#line 2855 "./tex4ht-c.tex"
-
-if( trace_dvi_R && !ch_map_flag ){
- if( *trace_dvi_del_r != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_R, (int) right, (int) up);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_r);
-}
-
-
-
-
- if( tag ) x_val += right;
-} }
-
-
-#line 3881 "./tex4ht-c.tex"
-
-
-static BOOL tex4ht_special
-#ifdef ANSI
-#define SEP ,
-(
- int *chr SEP
- long int *special_n
-
-)
-#undef SEP
-#else
-#define SEP ;
-( chr, special_n)
- int *chr SEP
- long int *special_n
-
-;
-#undef SEP
-#endif
-{ BOOL tex4ht;
- int i;
- long unsigned N;
- tex4ht = FALSE;
-
-#line 3930 "./tex4ht-c.tex"
-
-*special_n = (long int) (N = get_unt(*chr -
-#line 17441 "./tex4ht-c.tex"
-
-239
- + 1));
-for(i=4; i--; ){
- special_hd[i] = (unsigned char) (N & 0xFF);
- N = N >> 8; }
-
-
- if( *special_n > (long int) 4 ){
- for(i=4; i<9; i++) special_hd[i]=get_char();
- special_hd[9]='\0';
-
-#line 3918 "./tex4ht-c.tex"
-
-tex4ht = (special_hd[4] == 't') || (special_hd[4] == 'T');
-tex4ht = tex4ht && special_hd[5] == '4';
-tex4ht = tex4ht && ((special_hd[6] == 'h') || (special_hd[6] == 'H'));
-tex4ht = tex4ht && ((special_hd[7] == 't') || (special_hd[7] == 'T'));
-if( tex4ht && trace_special ){
-
-#line 17181 "./tex4ht-c.tex"
-
-{ long curr_pos;
- int n, i;
- U_CHAR ch;
-
- curr_pos = ftell(dvi_file);
- print_f("\nSPECIAL: "); ch = special_hd[8]; i=60;
- for( n=*special_n - 3; n--;){
- if( !i ){ (IGNORED) putc( '\n', cur_o_file ); i=70; }
- else i--;
- (IGNORED) putc(( (ch>31) && (ch<127))? ch : ' ', cur_o_file);
- ch = get_char();
- }
- (IGNORED) putc( '\n', cur_o_file );
- (IGNORED) fseek(dvi_file, curr_pos,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-}
-
-
-}
-
-
- *chr = special_hd[8];
- tex4ht = tex4ht && ( (*chr == '=') || (*chr == '<') ||
- (*chr == '>') || (*chr == '*') || (*chr == '@') ||
- (*chr == ':') || (*chr == '"') || (*chr == '~') ||
- (*chr == ';') || (*chr == '.') || (*chr == '^') ||
- (*chr == '|') || (*chr == '+') || (*chr == '!') );
- *special_n -= 5; }
- else{ special_hd[4]='\0'; }
- return tex4ht;
-}
-
-
-#line 4966 "./tex4ht-c.tex"
-
-static void init_ch_map(MYVOID)
-{ int i;
- for( i=0; i<HEIGHT; i++ ){
- ch_map[i].max = 0; ch_map[i].chars = 0; ch_map[i].line = NULL; }
- max_map_line = -1;
- min_map_line = HEIGHT;
-}
-
-
-#line 5003 "./tex4ht-c.tex"
-
-
-static void insert_ch_map
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR ch SEP
- BOOL
-#line 4994 "./tex4ht-c.tex"
-
-tag
-
-
-)
-#undef SEP
-#else
-#define SEP ;
-( ch,
-#line 4994 "./tex4ht-c.tex"
-
-tag
- )
- U_CHAR ch SEP
- BOOL
-#line 4994 "./tex4ht-c.tex"
-
-tag
-
-
-;
-#undef SEP
-#endif
-{ int row, col;
-
-#line 5045 "./tex4ht-c.tex"
-
-{ double x;
- row = (int) ( (y_val>0? y_val : 0.0) / (double) yresolution + 0.5);
- if( row >= HEIGHT ){
- if( ok_map ){ warn_i_int_2( 34, row, ch); ok_map = FALSE; }
- return; }
- x = (x_val>0? x_val : 0.0 ) / (double) xresolution + 0.75;
- col = (int) x;
- if( (ch > ' ') && (ch != '-') && (ch != '|') ){
- if( row == prevrow ){
- if( (col == prevcol + 1) && (x > prev_x + 0.5) )
- insert_ch_map(' ', TRUE);
- else if( (col > prevcol + 1) && (x < prev_x+0.2)
- && ( ch != '&' ))
- col = prevcol + 1;
- }else prevrow = -1;
- prev_x = x
- + (
-#line 9821 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].wtbl
- + (int) (
-#line 9828 "./tex4ht-c.tex"
-
-*(font_tbl[cur_fnt].char_wi + (int)
- ( (design_ch? design_ch : ch) - font_tbl[cur_fnt].char_f)% 256)
-
-)) )
- * (double) font_tbl[cur_fnt].scale
-
-)
- / (double) xresolution;
- prevcol = col;
- }else prevrow = -1;
- prevrow = row;
-}
-
-
- if(ch != 10){
- if( (ch_map[row].max > MAX_MAP_LINE) || (col > MAX_MAP_LINE) ){
- if( ok_map ){ warn_i_int_2( 25, MAX_MAP_LINE, ch);
- ok_map = FALSE; }
- }else{
- if( row < min_map_line ) min_map_line = row;
- if( row > max_map_line ) max_map_line = row;
- if( ch_map[row].max ){
-#line 5122 "./tex4ht-c.tex"
-
- int n;
- char* p;
-if( ch_map[row].chars > col ){
-
-#line 5173 "./tex4ht-c.tex"
-
-if(
-#line 4994 "./tex4ht-c.tex"
-
-tag
- ){
- if( *(ch_map[row].line + ch_map[row].max - 1)
- || (ch_map[row].chars - col == 1) ){
-#line 5218 "./tex4ht-c.tex"
-
-ch_map[row].max += 5;
-ch_map[row].line = (char *)
- r_alloc((void *) ch_map[row].line,
- (size_t) ch_map[row].max + 1 );
-for( n = 0; n<5; n++ )
- *(ch_map[row].line + ch_map[row].max - n) = 0;
-ch_map[row].chars += 5;
-
- }
- col = (ch_map[row].chars--) - col;
- p = ch_map[row].line + ch_map[row].max;
- while( col ){ unsigned char temp_ch;
- if( ((unsigned char) (*p)) <
-#line 4864 "./tex4ht-c.tex"
-
-4
- ) col--;
- temp_ch = *(--p); *(p+1) = temp_ch; }
-} else {
- col = ch_map[row].chars - col;
- p = ch_map[row].line + ch_map[row].max;
- while( col ){
- if( ((unsigned char) (*p)) <
-#line 4864 "./tex4ht-c.tex"
-
-4
- ) col--; p--; }
-}
-*(++p) = ch;
-
- }
-else{
-#line 5136 "./tex4ht-c.tex"
-
-n = (col - ch_map[row].chars + 8) / 5 * 5;
-ch_map[row].chars += n -
-#line 4994 "./tex4ht-c.tex"
-
-tag
-;
-ch_map[row].max += n;
-ch_map[row].line = (char *)
- r_alloc((void *) ch_map[row].line,
- (size_t) ch_map[row].max + 1);
-while( n-- ) *(ch_map[row].line + ch_map[row].max - n) = 0;
-*(ch_map[row].line + ch_map[row].max
- - (ch_map[row].chars - col) + !
-#line 4994 "./tex4ht-c.tex"
-
-tag
- ) = ch;
-
- }
-
- }
- else {
-#line 5091 "./tex4ht-c.tex"
-
- int n;
- char* p;
-ch_map[row].chars = (n = (col + 2 + 5) / 5 * 5) -
-#line 4994 "./tex4ht-c.tex"
-
-tag
-;
-ch_map[row].max = n - 1;
-ch_map[row].line = p = m_alloc(char, n);
-while( n-- ){ *(p++) = 0; }
-*(ch_map[row].line + col) = ch;
-
- }
-} } }
-
-
-#line 5297 "./tex4ht-c.tex"
-
-static void dump_ch_map(MYVOID)
-{ int n, i, min, k, extra_sp;
- U_CHAR *p;
-
-
-#line 5327 "./tex4ht-c.tex"
-
-{ int max;
- min = 100; max = 0;
- for( i=min_map_line; i<=max_map_line; i++ ){
- p = ch_map[i].line;
- n = ch_map[i].max; if( max < n ) max = n;
- k = 0; while( n-- ){ if(*(p++)) break; k++; }
- if( ch_map[i].max && (k < min) ) min = k; }
- if( (max < 78) && !nomargin ) min = 0;
-}
-
-
- for( i=min_map_line; i<=max_map_line; i++ ){
- if( ( n = ch_map[i].max) > 0 ){
- p = ch_map[i].line; k = min; extra_sp = 0;
-
-#line 5340 "./tex4ht-c.tex"
-
-{ U_CHAR *s;
- s = p + n;
- while( n && !(*s) && !(*(s-1)) ){ n--; s--; }
- if( n && !(*s) && (((unsigned char) *(s-1)) <
-#line 4864 "./tex4ht-c.tex"
-
-4
-) ) n--;
-}
-
-
- while( 1 + n-- ){
- if( --k < 0 ){
- if( extra_sp && (((unsigned char) *p) <
-#line 4864 "./tex4ht-c.tex"
-
-4
-)
- && (((unsigned char) *(p+1)) <
-#line 4864 "./tex4ht-c.tex"
-
-4
-) )
- { extra_sp--;
- } else { switch( *p ){
-#line 5348 "./tex4ht-c.tex"
-
- case 0: { put_char(' '); break; }
- case
-#line 4855 "./tex4ht-c.tex"
-
-1
-: { put_char('-'); break; }
- case
-#line 4858 "./tex4ht-c.tex"
-
-2
-: { put_char('|'); break; }
-case
-#line 4861 "./tex4ht-c.tex"
-
-3
-: { put_char('#'); break; }
- case ' ': { extra_sp++; }
- default: {
-#line 5357 "./tex4ht-c.tex"
-
- BOOL tag;
- INTEGER count;
-tag = TRUE; count = 0;
-do{ if( *p == '<' ) tag = FALSE;
- else if( *p == '>' ) tag = TRUE;
- else count += tag;
- put_char( *p ); n--;
-}while( ((unsigned char) *(++p)) >=
-#line 4864 "./tex4ht-c.tex"
-
-4
- );
-if( !count ){ n++; p--; }
-
- break; }
-
- } }
- }
- p++;
- }
- free((void *) ch_map[i].line );
- }
- if( i<max_map_line ) put_char('\n');
- }
- nomargin = FALSE;
-}
-
-
-#line 5787 "./tex4ht-c.tex"
-
-
-static void set_loc
-#ifdef ANSI
-#define SEP ,
-(
- int op SEP
- long int d
-
-)
-#undef SEP
-#else
-#define SEP ;
-( op, d )
- int op SEP
- long int d
-
-;
-#undef SEP
-#endif
-{
- idv_char( op + 3 ); int_to_dvi( d, 4 ); file_n += 5;
-}
-
-
-#line 6006 "./tex4ht-c.tex"
-
-
-static void idv_char
-#ifdef ANSI
-#define SEP ,
-( int n
-)
-#undef SEP
-#else
-#define SEP ;
-( n ) int n
-;
-#undef SEP
-#endif
-{ (IGNORED) putc( n, idv_file ); }
-
-
-#line 6019 "./tex4ht-c.tex"
-
-
-static void cond_idv_char
-#ifdef ANSI
-#define SEP ,
-( int n
-)
-#undef SEP
-#else
-#define SEP ;
-( n ) int n
-;
-#undef SEP
-#endif
-{
- if( dvi_flag ){ (IGNORED) putc( n, idv_file ); file_n++; }
-}
-
-
-#line 6034 "./tex4ht-c.tex"
-
-static void idv_copy( MYVOID )
-{ idv_char( get_char() ); file_n++; }
-
-
-#line 6049 "./tex4ht-c.tex"
-
-
-static void cond_idv_int
-#ifdef ANSI
-#define SEP ,
-( long int val SEP
- int n
-)
-#undef SEP
-#else
-#define SEP ;
-( val, n ) long int val SEP
- int n
-;
-#undef SEP
-#endif
-{
- if( dvi_flag ){ int_to_dvi((long int) val, n ); file_n += n; }
-}
-
-
-#line 6063 "./tex4ht-c.tex"
-
-
-static void int_to_dvi
-#ifdef ANSI
-#define SEP ,
-( long int val SEP
- int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-( val, n ) long int val SEP
- int n
-
-;
-#undef SEP
-#endif
-{ unsigned U_CHAR ch2, ch3, ch4;
- ch4 = (unsigned char) (val & 0xFF); val = val >> 8;
- ch3 = (unsigned char) (val & 0xFF); val = val >> 8;
- ch2 = (unsigned char) (val & 0xFF); val = val >> 8;
- switch( n ){
- case 4: idv_char( (int) val );
- case 3: idv_char( ch2 );
- case 2: idv_char( ch3 );
- case 1: idv_char( ch4 ); }
-
-}
-
-
-#line 6085 "./tex4ht-c.tex"
-
-
-static void cond_string
-#ifdef ANSI
-#define SEP ,
-( int ch SEP int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-(ch, n) int ch SEP int n
-
-;
-#undef SEP
-#endif
-{ cond_idv_char( ch );
- while( n-- ) cond_idv_char( get_char() );
-}
-
-
-#line 6115 "./tex4ht-c.tex"
-
-
-static INTEGER advance_idv_page
-#ifdef ANSI
-#define SEP ,
-(
- INTEGER bop_addr SEP
- char* cur_font
-
-)
-#undef SEP
-#else
-#define SEP ;
-( bop_addr, cur_font )
- INTEGER bop_addr SEP
- char* cur_font
-
-;
-#undef SEP
-#endif
-{ int i;
- if( page_n++ ){
- idv_char(
-#line 17329 "./tex4ht-c.tex"
-
-142
-); file_n++;
- idv_char(
-#line 17323 "./tex4ht-c.tex"
-
-140
-); file_n++;
- idv_char(
-#line 17320 "./tex4ht-c.tex"
-
-139
- );
- idv_int( page_n ); for( i=36; i--; ) idv_char( 0);
- idv_int( bop_addr ); bop_addr = file_n; file_n += 45;
- idv_char(
-#line 17326 "./tex4ht-c.tex"
-
-141
-); file_n++;
- for( i=1; i<=cur_font[0]; i++ ){
- idv_char( cur_font[i] ); file_n++;
- } }
-
-#line 6147 "./tex4ht-c.tex"
-
-store_mv(
-#line 17356 "./tex4ht-c.tex"
-
-151
-, dx_1);
-store_mv(
-#line 17371 "./tex4ht-c.tex"
-
-156
-, dx_2);
-store_mv(
-#line 17398 "./tex4ht-c.tex"
-
-165
-, dy_1);
-store_mv(
-#line 17413 "./tex4ht-c.tex"
-
-170
-, dy_2);
-
-
- return bop_addr;
-}
-
-
-#line 6172 "./tex4ht-c.tex"
-
-
-static void store_mv
-#ifdef ANSI
-#define SEP ,
-( int op SEP INTEGER d
-
-)
-#undef SEP
-#else
-#define SEP ;
-(op, d) int op SEP INTEGER d
-
-;
-#undef SEP
-#endif
-{
- if( dvi_flag ){
- cond_idv_char(op); idv_int( (INTEGER) -d);
- cond_idv_char(op); idv_int( (INTEGER) d); file_n += 8; }
-}
-
-
-#line 7241 "./tex4ht-c.tex"
-
-static void push_stack(MYVOID)
-{
- stack[stack_n].x_val = x_val;
- stack[stack_n].dx_1 = dx_1;
- stack[stack_n].dx_2 = dx_2;
- stack[stack_n].y_val = y_val;
- stack[stack_n].dy_1 = dy_1;
- stack[stack_n].dy_2 = dy_2;
-
-#line 7259 "./tex4ht-c.tex"
-
-stack[stack_n+1].sv_no_left_del = stack[stack_n+1].no_left_del;
-stack[stack_n+1].no_left_del = stack[stack_n].no_left_del;
-
-
- stack_n++;
-if( stack_n >
-#line 6684 "./tex4ht-c.tex"
-
-((int) stack_len + 2)
-
- ){
- warn_i(40);
-}
-
-#line 12475 "./tex4ht-c.tex"
-
-stack[stack_n].accented = FALSE;
-
-
-}
-
-
-#line 7288 "./tex4ht-c.tex"
-
-static void pop_stack(MYVOID)
-{
-
-#line 12468 "./tex4ht-c.tex"
-
-if( stack[stack_n].accented ){
-
-#line 12419 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
- stack[stack_n].accented=FALSE;
-}
-
-
-
-#line 7264 "./tex4ht-c.tex"
-
-stack[stack_n].no_left_del = stack[stack_n].sv_no_left_del;
-
-
- --stack_n;
- x_val = stack[stack_n].x_val;
- dx_1 = stack[stack_n].dx_1;
- dx_2 = stack[stack_n].dx_2;
- y_val = stack[stack_n].y_val;
- dy_1 = stack[stack_n].dy_1;
- dy_2 = stack[stack_n].dy_2;
-}
-
-
-#line 7389 "./tex4ht-c.tex"
-
-
-static struct del_stack_entry* push_del
-#ifdef ANSI
-#define SEP ,
-( U_CHAR ch SEP
- int cr_fnt
-)
-#undef SEP
-#else
-#define SEP ;
-(ch, cr_fnt) U_CHAR ch SEP
- int cr_fnt
-;
-#undef SEP
-#endif
-{ struct del_stack_entry *p;
- p = m_alloc(struct del_stack_entry,1);
- p->next = del_stack;
- p->ch = ch;
- p->fnt = cr_fnt;
- p->id = ch_id;
- return p;
-}
-
-
-#line 7410 "./tex4ht-c.tex"
-
-
-static struct del_stack_entry* pop_del
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR ch SEP
- int id_hide SEP
- int cr_fnt
-)
-#undef SEP
-#else
-#define SEP ;
-(ch, id_hide, cr_fnt)
- U_CHAR ch SEP
- int id_hide SEP
- int cr_fnt
-;
-#undef SEP
-#endif
-{
- if( del_stack != (struct del_stack_entry*) 0 ){
- if( (cr_fnt == del_stack->fnt) &&
- ( *(font_tbl[cr_fnt].math + (ch - font_tbl[cr_fnt].char_f))
- == del_stack->ch) ){
- struct del_stack_entry * p;
- if( !id_hide && !id_latex ){ sv_id = del_stack->id; }
- del_stack = (p = del_stack)->next; free((void *) p );
- } }
- return del_stack;
-}
-
-
-#line 7623 "./tex4ht-c.tex"
-
-
-static struct send_back_entry * rev_list
-#ifdef ANSI
-#define SEP ,
-(
- struct send_back_entry *back_group
-)
-#undef SEP
-#else
-#define SEP ;
-(back_group)
- struct send_back_entry *back_group
-;
-#undef SEP
-#endif
-{ struct send_back_entry *p, *q, *t;
- if( back_group->id == -1 ){ return back_group; }
- p = back_group; q = p->next;
- while( p->id != -1 ){
- t = q->next; q->next = p; p = q; q = t;
- }
- back_group->next = p;
- return p->next;
-}
-
-
-#line 7677 "./tex4ht-c.tex"
-
-
-static struct send_back_entry * back_insert
-#ifdef ANSI
-#define SEP ,
-(
- struct send_back_entry *back SEP
- int id
-)
-#undef SEP
-#else
-#define SEP ;
-(back, id)
- struct send_back_entry *back SEP
- int id
-;
-#undef SEP
-#endif
-{
- while( back->id == id ){
- struct send_back_entry *p;
- print_f( back->send );
- back = (p = back)->next;
- free((void *) p->send );
- free((void *) p );
- }
- return back;
-}
-
-
-#line 8550 "./tex4ht-c.tex"
-
-
-static double pos_dbl
-#ifdef ANSI
-#define SEP ,
-( long int * special_n
-)
-#undef SEP
-#else
-#define SEP ;
-( special_n ) long int * special_n
-;
-#undef SEP
-#endif
-{
- U_CHAR ch;
- double v;
- int d;
- v = 0.0; d = 10;
- while( --(*special_n) > 0 ){
- ch = get_char();
- if( ('0' <= ch ) && (ch <= '9' ) ){
- v += (double) (ch -'0') / d; d *= 10; }
- else break;
- }
- return v;
-}
-
-
-#line 9270 "./tex4ht-c.tex"
-
-
-static void doGlyphArray
-#ifdef ANSI
-#define SEP ,
-(
- BOOL yLocs
-)
-#undef SEP
-#else
-#define SEP ;
-(yLocs)
- BOOL yLocs
-;
-#undef SEP
-#endif
-{ int i, glyphCount;
- (void) get_unt(4);
- glyphCount = (INTEGER) get_unt(2);
- for( i = 0; i < glyphCount; ++i ){
- (void) get_int(4);
- if( yLocs ){ (void) get_int(4); }
- }
- for (i = 0; i < glyphCount; ++i){
- (void) get_unt(2);
- }
-}
-
-
-#line 9318 "./tex4ht-c.tex"
-
-
-static int search_font_tbl
-#ifdef ANSI
-#define SEP ,
-(
- int cur_fnt
-)
-#undef SEP
-#else
-#define SEP ;
-( cur_fnt )
- int cur_fnt
-;
-#undef SEP
-#endif
-{ int i;
- for( i=0; i<font_tbl_size; i++){
- if( font_tbl[i].num == cur_fnt ){ return i; }
- }
- err_i_int( 6,cur_fnt );
- return 0;
-}
-
-
-#line 10419 "./tex4ht-c.tex"
-
-
-static int get_html_ch
-#ifdef ANSI
-#define SEP ,
-( FILE* file
-
-)
-#undef SEP
-#else
-#define SEP ;
-( file ) FILE* file
-
-;
-#undef SEP
-#endif
-{ int ch;
- if( (ch = (int) getc(file)) == EOF ) {
- dump_htf( file );
- err_i_str(20, new_font_name);
- }
- return ch;
-}
-
-
-#line 10440 "./tex4ht-c.tex"
-
-
-static FILE* f_open
-#ifdef ANSI
-#define SEP ,
-(
- const char* name SEP
- const char* flags
-)
-#undef SEP
-#else
-#define SEP ;
-( name, flags )
- const char* name SEP
- const char* flags
-;
-#undef SEP
-#endif
-{ FILE* file;
- if( (file = fopen(name,flags) ) != NULL ) {
- (IGNORED) printf("(%s)\n",name);
- }
- return file;
-}
-
-
-#line 10464 "./tex4ht-c.tex"
-
-
-static void dump_htf
-#ifdef ANSI
-#define SEP ,
-( FILE* file
-
-)
-#undef SEP
-#else
-#define SEP ;
-( file ) FILE* file
-
-;
-#undef SEP
-#endif
-{ int i, j, ch, chr=0;
- (IGNORED) fseek(file, 0L, 0);
- i=-1; j=0;
- while( (ch = getc(file)) != EOF ){
- if( !j ){ chr = ch; }
- j += ch==chr;
- (IGNORED) putc(ch,stderr);
- if( ch == '\n' ){
- if( (i>-1 ) && (j<4) && (dump_htf_files<2) ){
- (IGNORED) printf("missing delimiter \n");
- }
- (IGNORED) fprintf(stderr,"%d: ",++i);
- j=0;
-} } }
-
-
-#line 10516 "./tex4ht-c.tex"
-
-static void dump_env( MYVOID )
-{
- int ch;
- if( !dumped_env ){
- dumped_env = TRUE;
- (IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- (IGNORED) fprintf(stderr,
- "\n----------------------------------------------------\n");
- (IGNORED) fprintf(stderr, "environment file\n");
- (IGNORED) fprintf(stderr,
- "----------------------------------------------------\n");
- while( (ch = getc(dot_file)) != EOF ){
- (IGNORED) putc(ch,stderr);
- }
- (IGNORED) fprintf(stderr,
- "----------------------------------------------------\n");
-} }
-
-
-#line 10549 "./tex4ht-c.tex"
-
-
-static void htf_to_lg
-#ifdef ANSI
-#define SEP ,
-(
-
- struct html_font_rec* html_font SEP
- char* new_font_name SEP
- int fonts_n SEP
- FILE* file
-)
-#undef SEP
-#else
-#define SEP ;
-(html_font, new_font_name, fonts_n, file)
-
- struct html_font_rec* html_font SEP
- char* new_font_name SEP
- int fonts_n SEP
- FILE* file
-;
-#undef SEP
-#endif
-{
- int ch, i;
- for( i = 0 ; i<fonts_n; ){
- if( eq_str(html_font[i].name, new_font_name) ){ break; }
- i++;
- }
- if( i == fonts_n ){
- BOOL content;
- int prev_ch;
- prev_ch = '\n'; content = FALSE;
- while( (ch = (int) getc(file)) != EOF ) {
- if( (ch != '\n') || (prev_ch != '\n') ){
- (void) putc( ch, log_file );
- prev_ch = ch; content = TRUE;
- } }
- if( content && (prev_ch != '\n') ){
- (void) putc( '\n', log_file );
- }
-} }
-
-
-#line 10599 "./tex4ht-c.tex"
-
-
-static INTEGER get_html_file_id
-#ifdef ANSI
-#define SEP ,
-(
- FILE* file SEP
- int first SEP int last SEP int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-(file, first, last, n)
- FILE* file SEP
- int first SEP int last SEP int n
-
-;
-#undef SEP
-#endif
-{ int ch, i, bound, cnt;
- INTEGER diff;
- char* name;
- name = new_font_name;
- while( *name == (ch = get_html_ch(file)) ) name++;
-
-#line 10116 "./tex4ht-c.tex"
-
-if( ( name == new_font_name ) && (n == 19) && (ch=='.') ){
- return HTF_ALIAS;
-}
-
-
- if( (*name != '\0') || (ch != ' ') ) warn_i_str(n, name);
- bound = first; diff = 0;
- for( cnt = 0; cnt < 2; cnt++ ){
- while( ch == ' ' ) ch = get_html_ch(file);
- i = 0;
- while( (ch >= '0') && (ch <= '9') ){
- i = i * 10 + ch - '0'; ch = get_html_ch(file); }
- if( i != bound ){
-
-#line 16921 "./tex4ht-c.tex"
-
-(IGNORED) fprintf(stderr,"--- warning --- ");
-(IGNORED) fprintf(stderr, warn_err_mssg[22]
-
-, new_font_name, i, bound); show_err_context();
- diff = diff * 1000 + i - bound; }
- bound = last; }
- while( ch != '\n' ) ch = get_html_ch(file);
- return diff;
-}
-
-
-#line 10733 "./tex4ht-c.tex"
-
-
-static void notify_class_info
-#ifdef ANSI
-#define SEP ,
-( int gif_flag
-)
-#undef SEP
-#else
-#define SEP ;
-( gif_flag ) int gif_flag
-;
-#undef SEP
-#endif
-{ U_CHAR str[256], *p;
- str[0] = '\0';
- p = gif_open[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_alt[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_class[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_size[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_mag[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_ord[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = gif_end[gif_flag];
- if( p )
- if( *p ) (IGNORED) strct(str,p);
- p = str;
- while( *p ){
- if( *p == '\n' ) *p = ' ';
- p++;
- }
- (IGNORED) fprintf(log_file, class_fmt,
- gif_flag,
- gif_id[gif_flag]? gif_id[gif_flag] : "",
- str);
-}
-
-
-#line 10957 "./tex4ht-c.tex"
-
-
-static void script
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR *templt SEP
- U_CHAR *job SEP
- int page SEP
- U_CHAR *font
-
-)
-#undef SEP
-#else
-#define SEP ;
-(templt, job, page, font)
- U_CHAR *templt SEP
- U_CHAR *job SEP
- int page SEP
- U_CHAR *font
-
-;
-#undef SEP
-#endif
-{ U_CHAR *ch, *p;
- U_CHAR fmt[256];
- job[ (int) strlen((char *) job) - 1 ] ='\0';
- p = ch = templt;
- while( TRUE ){
- if( *ch == '%' ){
-
-#line 10991 "./tex4ht-c.tex"
-
-*ch = '\0'; (IGNORED) fprintf(log_file, "%s", p);
-*(ch++) = '%';
-
-
-
-#line 11002 "./tex4ht-c.tex"
-
-p=fmt; *(p++) = '%';
-if( *ch == '\0' ){ job[ (int) strlen((char *) job) ] ='.'; return; }
-while( *ch != '%' ){ *(p++) = *(ch ++); }
-*(p+1) = '\0';
-
-
- switch( *(++ch) ){
- case '1':{ *p = 's';
- (IGNORED) fprintf(log_file, fmt, job); break;}
- case '2':{ *p = 'd';
- (IGNORED) fprintf(log_file, fmt, page); break;}
- case '3':{ *p = 's';
- (IGNORED) fprintf(log_file, fmt, font); break;}
- case '%':{ *p = 'c';
- (IGNORED) fprintf(log_file, fmt, '%'); break;}
- default:{ job[ (int) strlen((char *) job) ] ='.'; return;}
- }
- p = ++ch;
- }else ch++;
-} }
-
-
-#line 11185 "./tex4ht-c.tex"
-
-
-
-static void dos_gif_file
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR *str SEP
- int mag SEP
- int design_ch
-
-)
-#undef SEP
-#else
-#define SEP ;
-(str, mag, design_ch)
- U_CHAR *str SEP
- int mag SEP
- int design_ch
-
-;
-#undef SEP
-#endif
-{ int n, m, i;
- struct gif_file_rec * p, * q;
- U_CHAR *ch;
- m = n = (int) strlen((char *) str);
- if( n > 4 ){
-
-#line 11245 "./tex4ht-c.tex"
-
-if( (p = gif_file) != NULL ){
- while( TRUE ){
- if( eq_str( str, p->name ) ) break;
- if( (p = p->next) == gif_file ){ p = NULL; break; }
-} }
-
-
- if( p == NULL ){
-#line 11258 "./tex4ht-c.tex"
-
-p = m_alloc(struct gif_file_rec, 1);
-
-#line 11278 "./tex4ht-c.tex"
-
-for(i=str[n]; n; ){ i+=str[--n]; if( i > (INT_MAX / 8) ) i/=2; }
-if( (n=i % BASE) <10 ) n+= 10 + i%(BASE-20);
-*(ch = p->code)= n; n += i;
-ch[1] = n%BASE; n += i;
-ch[2] = n%BASE; n += i;
-ch[3] = n%BASE;
-
-
-
-#line 11292 "./tex4ht-c.tex"
-
-if( gif_file ){
- q = gif_file->next;
- while( TRUE ){
- if( (*(q->code) == *ch) && (*(q->code+1) == ch[1]) &&
- (*(q->code) == ch[2]) && (*(q->code+2) == ch[3]) ){
- ch[3] ++; ch[2] += ch[3]/ BASE; ch[3] = ch[3] % BASE;
- ch[1] += ch[2]/ BASE; ch[2] = ch[2] % BASE;
- ch[1] = ch[1] % BASE;
- q = gif_file;
- } else if( q == gif_file ) break;
- q = q->next;
-} }
-
-
-(IGNORED) printf("\nRenaming `%s____%s' to `%c%c%c%c____%s'\n",
- str, gif,
- xeh[(int)(ch[0])], xeh[(int)(ch[1])],
- xeh[(int)(ch[2])], xeh[(int)(ch[3])]
- , gif);
-p->name = m_alloc(char,m+1);
-(IGNORED) strcpy((char *) p->name, (char *) str );
-if( gif_file ){ p->next = gif_file->next; gif_file->next = p; }
- else p->next = p;
-
- }
- gif_file = p;
- for( n=0; n<4; n++ ) str[n] = xeh[(int)(*(p->code + n))];
- }
- str[n++] = xeh[mag<16? 0: mag / 16];
- str[n++] = xeh[mag % 16];
- str[n++] = xeh[design_ch<16? 0: design_ch / 16];
- str[n++] = xeh[design_ch % 16];
- str[n] = '\0';
-}
-
-
-
-#line 11348 "./tex4ht-c.tex"
-
-
-static void put_alt_ch
-#ifdef ANSI
-#define SEP ,
-(
- int chr SEP
- BOOL ch_str_flag
-)
-#undef SEP
-#else
-#define SEP ;
-(chr,ch_str_flag)
- int chr SEP
- BOOL ch_str_flag
-;
-#undef SEP
-#endif
-{
- if( !ch_str_flag ) put_char( chr );
- else if( chr > 0 ){
-#line 11365 "./tex4ht-c.tex"
-
- unsigned U_CHAR * p;
-p = font_tbl[cur_fnt].str[chr-1];
-if( gif_ch ) print_f( (char *) p );
-else while( *p ){
- switch( *p ){
- case '<': { while( *p && (*p != '>') ) p++; break; }
- case '>':
- case '"': { p++; break; }
- case '\'': { p++; break; }
- default: { put_char( (int) *p ) ; p++; }
-} }
-
- }
-}
-
-
-#line 12352 "./tex4ht-c.tex"
-
-
-static void get_open_accent
-#ifdef ANSI
-#define SEP ,
-(
- char **all SEP
- char **first SEP
- char **second SEP
- char **third SEP
- char **fourth SEP
- char **fifth SEP
- long int *n
-)
-#undef SEP
-#else
-#define SEP ;
-(all,first,second,third,fourth,fifth,n)
- char **all SEP
- char **first SEP
- char **second SEP
- char **third SEP
- char **fourth SEP
- char **fifth SEP
- long int *n
-;
-#undef SEP
-#endif
-{ char *p, *q;
- int i;
- if( *all ){ free((void *) *all); }
- *all = p = get_str( (int) *n ); *n=0;
- i = 2;
- *first = q = p + 1;
- while ( TRUE ){
- if( *q == *p ){
- *q = '\0';
- switch( i ){
- case 2:{ *second = q+1; break; }
- case 3:{ *third = q+1; break; }
- case 4:{ *fourth = q+1; break; }
- case 5:{ *fifth = q+1; break; }
- }
- if( i++ == 5 ){ break; }
- } else if( !*q ){
- free((void *) *all); *all = (char *) 0; break;
- }
- q++;
-} }
-
-
-#line 12593 "./tex4ht-c.tex"
-
-
-static int scan_class
-#ifdef ANSI
-#define SEP ,
-(
- int flag
-)
-#undef SEP
-#else
-#define SEP ;
-( flag )
- int flag
-;
-#undef SEP
-#endif
-{ int math_class;
- math_class = get_char();
- if( (math_class >= '0' )
- && (math_class < '0' +
-#line 12719 "./tex4ht-c.tex"
-
-79
-
-) ){
- { math_class -= '0'; }
- } else {
- if( flag== 1 ) {
- switch( math_class ){
- case '-': { math_class =
-#line 12719 "./tex4ht-c.tex"
-
-79
-
-;
- pause_class++; break; }
- case '+': { math_class =
-#line 12719 "./tex4ht-c.tex"
-
-79
-
-;
- pause_class--; break; }
- default: { math_class = 0; }
- } } else if( flag== 2 ) {
- switch( math_class ){
- case
-#line 12726 "./tex4ht-c.tex"
-
-')'
-
-: {
- math_class =
-#line 12734 "./tex4ht-c.tex"
-
-(
-#line 12719 "./tex4ht-c.tex"
-
-79
-
- + 1)
-
-; break; }
- case
-#line 12730 "./tex4ht-c.tex"
-
-'('
-
-:
- { math_class =
-#line 12738 "./tex4ht-c.tex"
-
-(
-#line 12719 "./tex4ht-c.tex"
-
-79
-
- + 2)
-
-; break; }
- default: { math_class = 0; }
- }
- } else { math_class = 0; }
- }
- return math_class;
-}
-
-
-#line 12633 "./tex4ht-c.tex"
-
-
-static INTEGER set_ch_class
-#ifdef ANSI
-#define SEP ,
-( int ch
-)
-#undef SEP
-#else
-#define SEP ;
-(ch) int ch
-;
-#undef SEP
-#endif
-{ int r_ch;
- r_ch = ch - font_tbl[cur_fnt].char_f;
- if( math_class ==
-#line 7369 "./tex4ht-c.tex"
-
-5
-
- ){
- store_bit_I( font_tbl[cur_fnt].math_closing, r_ch );
- *(font_tbl[cur_fnt].math + r_ch) =
- (char) ((open_del == 256)? ch : open_del);
- } else {
- store_bit_Z( font_tbl[cur_fnt].math_closing, r_ch );
- *(font_tbl[cur_fnt].math + r_ch) = math_class;
- }
- open_del = ( math_class ==
-#line 7373 "./tex4ht-c.tex"
-
-4
-
- )? ch : 256;
-
-#line 9800 "./tex4ht-c.tex"
-
-return (INTEGER)(
-
-#line 9837 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].wtbl
- + (int) (
-#line 9845 "./tex4ht-c.tex"
-
-*(font_tbl[cur_fnt].char_wi + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
-
-) )
- )
-* (double) font_tbl[cur_fnt].scale
-
-
- );
-
-
-}
-
-
-#line 12688 "./tex4ht-c.tex"
-
-
-static int math_class_of
-#ifdef ANSI
-#define SEP ,
-( int ch SEP int cur_fnt
-)
-#undef SEP
-#else
-#define SEP ;
-(ch,cur_fnt) int ch SEP int cur_fnt
-;
-#undef SEP
-#endif
-{ int math_class;
- math_class = ch - font_tbl[cur_fnt].char_f;
- return ((get_bit( font_tbl[cur_fnt].math_closing, math_class))?
-
-#line 7369 "./tex4ht-c.tex"
-
-5
-
- : *( math_class + font_tbl[cur_fnt].math));
-
-}
-
-
-#line 13225 "./tex4ht-c.tex"
-
-#if defined(__MSDOS__)
-
-#line 13234 "./tex4ht-c.tex"
-
-
-static char *get_env_dir
-#ifdef ANSI
-#define SEP ,
-(
- U_CHAR *progname
-
-)
-#undef SEP
-#else
-#define SEP ;
-(progname)
- U_CHAR *progname
-
-;
-#undef SEP
-#endif
-{ int i;
- U_CHAR *p;
- if(! progname || ! *progname) return NULL;
- i = (int) strlen((char *) progname);
- while( (progname[--i] != (int) dir_path_slash(progname) )
- && (i > 0) ) ;
- if(i == 0) return NULL;
- p = (char *) malloc(i+12);
- if(p == NULL) return NULL;
- strncpy(p, progname, i+1);
- (IGNORED) strcpy((char *) &p[i+1], "tex4ht.env");
- return p;
-}
-
-
-#endif
-
-
-#line 13294 "./tex4ht-c.tex"
-
-
-static char* get_script
-#ifdef ANSI
-#define SEP ,
-(
- char * name SEP
- const U_CHAR * inln SEP
- int x
-
-)
-#undef SEP
-#else
-#define SEP ;
-(name, inln,x)
- char * name SEP
- const U_CHAR * inln SEP
- int x
-
-;
-#undef SEP
-#endif
-{
- if( !name )
- { U_CHAR str[256], *ch;
- (IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- if( search_dot_file( x ) ){
-
-#line 13318 "./tex4ht-c.tex"
-
-ch = str; str[254] = '\0';
-do{ int int_ch;
- while((*(ch++) = (char)
- (int_ch = (int) getc(dot_file))
- ) != '\n'){
- if( int_ch == EOF ){ *(ch-1)='\n'; break; }
- if( str[254] ){ warn_i_int(33, x); break; }
- }
-}while( (int) getc(dot_file) == x );
-*ch = '\0';
-
-
- } else {(IGNORED) strcpy((char *) str, inln); }
- ch = m_alloc(char, (int) strlen((char *) str)+2);
- (IGNORED) strcpy((char *) ch, (char *) str);
- return ch;
- }else return name;
-}
-
-
-#line 13344 "./tex4ht-c.tex"
-
-
-static BOOL search_dot_file
-#ifdef ANSI
-#define SEP ,
-(
- int ch
-)
-#undef SEP
-#else
-#define SEP ;
-( ch )
- int ch
-;
-#undef SEP
-#endif
-{ int chr;
-
- while( TRUE ){
- chr = getc(dot_file);
- if( chr == ch ){ return TRUE; }
- if( chr == '<' ) {
-
-#line 13367 "./tex4ht-c.tex"
-
- U_CHAR match[256];
- int i;
-for( i = 0; (chr != '\n') && (chr != EOF ) ; i++){
- chr = (int) getc(dot_file);
- match[i] = (U_CHAR) chr;
-}
-match[i-1] = '\0';
-if( match[0] != '/' ){
- BOOL env_skip;
- for( i = 0;
- (match[i] != '>') && (match[i] != '\n') && (match[i] != EOF );
- i++){}
- if( match[i] == '>' ){ match[i] = '\0'; }
-
-#line 13435 "./tex4ht-c.tex"
-
-if( envChoice == (struct env_c_rec*) 0 ){
- env_skip = !eq_str(match, "default" );
-} else {
- struct env_c_rec *p;
- env_skip = TRUE;
- for( p=envChoice; p!=(struct env_c_rec*) 0 ; p = p->next ){
- if( eq_str(match, p->option ) ){ env_skip = FALSE; }
-} }
-
-
- if( env_skip ){
-
-#line 13387 "./tex4ht-c.tex"
-
- U_CHAR cur_block[90];
- BOOL status;
-(IGNORED) strcpy((char *) cur_block, (char *) match);
-status = FALSE;
-while( !status && (chr != EOF) ){
- chr = 'x';
- for( i = 0; (chr != '\n') && (chr != EOF ) ; i++){
- chr = (int) getc(dot_file);
- match[i] = (U_CHAR) chr;
- }
- match[i-1] = '\0';
- for(i=0; match[i]!='\0'; i++){
- if( match[i] == '>' ){ break; }
- }
- if( (match[0] == '<') && (match[1] == '/')
- && (match[i] == '>') ){
- match[i]='\0';
- status = eq_str(match+2, cur_block);
- } else { status = FALSE; }
-}
-
-
-} }
-
-
- continue;
- }
- if( chr == '\n' ){ continue; }
- do
- if( chr == EOF ) return FALSE;
- while( (chr = getc(dot_file)) != '\n' );
-} }
-
-
-#line 13584 "./tex4ht-c.tex"
-
-
-static struct env_var_rec * get_env_var
-#ifdef ANSI
-#define SEP ,
-(
- const char *env_var
-)
-#undef SEP
-#else
-#define SEP ;
-( env_var )
- const char *env_var
-;
-#undef SEP
-#endif
-{ U_CHAR *TEX4HTTFM, *from;
- struct env_var_rec *tfm_dirs, *p;
- int env_var_len;
- tfm_dirs = (struct env_var_rec *) 0;
- TEX4HTTFM = getenv( env_var );
- if( TEX4HTTFM ){
- env_var_len = (int) strlen((char *) TEX4HTTFM);
- if ( *TEX4HTTFM == *(TEX4HTTFM + env_var_len - 1 ) ){
- from = TEX4HTTFM + env_var_len - 1;
- *from = '\0';
- do{
- from--;
- if( *from == *TEX4HTTFM ){ char * base;
- *from = '\0';
- base = from + 1;
-
-#line 13626 "./tex4ht-c.tex"
-
-{ U_CHAR *str;
- if( *(from+1) == '~' ){
- if( HOME_DIR ){
- str = m_alloc(char, strlen((char *) HOME_DIR)+strlen((char *) base));
- (IGNORED) sprintf(str,"%s%s", HOME_DIR, base+1);
- if( access(str,F_OK) ) {
- warn_i_str2(49, env_var, str); base = NULL; }
- free((void *) str);
- } else {
- if( access(base,F_OK) ) {
- warn_i_str2(49, env_var, base); base = NULL; }
- }
- } else {
- if( access(base,F_OK) ) {
- warn_i_str2(49, env_var, base); base = NULL; }
-} }
-
-
- if( base ){
-
-#line 13618 "./tex4ht-c.tex"
-
-p = m_alloc(struct env_var_rec, 1);
-p->next = tfm_dirs;
-p->base = base;
-tfm_dirs = p;
-
-
- } }
- } while (from > TEX4HTTFM );
- } else { warn_i_str2( 49, env_var, TEX4HTTFM); }
- }
- return tfm_dirs;
-}
-
-
-#line 13887 "./tex4ht-c.tex"
-
-
-static void com_dir
-#ifdef ANSI
-#define SEP ,
-(
- char* p
-)
-#undef SEP
-#else
-#define SEP ;
-(p)
- char* p
-;
-#undef SEP
-#endif
-{ int i; U_CHAR str[256];
- (IGNORED) strcpy((char *) str, (char *) p+2 );
- i = (int) strlen((char *) str) - 1;
- if( str[i] == '!' ) str[i] = '\0';
-}
-
-
-#line 14580 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-
-static void export_htf
-#ifdef ANSI
-#define SEP ,
-(
- char** export_str SEP
- char str[]
-)
-#undef SEP
-#else
-#define SEP ;
-(export_str, str)
- char** export_str SEP
- char str[]
-;
-#undef SEP
-#endif
-{ int i;
- char* p;
- BOOL found;
- i = (int) strlen((char *) str) - 1;
- while( (i>=0) && (str[i] == '\n') ){ str[i--] = '\0'; }
- while( (i>=0) && (str[i] == ' ') ) { str[i--] = '\0'; }
- if( (i>=0) && (str[i] == '!') ){ str[i--] = '\0'; }
- if( (i>=0) && ((str[i] == '/') || (str[i] == '\\')) ){
- str[i--] = '\0'; }
- i -= 8; found = FALSE;
- while( --i>=0 ){
- if( ((str[i] == '/') || (str[i] == '\\')) && (str[i+1]== 'h')
- && (str[i+2]=='t') && (str[i+3]=='-')
- && (str[i+4]=='f') && (str[i+5]=='o')
- && (str[i+6]=='n') && (str[i+7]=='t')
- && (str[i+8]=='s')
- && ((str[i+9] == '/') || (str[i+9] == '\\'))
- ){
- p = str + i + 10; i=0;
- while( *p ){ str[i++] = *(p++); }
- str[i] = '\0';
- found = TRUE; break;
- } }
- if( found ){
- *export_str = (char *) r_alloc((void *) *export_str,
- (int) strlen((char *) *export_str) + (int) strlen((char *) str) + 2 );
- if( (int) strlen((char *) *export_str) > 0 ){
- (IGNORED) strcat((char *) *export_str, ",");
- }
- (IGNORED) strcat((char *) *export_str, (char *) str);
- }
-}
-#endif
-
-
-#line 15309 "./tex4ht-c.tex"
-
-
-static FILE* search_in_dot_file
-#ifdef ANSI
-#define SEP ,
-(
- int typ SEP
- const U_CHAR *name SEP
- const U_CHAR *flags SEP
- struct env_var_rec *env_dirs
-
-)
-#undef SEP
-#else
-#define SEP ;
-( typ, name, flags, env_dirs)
- int typ SEP
- const U_CHAR *name SEP
- const U_CHAR *flags SEP
- struct env_var_rec *env_dirs
-
-;
-#undef SEP
-#endif
-{ U_CHAR *ch, dir[256];
- FILE* file;
-#ifndef KPATHSEA
- if( cache_files != (FILE *) 0 ){
-
-#line 14019 "./tex4ht-c.tex"
-
- U_CHAR cache_dir[256], dot_dir[256], *p, *q;
- BOOL flag;
- int n, ch;
-(IGNORED) fseek(cache_files, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-ch = (int) getc(cache_files);
-while ( ch != EOF ){
- if ( ch == ' ' ) {
-#line 14036 "./tex4ht-c.tex"
-
-q = cache_dir;
-do
- *(q++) = ch = (int) getc(cache_files);
-while( (ch !='\n') && (ch != EOF) );
-*(q-1 - (*(q-2) ==
-#line 15558 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
- '\\'
-#else
- '/'
-#endif
-
-)
-#ifdef DOS_WIN32
- - (*(q-2) == '/')
-#endif
- ) = '\0';
-
- }
- else {
-#line 14048 "./tex4ht-c.tex"
-
-p = name; flag = FALSE;
-while( *(p++) == ch ){
- ch = (int) getc(cache_files);
-}
-if( (*(p-1) == '\0') && ((ch == '\n') || (ch == EOF)) ){ flag = TRUE; }
-else{
- while( (ch != '\n') && (ch != EOF) ) { ch = (int) getc(cache_files); }
-}
-
-
- if( flag ){
-
-#line 14059 "./tex4ht-c.tex"
-
-flag = FALSE;
-(IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-while( search_dot_file( typ ) && !flag ){ U_CHAR *q, save_ch;
- int n, m;
- q = dot_dir;
- do
- *(q++) = ch = (int) getc(dot_file);
- while( (ch !='\n') && (ch != EOF) );
- flag = *(q - 2) = '!';
- q -= (flag? 2 : 1);
- *(q - (*(q-1) ==
-#line 15558 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
- '\\'
-#else
- '/'
-#endif
-
-)
-#ifdef DOS_WIN32
- - (*(q-1) == '/')
-#endif
- ) = '\0';
- if( (n = strlen((char *) dot_dir)) > (m = strlen((char *) cache_dir)) ){ flag = FALSE; }
- else {
- save_ch = *(cache_dir + n);
- *(cache_dir + n) = '\0';
- flag = eq_str(dot_dir,cache_dir) && ( flag || (m == n) );
- *(cache_dir + n) = save_ch;
- }
-}
-
-
- if( flag ){
-#line 14085 "./tex4ht-c.tex"
-
-n = (int) strlen((char *) cache_dir);
-cache_dir[n] = dir_path_slash(cache_dir);
-cache_dir[n+1] = '\0';
-(IGNORED) strcat((char *) cache_dir, (char *) name);
-
- }
- } }
- if ( ch != EOF ){ ch = (int) getc(cache_files); }
-}
-
-
- }
-#endif
- (IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- while( search_dot_file( typ ) ){
- ch = dir;
- while((*(ch++) = (int) getc(dot_file)) > ' ');
- while(*(ch-1) != '\n'){
- *(ch-1) = (int) getc(dot_file);
- }
- *(ch-1) = '\0';
- file = search_file_base(name, dir, flags, env_dirs);
- if( file != NULL ){
-#ifndef KPATHSEA
- tex4ht_fls = TRUE;
-#endif
- return file;
- } }
- return NULL;
-}
-
-
-#line 15354 "./tex4ht-c.tex"
-
-
-static FILE* search_file_base
-#ifdef ANSI
-#define SEP ,
-(
- const U_CHAR *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags SEP
- struct env_var_rec *env_dirs
-
-)
-#undef SEP
-#else
-#define SEP ;
-( name, dir, flags, env_dirs)
- const U_CHAR *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags SEP
- struct env_var_rec *env_dirs
-
-;
-#undef SEP
-#endif
-{ U_CHAR *p;
- FILE* file;
- if( *dir == '~' ){
- while( TRUE ){
- p = abs_addr(dir, env_dirs? env_dirs->base : NULL);
- file = search_file(name, p, flags);
- free((void *) p);
- if( file || !env_dirs ){ return file; }
- env_dirs = env_dirs->next;
- }
- } else {
- file = search_file(name, dir, flags);
- }
- return file;
-}
-
-
-#line 15385 "./tex4ht-c.tex"
-
-
-static char * abs_addr
-#ifdef ANSI
-#define SEP ,
-(
- const U_CHAR *dir SEP
- const U_CHAR *base
-
-)
-#undef SEP
-#else
-#define SEP ;
-( dir, base)
- const U_CHAR *dir SEP
- const U_CHAR *base
-
-;
-#undef SEP
-#endif
-{ U_CHAR *p;
- p = m_alloc(char, (int) strlen( dir ) +
- (base? (int) strlen( base ):0) +
- (int) strlen((char *) HOME_DIR ) + 1 );
- *p = '\0';
- if( (*(dir+1) == '~') && base ){
- if( *base == '~' ){
- (IGNORED) strct(p, HOME_DIR);
- (IGNORED) strct(p, base+1);
- } else {
- (IGNORED) strct(p, base);
- }
- (IGNORED) strct(p, dir+2);
- } else {
- (IGNORED) strct(p, HOME_DIR);
- (IGNORED) strct(p, dir+1);
- }
- return p;
-}
-
-
-#line 15426 "./tex4ht-c.tex"
-
-
-static FILE* search_file
-#ifdef ANSI
-#define SEP ,
-(
- const char *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags
-
-)
-#undef SEP
-#else
-#define SEP ;
-( name, dir, flags )
- const char *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags
-
-;
-#undef SEP
-#endif
-{ FILE* file;
- U_CHAR str[256];
- int i;
- BOOL subs;
-
-#line 15467 "./tex4ht-c.tex"
-
-if( (file = f_open(name, flags)) != NULL ){
- return file; }
-
-
- (IGNORED) strcpy((char *) str, dir);
- i = (int) strlen((char *) str) - 1;
- subs = str[i] == '!';
- if( subs ) str[i] = '\0'; else i++;
-
-#line 15451 "./tex4ht-c.tex"
-
-(IGNORED) strct(str,
-#if defined(__DJGPP__)
- (( dir[i-1] == '/') || ( dir[i-1] == '\\'))
- ? ""
- : (is_forward_slash(dir)? "/" : "\\" )
-#else
- (dir[i-1] == '/')? "" : "/"
-#endif
- );
-
-
-
-
-#line 15472 "./tex4ht-c.tex"
-
-(IGNORED) strct(str,name);
-if( (file = f_open(str, flags)) != NULL ){
- str[i] = '\0'; add_to_cache(str,name,i);
- return file; }
-
-
- str[i] = '\0';
- return subs? search_file_ext( name, str, flags):
- NULL;
-}
-
-
-#line 15486 "./tex4ht-c.tex"
-
-
-static void add_to_cache
-#ifdef ANSI
-#define SEP ,
-(
- const char* dir SEP const char* name SEP int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-(dir,name,n)
- const char* dir SEP const char* name SEP int n
-
-;
-#undef SEP
-#endif
-{
- struct cache_font_rec *cur_cache_font;
-
-
-#line 13681 "./tex4ht-c.tex"
-
-{ int found;
- found = FALSE;
- for( cur_cache_font = cache_font;
- cur_cache_font;
- cur_cache_font = cur_cache_font->next )
- { found = found || eq_str(cur_cache_font->dir, dir ) ;
- if( found ) break; }
- if( !found ){
- cur_cache_font = m_alloc(struct cache_font_rec, 1);
-
-#line 13944 "./tex4ht-c.tex"
-
-cur_cache_font->cache_file = (struct cache_file_rec *) 0;
-
-
- cur_cache_font->dir = m_alloc(char, n+1);
- (IGNORED) strcpy((char *) cur_cache_font->dir, dir);
- if( !cache_font ){
- cur_cache_font->next = cache_font;
- cache_font = cur_cache_font;
- } else if ( gt_str(cache_font->dir, dir) ) {
- cur_cache_font->next = cache_font;
- cache_font = cur_cache_font;
- } else {
- struct cache_font_rec * after_cache_font;
- after_cache_font = cache_font;
- while( after_cache_font->next ){
- if ( gt_str(after_cache_font->next->dir, dir) ) { break; }
- after_cache_font = after_cache_font->next;
- }
- cur_cache_font->next = after_cache_font->next;
- after_cache_font->next = cur_cache_font;
-} } }
-
-
-
-#line 13948 "./tex4ht-c.tex"
-
-{
- struct cache_file_rec *file_rec, *prev_file_rec;
- prev_file_rec = (struct cache_file_rec *) 0;
- file_rec = cur_cache_font->cache_file;
- while( file_rec ) {
- if( !gt_str(name,file_rec->file) ) break;
- prev_file_rec = file_rec;
- file_rec = file_rec->next;
- }
- {
- struct cache_file_rec * file_entry;
- BOOL flag;
- flag = TRUE;
- if( file_rec ) {
- if( eq_str(name,file_rec->file) ){ flag = FALSE; }
- }
- if( flag ) {
-
-#line 13973 "./tex4ht-c.tex"
-
-file_entry = m_alloc(struct cache_file_rec, 1);
-file_entry->file = m_alloc(char, strlen(name)+1);
-(IGNORED) strcpy((char *) file_entry->file, name);
-if( ! cur_cache_font->cache_file ){
- cur_cache_font->cache_file = file_entry;
- file_entry->next = (struct cache_file_rec *) 0;
-} else if( !prev_file_rec ){
- file_entry->next = cur_cache_font->cache_file;
- cur_cache_font->cache_file = file_entry;
-} else {
- file_entry->next = prev_file_rec->next;
- prev_file_rec->next = file_entry;
-}
-
-
- }
- }
-}
-
-
-}
-
-
-#line 15507 "./tex4ht-c.tex"
-
-
-static FILE* search_file_ext
-#ifdef ANSI
-#define SEP ,
-(
- const char *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags
-
-)
-#undef SEP
-#else
-#define SEP ;
-( name, dir, flags )
- const char *name SEP
- const U_CHAR *dir SEP
- const U_CHAR *flags
-
-;
-#undef SEP
-#endif
-{ U_CHAR str[256];
- FILE* file;
- int n;
- n = (int) strlen(dir);
- (IGNORED) sprintf(str,
-#if defined(__DJGPP__)
- (( dir[n-1] == '/') || ( dir[n-1] == '\\'))
- ? "%s%s"
- : (is_forward_slash(dir)? "%s/%s" : "%s\\%s" )
-#else
- (dir[n-1] == '/')? "%s%s" : "%s/%s"
-#endif
- , dir, name);
- if( (file = f_open(str,flags)) != NULL ){
- add_to_cache(dir,name,n);
- return file;
- }
- if( (str[n] ==
-#line 15558 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
- '\\'
-#else
- '/'
-#endif
-
-)
-#ifdef DOS_WIN32
- || (str[n] == '/' )
-#endif
- ) n++;
- str[n-1] = '\0';
-#ifndef NOSUBDIR
-#ifdef WIN32
-
-#line 537 "./tex4ht-c.tex"
-
-{
- WIN32_FIND_DATA find_file_data;
- HANDLE hnd;
- int proceed;
- (IGNORED) strcpy((char *) dirname, (char *) str);
- strct(dirname, "/*.*");
- hnd = FindFirstFile(dirname, &find_file_data);
- if (hnd != INVALID_HANDLE_VALUE) {
-
-#line 551 "./tex4ht-c.tex"
-
-proceed = 1;
-while (proceed) {
- if( !eq_str(find_file_data.cFileName, ".") &&
- !eq_str(find_file_data.cFileName, "..") )
- {
- (IGNORED) strcpy((char *) str+n, (char *) find_file_data.cFileName );
- str[n-1] = dir_path_slash(str);
- if (find_file_data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
- if( (file = search_file_ext(name, str, flags)) != NULL ){
- FindClose(hnd);
- return file; }
- }
- }
- proceed = FindNextFile(hnd, &find_file_data);
-}
-FindClose(hnd);
-
-
- }
-}
-
-
-#else
-
-#line 15598 "./tex4ht-c.tex"
-
-{ DIR *dp;
-
-#line 15727 "./tex4ht-c.tex"
-
-
-#ifdef STRUCT_DIRECT
- struct direct
-#else
- struct dirent
-#endif
-
- *dirp;
- struct STSTAT buf;
- if( (dp = opendir( str )) != NULL ){
- while( (dirp = readdir(dp)) != NULL ){
- if( !eq_str(dirp->d_name, ".") &&
- !eq_str(dirp->d_name, "..") )
- {
-#line 15613 "./tex4ht-c.tex"
-
-(IGNORED) strcpy((char *) str+n, (char *) dirp->d_name );
-str[n-1] = dir_path_slash(str);
-if( LSTAT(str, &buf) >= 0 )
- if( S_ISDIR( buf.st_mode ) )
- if( (file = search_file_ext(name, str, flags)) != NULL ){
- (void) closedir(dp);
- return file; }
-
-
- } }
- (void) closedir(dp);
-} }
-
-
-#endif
-#endif
- return NULL;
-}
-
-
-#line 15584 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
-
-static BOOL is_forward_slash
-#ifdef ANSI
-#define SEP ,
-(
- const char* str
-)
-#undef SEP
-#else
-#define SEP ;
-(str)
- const char* str
-;
-#undef SEP
-#endif
-{
- while( *str ){ if( *(str++) == '/' ) { return TRUE; } }
- return FALSE;
-}
-#endif
-
-
-#line 15806 "./tex4ht-c.tex"
-
-
-static FILE* f_open_pathed_filename
-#ifdef ANSI
-#define SEP ,
-(
- const char* name SEP
- const char* flags
-)
-#undef SEP
-#else
-#define SEP ;
-( name, flags )
- const char* name SEP
- const char* flags
-;
-#undef SEP
-#endif
-{ FILE* file;
- U_CHAR *str;
- file = NULL;
- if( *name == '~' ){
- if( HOME_DIR ){
- str = m_alloc(char, strlen((char *) HOME_DIR)+strlen(name));
- (IGNORED) sprintf(str,"%s%s", HOME_DIR, name+1);
- file = f_open(str,flags);
- free((void *) str);
- }
- } else { file = f_open( name, flags ); }
- return file;
-}
-
-
-#line 15840 "./tex4ht-c.tex"
-
-
-static INTEGER put_4ht_ch
-#ifdef ANSI
-#define SEP ,
-( int ch SEP FILE* htFile
-)
-#undef SEP
-#else
-#define SEP ;
-(ch,htFile) int ch SEP FILE* htFile
-;
-#undef SEP
-#endif
-{
- int c;
- c = ch;
- if( ch=='&' ){
-
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
-
- if( put_4ht_off ){
- c = putc( ch, htFile );
- } else {
- uni_code[0] = '&';
- uni_code_p = 1;
- put_4ht_file = htFile;
- }
- } else
- if( uni_code_p ){
- if( ch == ';' ){
-#line 16129 "./tex4ht-c.tex"
-
-if( uni_code[1] != '#' ){
-
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
-
- (IGNORED) putc( ch, htFile );
-}
-else{
- int i, base, value, digit;
- if( (uni_code[2] == 'x') || (uni_code[2] == 'X') ){
- base =16; i=3;
- } else { base=10; i=2; }
- value = 0;
- for( ; i<uni_code_p; i++ ){
- digit = uni_code[i];
- if( (digit>='0') && (digit<='9') ){ digit -= '0'; }
- else if( (digit>='A') && (digit<='F') ){ digit -= BASE_A; }
- else if( (digit>='a') && (digit<='f') ){ digit -= BASE_a; }
- else { value = -1; break; }
- if( digit >= base ){ value=-1; break; }
- value = value*base + digit;
- }
- if( value<0 ){
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
-
- (IGNORED) putc( ch, htFile );
- } else {
-
-#line 16156 "./tex4ht-c.tex"
-
- int bottom, mid, top;
- BOOL found=FALSE;
-bottom = 0; top = charset_n;
-while( !found ){
- mid = (bottom + top) / 2;
- if( value == charset[mid].ch ){
-
-#line 16182 "./tex4ht-c.tex"
-
-{ U_CHAR *p;
- p = charset[mid].str;
- while( *p != '\0' ){
- if( *p=='\\' ){
- p++;
- if( *p=='\\' ){
- (IGNORED) putc( '\\', htFile );
- } else {
- int i;
- i = *p - '0';
- while( *(++p) != '\\' ){ i = 10*i + *p - '0'; }
- (IGNORED) putc( i, htFile );
- } }
- else {
- (IGNORED) putc( *p, htFile );
- if ( (*p=='&') && u10 ){
-#line 16256 "./tex4ht-c.tex"
-
-if ( *(p+1) == '#' ){
- p++;
- (IGNORED) putc( '#', htFile );
- if ( (*(p+1) == 'x') || (*(p+1) == 'X') ){
- int value, digit;
- U_CHAR *q;
- q = p+2;
- value = 0;
- digit = *(q++);
- while( digit!=0 ){
- if( (digit>='0') && (digit<='9') ){
- value = value*16 + digit - '0';
- }
- else if( (digit>='A') && (digit<='F') ){
- value = value*16 + digit - 'A'+10;
- }
- else if( (digit>='a') && (digit<='f') ){
- value = value*16 + digit - 'a'+10; }
- else {
- if( digit == ';' ){
-
-#line 16287 "./tex4ht-c.tex"
-
- char uni_10[MAX_UNI_CODE];
- int n;
-n = 0;
-while( value>0 ){
- uni_10[ n++ ] = value % 10 + '0';
- value /= 10;
-}
-while( n>0 ){
- (IGNORED) putc( uni_10[--n], htFile );
-}
-
-
- p=q-2;
- }
- break;
- }
- digit = *(q++);
- }
-} }
-
- }
- }
- p++;
-} }
-
-
- found = TRUE;
- } else if( value < charset[mid].ch ){
- if( bottom == top ){ break; }
- top = mid;
- }
- else {
- if ( bottom < mid ){ bottom = mid; }
- else if ( bottom<top ){ bottom++; }
- else{ break; }
- }
-}
-if( ! found ){
- if( u10 || utf8 ){
-#line 16225 "./tex4ht-c.tex"
-
- short n;
- long dec;
- int ch;
- char uni_10[MAX_UNI_CODE];
-if( (uni_code[2] == 'x') || (uni_code[2] == 'X') ) {
- dec = 0;
- for( n=3; n<uni_code_p; n++ ){
- ch = uni_code[n];
- dec = 16*dec +
- ((ch > '9')?
- ( 10 + ((ch > 'Z')? (ch-'a') : (ch-'A')) )
- : (ch-'0'));
- }
- if( u10 ){
-#line 16245 "./tex4ht-c.tex"
-
- if( dec == 0 ){
- uni_code_p = 3; uni_code[2] = '0';
- } else {
- n = 0;
- while( dec > 0 ){ uni_10[ n++ ] = dec % 10 + '0'; dec /= 10; }
- uni_code_p = 2;
- while( n>0 ){ uni_code[ uni_code_p++ ] = uni_10[ --n ]; }
- }
-
- }
- else {
-#line 16366 "./tex4ht-c.tex"
-
-
-#line 16316 "./tex4ht-c.tex"
-
-if( dec < 0x80 ){
- uni_code_p = 1; uni_code[0] = dec;
-}
-else if( dec < 0x800 ){
- uni_code_p = 2;
- uni_code[0] = (dec >> 6) | 0xC0;
- uni_code[1] = (dec & 0x3F) | 0x80;
-}
-else if( dec < 0x10000 ){
- uni_code_p = 3;
- uni_code[0] = (dec >> 12) | 0xE0;
- uni_code[1] = ((dec >> 6) & 0x3F) | 0x80;
- uni_code[2] = (dec & 0x3F) | 0x80;
-}
-else if( dec < 0x200000 ){
- uni_code_p = 4;
- uni_code[0] = (dec >> 18) | 0xF0;
- uni_code[1] = ((dec >> 12) & 0x3F) | 0x80;
- uni_code[2] = ((dec >> 6) & 0x3F) | 0x80;
- uni_code[3] = (dec & 0x3F) | 0x80;
-}
-else if( dec < 0x4000000 ){
- uni_code_p = 5;
- uni_code[0] = (dec >> 24) | 0xF8;
- uni_code[1] = ((dec >> 18) & 0x3F) | 0x80;
- uni_code[2] = ((dec >> 12) & 0x3F) | 0x80;
- uni_code[3] = ((dec >> 6) & 0x3F) | 0x80;
- uni_code[4] = (dec & 0x3F) | 0x80;
-}
-else if( dec <= 0x7FFFFFFF ){
- uni_code_p = 6;
- uni_code[0] = (dec >> 30) | 0xFC;
- uni_code[1] = ((dec >> 24) & 0x3F) | 0x80;
- uni_code[2] = ((dec >> 18) & 0x3F) | 0x80;
- uni_code[3] = ((dec >> 12) & 0x3F) | 0x80;
- uni_code[4] = ((dec >> 6) & 0x3F) | 0x80;
- uni_code[5] = (dec & 0x3F) | 0x80;
-}
-
-
-else {
- n = 0;
- while( dec > 0 ){ uni_10[ n++ ] = dec % 10 + '0'; dec /= 10; }
- uni_code_p = 2;
- while( n>0 ){ uni_code[ uni_code_p++ ] = uni_10[ --n ]; }
-}
-
- }
-}
-
- }
-
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
-
- if( !utf8 ){ (IGNORED) putc( ch, htFile ); }
-}
-
-
-} }
-
- uni_code_p = 0; }
- else if ( ((uni_code_p+1) == MAX_UNI_CODE)
- ||
- ( ((ch<'0') || (ch>'9'))
- && ((ch<'a') || (ch>'f'))
- && ((ch<'A') || (ch>'F'))
- && (ch!='#')
- && (ch!='x')
- && (ch!='X')
- )
- )
- {
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
-
- c = putc( ch, htFile );
- } else { uni_code[ uni_code_p++ ] = ch; }
- } else { c = putc( ch, htFile ); }
- return c;
-}
-
-
-#line 15914 "./tex4ht-c.tex"
-
-static void flush_uni( MYVOID )
-{
- int i;
- for( i=0; i<uni_code_p; i++ ){
- (IGNORED) putc( uni_code[i], put_4ht_file );
- }
- uni_code_p = 0;
- put_4ht_file = (FILE *) 0;
-}
-
-
-#line 16577 "./tex4ht-c.tex"
-
-
-static INTEGER insert_ch
-#ifdef ANSI
-#define SEP ,
-( int ch
-)
-#undef SEP
-#else
-#define SEP ;
-(ch) int ch
-;
-#undef SEP
-#endif
-{
- if( !ignore_chs ){
- BOOL flag;
-
-#line 16599 "./tex4ht-c.tex"
-
-flag = FALSE;
-if(
-#line 4338 "./tex4ht-c.tex"
-
-next_str
-
- ) {
- if( eq_str(next_str, "") ) {
- flag = TRUE;
- free((void *) next_str);
- next_str = (char *) 0;
-} }
-
-
- if( !flag ){
- try_new_line();
-
-#line 10649 "./tex4ht-c.tex"
-
-
-#line 12298 "./tex4ht-c.tex"
-
-if( x_val > needs_end_accent ){
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
-}
-
-
-
-#line 2543 "./tex4ht-c.tex"
-
-if( span_on && (default_font != font_tbl[cur_fnt].num) ){
- if( !ch_map_flag && start_span ){
- if( span_name_on ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( span_open[0] ) if( *span_open[0] )
- (IGNORED) fprintf(cur_o_file, "%s", span_open[0]);
- if( span_name[0] ) if( *span_name[0] )
- (IGNORED) fprintf(cur_o_file,
- span_name[0], font_tbl[cur_fnt].family_name);
- if( span_size[0] ) if( *span_size[0] )
- (IGNORED) fprintf(cur_o_file,
- span_size[0], font_tbl[cur_fnt].font_size);
- if( span_mag[0] )
- if( *span_mag[0] && (font_tbl[cur_fnt].mag != 100))
- (IGNORED) fprintf(cur_o_file,
- span_mag[0], font_tbl[cur_fnt].mag);
- if( span_ch[0] ) if( *span_ch[0] )
- (IGNORED) fprintf(cur_o_file, "%s", span_ch[0]);
- }
- start_span = FALSE;
- }
-}
-
-
-#line 2897 "./tex4ht-c.tex"
-
-if( trace_dvi_C ){
- if( !ch_map_flag ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( *trace_dvi_del_C != '\0' ){
- (IGNORED) fprintf(cur_o_file,
- block_start? "%s%s %d B" : "%s%s %d",
- trace_dvi_del_C, font_tbl[cur_fnt].name, ch);
- }
- (IGNORED) fprintf(cur_o_file,"%s", end_trace_dvi_del_C);
- }
- block_start = FALSE;
-}
-
-
-
-#line 12913 "./tex4ht-c.tex"
-
-if( show_class && !pause_class && !ignore_subclass_del){
- if( !stack[stack_n].no_left_del && stack[stack_n+1].active_class_del ){
-
-#line 12988 "./tex4ht-c.tex"
-
-(IGNORED) print_f( (stack[stack_n+1].temp_class_del)?
- stack[stack_n+1].temp_class_open
- : stack[stack_n+1].class_open);
-
-
- if( !stack[stack_n+1].ignore_subclass_del ){
-
-#line 12926 "./tex4ht-c.tex"
-
-math_class = math_class_of( ch, cur_fnt );
-(IGNORED) print_f( open_class[math_class]);
-
-
- }
- } else {
-
-#line 12926 "./tex4ht-c.tex"
-
-math_class = math_class_of( ch, cur_fnt );
-(IGNORED) print_f( open_class[math_class]);
-
-
-} }
-
-
-#line 8194 "./tex4ht-c.tex"
-
-if( pos_dvi ){ long int d;
- if( *pos_text ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, pos_text,
- pos_x_A * (x_val - base_pos_x) + pos_x_B,
- pos_y_C * (y_val - base_pos_y) + pos_y_D);
- }
- if( x_val < min_pos_x ) min_pos_x = x_val;
- if( (d = x_val +
-#line 9851 "./tex4ht-c.tex"
-
-(int)(
-#line 9837 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].wtbl
- + (int) (
-#line 9845 "./tex4ht-c.tex"
-
-*(font_tbl[cur_fnt].char_wi + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
-
-) )
- )
-* (double) font_tbl[cur_fnt].scale
-
-)
-
-) > max_pos_x ) max_pos_x = d;
- if( (d = y_val -
-#line 9875 "./tex4ht-c.tex"
-
-(int)(
-#line 9860 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].htbl
- + (int) (
-#line 9867 "./tex4ht-c.tex"
-
-( *(font_tbl[cur_fnt].char_hidp + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
- >> 4
-) & 0x0F
-
-)) )
- * (double) font_tbl[cur_fnt].scale
-
-)
-
-) < min_pos_y ) min_pos_y = d;
- if( (d = y_val +
-#line 9898 "./tex4ht-c.tex"
-
-(int)(
-#line 9884 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].dtbl
- + (int) (
-#line 9891 "./tex4ht-c.tex"
-
-( *(font_tbl[cur_fnt].char_hidp + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
-) & 0x0F
-
-)) )
-* (double) font_tbl[cur_fnt].scale
-
-)
-
-) > max_pos_y ) max_pos_y = d;
-}
-
-
-
-#line 12392 "./tex4ht-c.tex"
-
-if( a_accent_template && needs_accented_sym ){
- (IGNORED) fprintf(cur_o_file, "%s%s%s%d%s%d%s",
- a_accent_first, font_tbl[cur_fnt].family_name,
- a_accent_second, ch, a_accent_third,
- font_tbl[cur_fnt].accented[ch]?
- font_tbl[cur_fnt].accented_array[font_tbl[cur_fnt].accented[ch]-1]
- : 0,
- a_accent_fourth);
-}
-
-
-if(
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
- != -1 ) {
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) put_4ht_ch(
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
-, cur_o_file );
-
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
- = -1;
-} else if(
-#line 4338 "./tex4ht-c.tex"
-
-next_str
-
- ) {
-
-#line 4347 "./tex4ht-c.tex"
-
-if( keepChar ){
- keepChar=FALSE;
- {
-#line 10678 "./tex4ht-c.tex"
-
- int gif_flag, chr, r_ch;
- BOOL ch_str_flag;
-r_ch = ch - font_tbl[cur_fnt].char_f;
-gif_flag = font_tbl[cur_fnt].gif1[r_ch];
-ch_str_flag = get_bit( font_tbl[cur_fnt].ch_str, r_ch);
-chr = ((r_ch == 255) && font_tbl[cur_fnt].ch255 )? 256 :
- *(font_tbl[cur_fnt].ch + r_ch);
-if( (gif_flag % 2) || ch_str_flag ){ design_ch = ch;
- {
-#line 10701 "./tex4ht-c.tex"
-
- U_CHAR str[256], *p;
- BOOL sv;
- int mag;
-sv = special_on; special_on = TRUE;
-if( gif_ch && (gif_flag % 2) ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( !gif_open[gif_flag] ){
-
-#line 10778 "./tex4ht-c.tex"
-
-(IGNORED) sprintf(str,
- "configuration for htf class %d (char %d of %s.htf)",
- gif_flag, ch,font_tbl[cur_fnt].name
- );
-warn_i_str(50,str);
-
-
-#line 10786 "./tex4ht-c.tex"
-
-gif_open[gif_flag] = m_alloc(char,
-
-#line 10811 "./tex4ht-c.tex"
-
-29
-
-);
-(IGNORED) strcpy((char *) gif_open[gif_flag],
-
-#line 10807 "./tex4ht-c.tex"
-
-"<img src=\"+\" alt=\"+++++\" />+"
-
-);
-gif_alt[gif_flag] = gif_open[gif_flag]+11;
- *(gif_alt[gif_flag] - 1) = '\0';
-gif_class[gif_flag] = gif_open[gif_flag]+19;
- *(gif_class[gif_flag] - 1) = '\0';
-gif_size[gif_flag] = gif_open[gif_flag]+20;
- *(gif_size[gif_flag] - 1) = '\0';
-gif_mag[gif_flag] = gif_open[gif_flag]+21;
- *(gif_mag[gif_flag] - 1) = '\0';
-gif_ord[gif_flag] = gif_open[gif_flag]+22;
- *(gif_ord[gif_flag] - 1) = '\0';
-gif_end[gif_flag] = gif_open[gif_flag]+23;
- *(gif_end[gif_flag] - 1) = '\0';
-gif_id[gif_flag] = gif_open[gif_flag]+28;
- *(gif_id[gif_flag] - 1) = '\0';
-
-
- } else if( !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
- }
-
-#line 11467 "./tex4ht-c.tex"
-
-p= gif_open[gif_flag];
-if( p )
-if( *p ){
- print_f(p); (IGNORED) strcpy((char *) str, (char *) font_tbl[cur_fnt].name);
- mag = (int) ((double) font_tbl[cur_fnt].scale /
- font_tbl[cur_fnt].design_sz * 10 );
-
-#line 10893 "./tex4ht-c.tex"
-
-if( !dos_file_names ){
- print_f(font_tbl[cur_fnt].name);
- if( mag == 10 ) (IGNORED) sprintf(str, GIF_I, design_ch, gif);
- else (IGNORED) sprintf(str, GIF_II, mag, design_ch, gif);
-}
-
-
-#line 10914 "./tex4ht-c.tex"
-
-
-if( dos_file_names ){
- dos_gif_file(str, mag, design_ch);
- print_f(str);
- (IGNORED) sprintf(str, GIF_VII, gif);
-}
-
-
-
- print_f(str);
- add_bit( font_tbl[cur_fnt].gif_on, r_ch, 1 );
-}
-
-
-
-#line 11500 "./tex4ht-c.tex"
-
-p = gif_alt[gif_flag];
-if( p )
- if( *p ){
- print_f(p); put_alt_ch(chr,ch_str_flag);
-}
-
-
-
-#line 11514 "./tex4ht-c.tex"
-
-p = gif_class[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p,
- font_tbl[cur_fnt].family_name); }
-
-
-
-#line 11538 "./tex4ht-c.tex"
-
-p = gif_size[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p,
- font_tbl[cur_fnt].font_size); }
-
-
-
-#line 11555 "./tex4ht-c.tex"
-
-p = gif_mag[gif_flag];
-if( p )
- if( *p && (font_tbl[cur_fnt].mag != 100) ){
- (IGNORED) fprintf(cur_o_file, p, font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11570 "./tex4ht-c.tex"
-
-p = gif_ord[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p, ch);
-}
-
-
-
-#line 11587 "./tex4ht-c.tex"
-
-p = gif_end[gif_flag];
-if( p )
- if( *p ){ print_f( p ); }
-
-
-} else {
-#line 10830 "./tex4ht-c.tex"
-
-if( !gif_flag || (gif_flag % 2) || ch_map_flag ) {
- put_alt_ch(chr,ch_str_flag); }
-else{
-#line 11723 "./tex4ht-c.tex"
-
-
-#line 11739 "./tex4ht-c.tex"
-
-if( gif_flag && !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
-}
-
-
-if( span_on ){
-
-#line 11749 "./tex4ht-c.tex"
-
-if( span_open[gif_flag] )
- if( *span_open[gif_flag] ){
- print_f( span_open[gif_flag] );
-}
-
-
-
-#line 11773 "./tex4ht-c.tex"
-
-if( span_name[gif_flag] )
- if( *span_name[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_name[gif_flag],
- font_tbl[cur_fnt].family_name);
-}
-
-
-
-#line 11783 "./tex4ht-c.tex"
-
-if( span_size[gif_flag] )
- if( *span_size[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_size[gif_flag],
- font_tbl[cur_fnt].font_size);
-}
-
-
-
-#line 11792 "./tex4ht-c.tex"
-
-if( span_mag[gif_flag] )
- if( *span_mag[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_mag[gif_flag],
- font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11801 "./tex4ht-c.tex"
-
-if( span_ord[gif_flag] )
- if( *span_ord[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_ord[gif_flag], chr);
-}
-
-
-
-#line 11765 "./tex4ht-c.tex"
-
-if( span_ch[gif_flag] )
- if( *span_ch[gif_flag] ){
- print_f( span_ch[gif_flag] );
-}
-
-
-}
-put_alt_ch(chr,ch_str_flag);
-if( span_on ){
-
-#line 11756 "./tex4ht-c.tex"
-
-if( end_span[gif_flag] )
- if( *end_span[gif_flag] ){
- print_f( end_span[gif_flag] );
-}
-
-
-}
-
- }
-
- }
-special_on = sv;
-
- } design_ch = 0; }
-else {
-#line 10821 "./tex4ht-c.tex"
-
-if( !gif_flag || (gif_flag % 2) || ch_map_flag ) { put_char(chr);
-} else{
-#line 11704 "./tex4ht-c.tex"
-
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
-
-#line 11739 "./tex4ht-c.tex"
-
-if( gif_flag && !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
-}
-
-
-if( span_on ){
-
-#line 11749 "./tex4ht-c.tex"
-
-if( span_open[gif_flag] )
- if( *span_open[gif_flag] ){
- print_f( span_open[gif_flag] );
-}
-
-
-
-#line 11773 "./tex4ht-c.tex"
-
-if( span_name[gif_flag] )
- if( *span_name[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_name[gif_flag],
- font_tbl[cur_fnt].family_name);
-}
-
-
-
-#line 11783 "./tex4ht-c.tex"
-
-if( span_size[gif_flag] )
- if( *span_size[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_size[gif_flag],
- font_tbl[cur_fnt].font_size);
-}
-
-
-
-#line 11792 "./tex4ht-c.tex"
-
-if( span_mag[gif_flag] )
- if( *span_mag[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_mag[gif_flag],
- font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11801 "./tex4ht-c.tex"
-
-if( span_ord[gif_flag] )
- if( *span_ord[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_ord[gif_flag], chr);
-}
-
-
-
-#line 11765 "./tex4ht-c.tex"
-
-if( span_ch[gif_flag] )
- if( *span_ch[gif_flag] ){
- print_f( span_ch[gif_flag] );
-}
-
-
-}
-put_char(chr);
-if( span_on ){
-
-#line 11756 "./tex4ht-c.tex"
-
-if( end_span[gif_flag] )
- if( *end_span[gif_flag] ){
- print_f( end_span[gif_flag] );
-}
-
-
-}
-
- }
-
- }
-
- }
-}
-
-
- print_f_4ht(next_str); free((void *) next_str);
- next_str = (char *) 0;
-} else {
- if( verb_ch ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) put_4ht_ch( ch, cur_o_file );
- } else {
-#line 10678 "./tex4ht-c.tex"
-
- int gif_flag, chr, r_ch;
- BOOL ch_str_flag;
-r_ch = ch - font_tbl[cur_fnt].char_f;
-gif_flag = font_tbl[cur_fnt].gif1[r_ch];
-ch_str_flag = get_bit( font_tbl[cur_fnt].ch_str, r_ch);
-chr = ((r_ch == 255) && font_tbl[cur_fnt].ch255 )? 256 :
- *(font_tbl[cur_fnt].ch + r_ch);
-if( (gif_flag % 2) || ch_str_flag ){ design_ch = ch;
- {
-#line 10701 "./tex4ht-c.tex"
-
- U_CHAR str[256], *p;
- BOOL sv;
- int mag;
-sv = special_on; special_on = TRUE;
-if( gif_ch && (gif_flag % 2) ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( !gif_open[gif_flag] ){
-
-#line 10778 "./tex4ht-c.tex"
-
-(IGNORED) sprintf(str,
- "configuration for htf class %d (char %d of %s.htf)",
- gif_flag, ch,font_tbl[cur_fnt].name
- );
-warn_i_str(50,str);
-
-
-#line 10786 "./tex4ht-c.tex"
-
-gif_open[gif_flag] = m_alloc(char,
-
-#line 10811 "./tex4ht-c.tex"
-
-29
-
-);
-(IGNORED) strcpy((char *) gif_open[gif_flag],
-
-#line 10807 "./tex4ht-c.tex"
-
-"<img src=\"+\" alt=\"+++++\" />+"
-
-);
-gif_alt[gif_flag] = gif_open[gif_flag]+11;
- *(gif_alt[gif_flag] - 1) = '\0';
-gif_class[gif_flag] = gif_open[gif_flag]+19;
- *(gif_class[gif_flag] - 1) = '\0';
-gif_size[gif_flag] = gif_open[gif_flag]+20;
- *(gif_size[gif_flag] - 1) = '\0';
-gif_mag[gif_flag] = gif_open[gif_flag]+21;
- *(gif_mag[gif_flag] - 1) = '\0';
-gif_ord[gif_flag] = gif_open[gif_flag]+22;
- *(gif_ord[gif_flag] - 1) = '\0';
-gif_end[gif_flag] = gif_open[gif_flag]+23;
- *(gif_end[gif_flag] - 1) = '\0';
-gif_id[gif_flag] = gif_open[gif_flag]+28;
- *(gif_id[gif_flag] - 1) = '\0';
-
-
- } else if( !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
- }
-
-#line 11467 "./tex4ht-c.tex"
-
-p= gif_open[gif_flag];
-if( p )
-if( *p ){
- print_f(p); (IGNORED) strcpy((char *) str, (char *) font_tbl[cur_fnt].name);
- mag = (int) ((double) font_tbl[cur_fnt].scale /
- font_tbl[cur_fnt].design_sz * 10 );
-
-#line 10893 "./tex4ht-c.tex"
-
-if( !dos_file_names ){
- print_f(font_tbl[cur_fnt].name);
- if( mag == 10 ) (IGNORED) sprintf(str, GIF_I, design_ch, gif);
- else (IGNORED) sprintf(str, GIF_II, mag, design_ch, gif);
-}
-
-
-#line 10914 "./tex4ht-c.tex"
-
-
-if( dos_file_names ){
- dos_gif_file(str, mag, design_ch);
- print_f(str);
- (IGNORED) sprintf(str, GIF_VII, gif);
-}
-
-
-
- print_f(str);
- add_bit( font_tbl[cur_fnt].gif_on, r_ch, 1 );
-}
-
-
-
-#line 11500 "./tex4ht-c.tex"
-
-p = gif_alt[gif_flag];
-if( p )
- if( *p ){
- print_f(p); put_alt_ch(chr,ch_str_flag);
-}
-
-
-
-#line 11514 "./tex4ht-c.tex"
-
-p = gif_class[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p,
- font_tbl[cur_fnt].family_name); }
-
-
-
-#line 11538 "./tex4ht-c.tex"
-
-p = gif_size[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p,
- font_tbl[cur_fnt].font_size); }
-
-
-
-#line 11555 "./tex4ht-c.tex"
-
-p = gif_mag[gif_flag];
-if( p )
- if( *p && (font_tbl[cur_fnt].mag != 100) ){
- (IGNORED) fprintf(cur_o_file, p, font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11570 "./tex4ht-c.tex"
-
-p = gif_ord[gif_flag];
-if( p )
- if( *p ){
- (IGNORED) fprintf(cur_o_file, p, ch);
-}
-
-
-
-#line 11587 "./tex4ht-c.tex"
-
-p = gif_end[gif_flag];
-if( p )
- if( *p ){ print_f( p ); }
-
-
-} else {
-#line 10830 "./tex4ht-c.tex"
-
-if( !gif_flag || (gif_flag % 2) || ch_map_flag ) {
- put_alt_ch(chr,ch_str_flag); }
-else{
-#line 11723 "./tex4ht-c.tex"
-
-
-#line 11739 "./tex4ht-c.tex"
-
-if( gif_flag && !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
-}
-
-
-if( span_on ){
-
-#line 11749 "./tex4ht-c.tex"
-
-if( span_open[gif_flag] )
- if( *span_open[gif_flag] ){
- print_f( span_open[gif_flag] );
-}
-
-
-
-#line 11773 "./tex4ht-c.tex"
-
-if( span_name[gif_flag] )
- if( *span_name[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_name[gif_flag],
- font_tbl[cur_fnt].family_name);
-}
-
-
-
-#line 11783 "./tex4ht-c.tex"
-
-if( span_size[gif_flag] )
- if( *span_size[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_size[gif_flag],
- font_tbl[cur_fnt].font_size);
-}
-
-
-
-#line 11792 "./tex4ht-c.tex"
-
-if( span_mag[gif_flag] )
- if( *span_mag[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_mag[gif_flag],
- font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11801 "./tex4ht-c.tex"
-
-if( span_ord[gif_flag] )
- if( *span_ord[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_ord[gif_flag], chr);
-}
-
-
-
-#line 11765 "./tex4ht-c.tex"
-
-if( span_ch[gif_flag] )
- if( *span_ch[gif_flag] ){
- print_f( span_ch[gif_flag] );
-}
-
-
-}
-put_alt_ch(chr,ch_str_flag);
-if( span_on ){
-
-#line 11756 "./tex4ht-c.tex"
-
-if( end_span[gif_flag] )
- if( *end_span[gif_flag] ){
- print_f( end_span[gif_flag] );
-}
-
-
-}
-
- }
-
- }
-special_on = sv;
-
- } design_ch = 0; }
-else {
-#line 10821 "./tex4ht-c.tex"
-
-if( !gif_flag || (gif_flag % 2) || ch_map_flag ) { put_char(chr);
-} else{
-#line 11704 "./tex4ht-c.tex"
-
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
-
-#line 11739 "./tex4ht-c.tex"
-
-if( gif_flag && !get_bit( class_on, gif_flag ) ) {
- notify_class_info(gif_flag);
- store_bit_I( class_on, gif_flag );
-}
-
-
-if( span_on ){
-
-#line 11749 "./tex4ht-c.tex"
-
-if( span_open[gif_flag] )
- if( *span_open[gif_flag] ){
- print_f( span_open[gif_flag] );
-}
-
-
-
-#line 11773 "./tex4ht-c.tex"
-
-if( span_name[gif_flag] )
- if( *span_name[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_name[gif_flag],
- font_tbl[cur_fnt].family_name);
-}
-
-
-
-#line 11783 "./tex4ht-c.tex"
-
-if( span_size[gif_flag] )
- if( *span_size[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_size[gif_flag],
- font_tbl[cur_fnt].font_size);
-}
-
-
-
-#line 11792 "./tex4ht-c.tex"
-
-if( span_mag[gif_flag] )
- if( *span_mag[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_mag[gif_flag],
- font_tbl[cur_fnt].mag);
-}
-
-
-
-#line 11801 "./tex4ht-c.tex"
-
-if( span_ord[gif_flag] )
- if( *span_ord[gif_flag] ){
- (IGNORED) fprintf(cur_o_file, span_ord[gif_flag], chr);
-}
-
-
-
-#line 11765 "./tex4ht-c.tex"
-
-if( span_ch[gif_flag] )
- if( *span_ch[gif_flag] ){
- print_f( span_ch[gif_flag] );
-}
-
-
-}
-put_char(chr);
-if( span_on ){
-
-#line 11756 "./tex4ht-c.tex"
-
-if( end_span[gif_flag] )
- if( *end_span[gif_flag] ){
- print_f( end_span[gif_flag] );
-}
-
-
-}
-
- }
-
- }
-
- }
-}
-
-#line 12405 "./tex4ht-c.tex"
-
-if( a_accent_template && needs_accented_sym ){
- (IGNORED) fprintf(cur_o_file, "%s", a_accent_fifth);
-}
-
-
-
-#line 8213 "./tex4ht-c.tex"
-
-if( pos_dvi ){
- print_f(end_pos_text);
-}
-
-
-#line 12947 "./tex4ht-c.tex"
-
-if( show_class && !pause_class && !ignore_subclass_del ){
- if( !stack[stack_n].no_left_del && stack[stack_n+1].active_class_del ){
- if( !stack[stack_n+1].ignore_subclass_del ){
-
-#line 12962 "./tex4ht-c.tex"
-
-(IGNORED) print_f( close_class[math_class]);
-
-
- }
-
-#line 12975 "./tex4ht-c.tex"
-
-(IGNORED) print_f( (stack[stack_n+1].temp_class_del)?
- stack[stack_n+1].temp_class_close
- : stack[stack_n+1].class_close);
-
-
- stack[stack_n+1].active_class_del = FALSE;
- } else {
-
-#line 12962 "./tex4ht-c.tex"
-
-(IGNORED) print_f( close_class[math_class]);
-
-
- stack[stack_n+1].active_class_del = FALSE;
- }
-}
-
-
-
-#line 2913 "./tex4ht-c.tex"
-
-if( trace_dvi_C && !ch_map_flag ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s%s",
- trace_dvi_del_c, end_trace_dvi_del_c);
-}
-
-
-#line 2619 "./tex4ht-c.tex"
-
-
-
-
-
-#line 12307 "./tex4ht-c.tex"
-
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
-
-
-
-
- text_on = TRUE;
- } }
-
-#line 9800 "./tex4ht-c.tex"
-
-return (INTEGER)(
-
-#line 9837 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].wtbl
- + (int) (
-#line 9845 "./tex4ht-c.tex"
-
-*(font_tbl[cur_fnt].char_wi + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
-
-) )
- )
-* (double) font_tbl[cur_fnt].scale
-
-
- );
-
-
-}
-
-
-#line 16615 "./tex4ht-c.tex"
-
-
-static void put_char
-#ifdef ANSI
-#define SEP ,
-( int ch
-)
-#undef SEP
-#else
-#define SEP ;
-( ch ) int ch
-;
-#undef SEP
-#endif
-{
- if( !ignore_chs
- && !( ((ch==' ') || (ch=='\n')) && no_root_file )
- ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( ch_map_flag ){
- if( special_on || ((ch != '\n') && (ch != ' ')) ){
-
-#line 4990 "./tex4ht-c.tex"
-
-insert_ch_map((char) ch, TRUE);
-
- }
- }else {
- if ( ch == '\n' ){
-#line 3409 "./tex4ht-c.tex"
-
-if( eoln_str ){ print_f(eoln_str); }
-else { (IGNORED) put_4ht_ch( ch, cur_o_file ); }
-recover_spaces = 0;
-
- }
- else if ( ch == ' ' ){
-#line 3431 "./tex4ht-c.tex"
-
-if( space_str ){ print_f(space_str); }
-else { (IGNORED) put_4ht_ch( ch, cur_o_file ); }
-
- }
- else { (IGNORED) put_4ht_ch( ch, cur_o_file ); }
-} } }
-
-
-#line 16648 "./tex4ht-c.tex"
-
-
-static void print_f
-#ifdef ANSI
-#define SEP ,
-( const char* str
-)
-#undef SEP
-#else
-#define SEP ;
-(str) const char* str
-;
-#undef SEP
-#endif
-{
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( ch_map_flag ){
- while( *str ){ put_char( *str ); str++; }
- }else {
- (IGNORED) print_f_4ht( str );
-} }
-
-
-#line 16668 "./tex4ht-c.tex"
-
-
-static void print_f_4ht
-#ifdef ANSI
-#define SEP ,
-( const char* str
-)
-#undef SEP
-#else
-#define SEP ;
-(str) const char* str
-;
-#undef SEP
-#endif
-{
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( ch_map_flag ){
- while( *str ){ put_char( *str ); str++; }
- } else {
- while( *str ){
- (IGNORED) put_4ht_ch( *str, cur_o_file );
- str++;
-} } }
-
-
-#line 16693 "./tex4ht-c.tex"
-
-static int get_char(MYVOID)
-{
- return (int) getc(dvi_file);
-}
-
-
-#line 16705 "./tex4ht-c.tex"
-
-static int get_noop(MYVOID)
-{ int ch;
- while( (ch = get_char()) ==
-#line 17317 "./tex4ht-c.tex"
-
-138
- ){;}
- return ch;
-}
-
-
-#line 16721 "./tex4ht-c.tex"
-
-
-static char* get_str
-#ifdef ANSI
-#define SEP ,
-( int n
-)
-#undef SEP
-#else
-#define SEP ;
-(n) int n
-;
-#undef SEP
-#endif
-{ U_CHAR *q, *p;
- p = q = m_alloc(char,n+1);
- while( n-- ) *q++ = get_char();
- *q = '\0';
- return p;
-}
-
-
-#line 16745 "./tex4ht-c.tex"
-
-
-static long fget_unt
-#ifdef ANSI
-#define SEP ,
-(
- FILE* file SEP
- register int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-( file, n )
- FILE* file SEP
- register int n
-
-;
-#undef SEP
-#endif
-{ register long val = 0;
- while( n-- ){ val = (val << 8) + (unsigned INTEGER) getc(file) ; }
- return val;
-}
-
-
-#line 16769 "./tex4ht-c.tex"
-
-
-static long fget_int
-#ifdef ANSI
-#define SEP ,
-(
- FILE *file SEP
- int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-( file, n )
- FILE *file SEP
- int n
-
-;
-#undef SEP
-#endif
-{ register long val;
- val = (unsigned INTEGER) getc(file);
- if( val & 0x80 ) val -= 0x100;
- while( --n ){ val = (val << 8) + (unsigned INTEGER) getc(file); }
- return val;
-}
-
-
-#line 16805 "./tex4ht-c.tex"
-
-
-static long cond_int
-#ifdef ANSI
-#define SEP ,
-(
- register INTEGER n
-)
-#undef SEP
-#else
-#define SEP ;
-( n )
- register INTEGER n
-;
-#undef SEP
-#endif
-{ register long val;
- int ch;
- val = (unsigned int) (ch = get_char());
- cond_idv_char( ch );
- if( val & 0x80 ) val -= 0x100;
- while( --n ){
- val = (val << 8) + (unsigned int) (ch = get_char());
- cond_idv_char( ch );
- }
- return val;
-}
-
-
-#line 16912 "./tex4ht-c.tex"
-
-
-static void warn_i
-#ifdef ANSI
-#define SEP ,
-( int n
-)
-#undef SEP
-#else
-#define SEP ;
-(n) int n
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- warning --- ");
- (IGNORED) fprintf(stderr, "%s", warn_err_mssg[n]);
- show_err_context();
-}
-
-
-#line 16936 "./tex4ht-c.tex"
-
-
-static void warn_i_int
-#ifdef ANSI
-#define SEP ,
-( int n SEP int i
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,i) int n SEP int i
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- warning --- ");
- (IGNORED) fprintf(stderr, warn_err_mssg[n], i);
- show_err_context();
-}
-
-
-#line 16952 "./tex4ht-c.tex"
-
-
-static void warn_i_int_2
-#ifdef ANSI
-#define SEP ,
-( int n SEP int i SEP int j
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,i,j) int n SEP int i SEP int j
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- warning --- ");
- (IGNORED) fprintf(stderr, warn_err_mssg[n], i, j);
- show_err_context();
-}
-
-
-#line 16968 "./tex4ht-c.tex"
-
-
-static void warn_i_str
-#ifdef ANSI
-#define SEP ,
-(
- int n SEP
- const char *str
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,str)
- int n SEP
- const char *str
-
-;
-#undef SEP
-#endif
-{
- (IGNORED) fprintf(stderr,"--- warning --- ");
- (IGNORED) fprintf(stderr,warn_err_mssg[n], str);
- show_err_context();
-}
-
-
-#line 16988 "./tex4ht-c.tex"
-
-
-static void warn_i_str2
-#ifdef ANSI
-#define SEP ,
-(
- int n SEP
- const char *str1 SEP
- const char *str2
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,str1,str2)
- int n SEP
- const char *str1 SEP
- const char *str2
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- warning --- ");
- (IGNORED) fprintf(stderr,warn_err_mssg[n], str1,str2);
- show_err_context();
-}
-
-
-#line 17022 "./tex4ht-c.tex"
-
-
-static void err_i
-#ifdef ANSI
-#define SEP ,
-( int n
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n) int n
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- error --- ");
- (IGNORED) fprintf(stderr, "%s", warn_err_mssg[n]);
- show_err_context();
- exit(EXIT_FAILURE);
-}
-
-
-#line 17039 "./tex4ht-c.tex"
-
-
-static void err_i_int
-#ifdef ANSI
-#define SEP ,
-( int n SEP int i
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,i) int n SEP int i
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- error --- ");
- (IGNORED) fprintf(stderr, warn_err_mssg[n], i);
- show_err_context();
- exit(EXIT_FAILURE);
-}
-
-
-#line 17055 "./tex4ht-c.tex"
-
-
-static void err_i_str
-#ifdef ANSI
-#define SEP ,
-(
- int n SEP
- U_CHAR *str
-
-)
-#undef SEP
-#else
-#define SEP ;
-(n,str)
- int n SEP
- U_CHAR *str
-
-;
-#undef SEP
-#endif
-{ (IGNORED) fprintf(stderr,"--- error --- ");
- (IGNORED) fprintf(stderr, warn_err_mssg[n], str);
- show_err_context();
- exit(EXIT_FAILURE);
-}
-
-
-#line 17102 "./tex4ht-c.tex"
-
-static void show_err_context(MYVOID)
-{ long curr_pos;
- int n, i;
- U_CHAR ch;
- if( err_context ){
- curr_pos = ftell(dvi_file);
- for(n=6; n--;){
- (IGNORED) putc( '\n', stderr );
- for(i=70; i--;){
- ch = get_char();
- (IGNORED) putc(( (ch>31) && (ch<127))? ch : ' ', stderr);
- }
- }
- (IGNORED) fseek(dvi_file, curr_pos,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- (IGNORED) putc( '\n', stderr ); (IGNORED) putc( '\n', stderr );
- if( err_mark ){ print_f( err_mark ); }
-} }
-
-
-
-int
-#line 507 "./tex4ht-c.tex"
-
-#ifdef CDECL
-CDECL
-#endif
-
- main
-#ifdef ANSI
-#define SEP ,
-(
- int argc SEP
- U_CHAR **argv
-)
-#undef SEP
-#else
-#define SEP ;
-(argc, argv)
- int argc SEP
- U_CHAR **argv
-;
-#undef SEP
-#endif
-{
-#line 1385 "./tex4ht-c.tex"
-
-register INTEGER i;
-int ch;
-
-
-#line 2208 "./tex4ht-c.tex"
-
-int unread_pages;
-
-
-#line 5400 "./tex4ht-c.tex"
-
-long int eof_op_n, begin_postamble;
-int dis_pages;
-
-
-#line 6604 "./tex4ht-c.tex"
-
-int stack_id=0;
-
-
-#line 11858 "./tex4ht-c.tex"
-
-static struct css_ext_rec * css_ext = (struct css_ext_rec *) 0;
-static char css_default[] = "4cs";
-
-
-#line 12259 "./tex4ht-c.tex"
-
-BOOL in_accenting;
-
-
-#line 13034 "./tex4ht-c.tex"
-
-char* tex4ht_env_file = (char *) 0;
-char* dos_env_file =
-#if defined(__MSDOS__)
-
-#line 13221 "./tex4ht-c.tex"
-
-get_env_dir(argv[0])
-
-;
-#endif
-#if !defined(__MSDOS__)
- (char *) 0;
-#endif
-
-
-
-#line 13859 "./tex4ht-c.tex"
-
-struct htf_com_rec* htf_font_dir = (struct htf_com_rec *) 0;
-
-
-
-#line 1064 "./tex4ht-c.tex"
-
-#ifdef WIN32
- /* The idea here is to split options apart at spaces: a single argument
- "-foo -bar" becomes the two options "-foo" and "-bar". We need to
- do this for Windows because mk4ht passes this sort of combined
- option in one string to scripts like htlatex.{unix,bat}. In the
- Unix case, the shell resplits words when calling t4ht and tex4ht,
- so the program see two options. But this does not happen with the
- .bat; %4, for instance, remains "-foo -bar". So we fix it here. */
- if (argc > 2) {
- int i, nargc;
- char **nargv, **pnargv, **pargv;
-
- nargv = (char **) xmalloc (2 * argc * sizeof (char *));
- pnargv = nargv;
- pargv = argv;
- *pnargv++ = xstrdup (*pargv++);
- *pnargv++ = xstrdup (*pargv++);
- nargc = 2;
-
- for (i=2; i < argc; i++) {
- char *p, *q, *r;
- p = q = *pargv++;
- while (*p == ' ' || *p == '\t') {
- p++;
- q++;
- }
- while (*p != ' ' && *p != '\t' && *p) {
- p++;
- if (*p == '\0') {
- *pnargv++ = xstrdup(q);
- nargc++;
- } else if (*p == ' ' || *p == '\t') {
- r = p;
- while (*p == ' ' || *p == '\t')
- p++;
- if (*p == '-' || *p == '\0') {
- *r = '\0';
- *pnargv++ = xstrdup(q);
- nargc++;
- q = p;
- }
- }
- }
- }
-
- nargv[nargc] = NULL;
- argv = nargv;
- argc = nargc;
- }
-#endif
-
-
-
-#line 1159 "./tex4ht-c.tex"
-
-
-#ifdef SIGSEGV
- (void) signal(SIGSEGV,sig_err);
-#endif
- (void) signal(SIGFPE,sig_err);
-#ifdef WIN32
-
-#line 577 "./tex4ht-c.tex"
-
-SetConsoleCtrlHandler((PHANDLER_ROUTINE)sigint_handler, TRUE);
-
-
-#else
-#ifdef SIGINT
- (void) signal(SIGINT,sig_err);
-#endif
-#endif
-
-
-
-#line 1336 "./tex4ht-c.tex"
-
-(IGNORED) printf("----------------------------\n");
-#ifndef KPATHSEA
-#ifdef PLATFORM
- (IGNORED) printf("tex4ht.c (2018-07-03-10:36 %s)\n",PLATFORM);
-#else
- (IGNORED) printf("tex4ht.c (2018-07-03-10:36)\n");
-#endif
-#else
-#ifdef PLATFORM
- (IGNORED) printf("tex4ht.c (2018-07-03-10:36 %s kpathsea)\n",PLATFORM);
-#else
- (IGNORED) printf("tex4ht.c (2018-07-03-10:36 kpathsea)\n");
-#endif
-#endif
-for(i=0; i<argc; i++){
- (IGNORED) printf("%s%s ", (i>1)?"\n " : "", argv[i]); }
-(IGNORED) printf("\n");
-
-
-
-#line 2781 "./tex4ht-c.tex"
-
-set_del( &trace_dvi_del_P, &end_trace_dvi_del_P);
-set_del( &trace_dvi_del_p, &end_trace_dvi_del_p);
-set_del( &trace_dvi_del_C, &end_trace_dvi_del_C);
-set_del( &trace_dvi_del_c, &end_trace_dvi_del_c);
-set_del( &trace_dvi_del_H, &end_trace_dvi_del_H);
-set_del( &trace_dvi_del_h, &end_trace_dvi_del_h);
-set_del( &trace_dvi_del_R, &end_trace_dvi_del_R);
-set_del( &trace_dvi_del_r, &end_trace_dvi_del_r);
-set_del( &trace_dvi_del_V, &end_trace_dvi_del_V);
-set_del( &trace_dvi_del_v, &end_trace_dvi_del_v);
-
-
-
-#line 1576 "./tex4ht-c.tex"
-
-dvi_file = stdin;
-
-
-#line 4682 "./tex4ht-c.tex"
-
-{ U_CHAR *yes = NULL;
- system_yes = (system( yes ) != 0);
-}
-
-
-#line 6300 "./tex4ht-c.tex"
-
-{ int i;
- for( i=8; i--; ){
- halign[i] = m_alloc(struct halign_rec, 1);
- halign[i]->str = m_alloc(char, 1);
- *(halign[i]->str) = '\0';
- halign[i]->refs = 1;
- }
-}
-
-
-#line 7439 "./tex4ht-c.tex"
-
-del_stack = (struct del_stack_entry *) 0;
-
-
-#line 7464 "./tex4ht-c.tex"
-
-back_id_off = 1; id_latex = 0;
-
-
-#line 7543 "./tex4ht-c.tex"
-
-back_token = back_group = m_alloc(struct send_back_entry,1);
-back_token->id = -1;
-
-
-#line 8460 "./tex4ht-c.tex"
-
-pos_text = pos_line = end_pos_body = end_pos_text = pos_body =
- m_alloc(char, (int) 1);
-(IGNORED) strcpy((char *) pos_text, "" );
-
-
-#line 9748 "./tex4ht-c.tex"
-
-margin_sp = (double) MARGINSP;
-
-
-#line 11662 "./tex4ht-c.tex"
-
-{ int i; i=256; while( i-- ) {
- span_name[i] = span_open[i] = span_size[i] =
- span_mag[i] = span_ch[i] = end_span[i] =
- span_ord[i] = gif_id[i] = NULL;
- if( (i>0) && !(i%2) ) { store_bit_Z( class_on, i ); }
- else { store_bit_I( class_on, i ); }
- }
-}
-
-
-#line 12263 "./tex4ht-c.tex"
-
-in_accenting = FALSE;
-
-
-#line 12753 "./tex4ht-c.tex"
-
-for( math_class=0; math_class<
-#line 12719 "./tex4ht-c.tex"
-
-79
-
-; math_class++ ){
- open_class[math_class] = m_alloc(char, 1);
- close_class[math_class] = m_alloc(char, 1);
- *(open_class[math_class]) = *(close_class[math_class]) = '\0';
-}
-
-
-#line 14207 "./tex4ht-c.tex"
-
-HOME_DIR = getenv("HOME");
-
-
-
-#line 1360 "./tex4ht-c.tex"
-
-{ long file_len;
-
-#line 1443 "./tex4ht-c.tex"
-
-{ int i;
- U_CHAR *p;
- const U_CHAR *in_name = "", *out_name = "";
-
-#line 14878 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
- kpse_set_program_name (argv[0], "tex4ht");
-#endif
-
-
-
-#line 642 "./tex4ht-c.tex"
-
-#if !defined(DOS_GIF_FILE) && !defined(WIN32) && defined(__DJGPP__)
- dos_file_names = !_use_lfn(NULL);
-#endif
-
-
- if( argc == 1 ){ bad_arg; }
- for(i=1; i<argc; i++) {
- if( *( p=argv[i] ) == '-' ){
-#line 1468 "./tex4ht-c.tex"
-
-if( (int) strlen((char *) argv[i] ) == 2 ){
- if( ++i == argc ) bad_arg;
-}
-switch( *(p+1) ){
- case 'b':{
-#line 11115 "./tex4ht-c.tex"
-
-begin_char_gif = p+2;
-
- break; }
- case 'c':{
-#line 13427 "./tex4ht-c.tex"
-
-struct env_c_rec *temp = (struct env_c_rec*)
- m_alloc(struct env_c_rec, (int) 1);
-temp->option = p+2;
-temp->next = envChoice;
-envChoice = temp;
-
- break;}
- case 'e':{
-#line 13025 "./tex4ht-c.tex"
-
-tex4ht_env_file = p+2;
-
-break; }
- case 'f':{
-#line 1503 "./tex4ht-c.tex"
-
-p = p + 2;
-in_name = p + (int) strlen((char *) p );
-while( *in_name != *p ){ in_name--; }
-in_name++;
-
-break; }
- case 'F':{
-#line 9963 "./tex4ht-c.tex"
-
-char *digit = p+2;
-ignore_ch = 0;
-while( *digit != '\0' ){
- if( (*digit < '0') || (*digit > '9') ){
- ignore_ch = 0; break;
- }
- ignore_ch = 10 * ignore_ch + (*digit - '0');
- if( ignore_ch > 255 ){ ignore_ch = 0; break; }
- digit++;
-}
-
- break; }
- case 'g':{
-#line 11143 "./tex4ht-c.tex"
-
-gif = p+2;
-
- break; }
- case 'h':{
-#line 1513 "./tex4ht-c.tex"
-
-{
- char trace = *(p+2);
- if (trace == 'A' || trace == 'e') {
-#line 17136 "./tex4ht-c.tex"
-
-err_context = TRUE;
-
- }
- if (trace == 'A' || trace == 'f') {
-#line 10491 "./tex4ht-c.tex"
-
-dump_htf_files = 1;
-
- }
- if (trace == 'A' || trace == 'F') {
-#line 15066 "./tex4ht-c.tex"
-
-dump_htf_search = TRUE;
-
- }
- if (trace == 'A' || trace == 's') {
-#line 17165 "./tex4ht-c.tex"
-
-trace_special = TRUE;
-
- }
- if (trace == 'A' || trace == 'g') {
-#line 2753 "./tex4ht-c.tex"
-
-trace_dvi_P++;
-if( !( *trace_dvi_del_P || *end_trace_dvi_del_P
- || *trace_dvi_del_p || *end_trace_dvi_del_p
- )
- ){
- trace_dvi_del_P =
- (char *) r_alloc((void *) trace_dvi_del_P,
- (size_t) 4);
- (IGNORED) strcpy((char *) trace_dvi_del_P, "[G " );
- end_trace_dvi_del_P =
- (char *) r_alloc((void *) end_trace_dvi_del_P,
- (size_t) 2);
- (IGNORED) strcpy((char *) end_trace_dvi_del_P, "]" );
- trace_dvi_del_p =
- (char *) r_alloc((void *) trace_dvi_del_p,
- (size_t) 5);
- (IGNORED) strcpy((char *) trace_dvi_del_p, "[/G " );
- end_trace_dvi_del_p =
- (char *) r_alloc((void *) end_trace_dvi_del_p,
- (size_t) 2);
- (IGNORED) strcpy((char *) end_trace_dvi_del_p, "]" );
-}
-
- }
- if (trace == 'A' || trace == 'v') {
-#line 10495 "./tex4ht-c.tex"
-
-dump_env_files = TRUE;
-
- }
- if (trace == 'A' || trace == 'V') {
-#line 13062 "./tex4ht-c.tex"
-
-dump_env_search = TRUE;
-
- }
- else { bad_arg; }
-}
-
- break; }
- case 'i':{
-#line 13863 "./tex4ht-c.tex"
-
- com_dir(p);
- {
- struct htf_com_rec *q, *t;
- q = m_alloc( struct htf_com_rec, 1);
- q->name = p+2;
- q->next = (struct htf_com_rec *) 0;
- if( htf_font_dir ){
- t = htf_font_dir;
- while( t->next ){ t = t->next; }
- t->next = q;
- } else {
- htf_font_dir = q;
- }
-}
-
- break; }
- case 'l':{
-#line 14214 "./tex4ht-c.tex"
-
-#ifndef KPATHSEA
-tex4ht_fls_name = p+2;
-#endif
-
- break; }
- case 'P':{
-#line 4644 "./tex4ht-c.tex"
-
-{ struct sys_call_rec *q;
- q = m_alloc(struct sys_call_rec, 1);
- q->next = system_calls;
- q->filter = p + 2;
- system_calls = q;
-}
-
- break; }
- case 'S':{
-#line 11077 "./tex4ht-c.tex"
-
-font_gif = p+2;
-
- break; }
- case 's':{
-#line 11842 "./tex4ht-c.tex"
-
-struct css_ext_rec * css = m_alloc(struct css_ext_rec, 1);;
-css->name = p + 2;
-css->next = css_ext;
-css_ext = css;
-
- break; }
- case 't':{
-#line 13481 "./tex4ht-c.tex"
-
-com_dir(p); fontdir[fontdir_count++] = p+2;
-
- break; }
- case 'u':{
-#line 16219 "./tex4ht-c.tex"
-
-if( eq_str(p+2, "10") ){ u10 = TRUE; }
-
-#line 16362 "./tex4ht-c.tex"
-
-else if( eq_str(p+2, "tf8") ){ utf8 = TRUE; }
-
-
-else{ bad_arg;}
-
- break; }
- case 'v':{
-#line 5469 "./tex4ht-c.tex"
-
-{ U_CHAR *q;
- q = p + 2;
- id_version = 0;
- while( *q != '\0' ){
- if( id_version != -1 ){
- if( (*q < '0') || (*q > '9') ){
- id_version = -1;
- warn_i(53);
- }
- id_version = id_version * 10 + *q - '0';
- }
- q++;
-} }
-
- break; }
- case 'x':{
-#line 649 "./tex4ht-c.tex"
-
-switch( *(p+2) ){
- case 's':{ dos_file_names = TRUE; break; }
- default:{ bad_arg; }
-}
-
- break; }
- case '.':{
-#line 1634 "./tex4ht-c.tex"
-
-ext = p+1;
-
- break; }
- default:{ bad_arg; }
-}
-
- }
- else in_name = argv[i];
- }
-
-#line 11849 "./tex4ht-c.tex"
-
-if( css_ext == (struct css_ext_rec *) 0 ){
- struct css_ext_rec * css = m_alloc(struct css_ext_rec, 1);;
- css->name = css_default;
- css->next = css_ext;
- css_ext = css;
-}
-
-
-
-#line 1588 "./tex4ht-c.tex"
-
-if( *in_name != '\0' ){
-#line 1596 "./tex4ht-c.tex"
-
- BOOL tag;
-job_name_n = (int) strlen( in_name );
-job_name = m_alloc(char, job_name_n+6);
-(IGNORED) strcpy((char *) job_name, in_name);
-tag = job_name_n < 3;
-if( !tag ){
- tag = !eq_str( job_name+job_name_n-
-#line 1614 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? 4 : (int) strlen((char *) ext)
-)
-
-,
-#line 1620 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? ".dvi" : ext
-)
-
-);
-}
-if( tag ){
- job_name_n+=
-#line 1614 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? 4 : (int) strlen((char *) ext)
-)
-
-; (IGNORED) strct(job_name,
-#line 1620 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? ".dvi" : ext
-)
-
-);
-}
-if( (dvi_file = fopen(job_name, READ_BIN_FLAGS)) == NULL )
- {
-#line 1655 "./tex4ht-c.tex"
-
-{ int i;
- for(i=job_name_n-5; i; i--){
- if( job_name[i] == '.' ){
- job_name[i] = '\0';
- job_name_n = i +
-#line 1614 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? 4 : (int) strlen((char *) ext)
-)
-
-;
- (IGNORED) strct(job_name,
-#line 1620 "./tex4ht-c.tex"
-
-(
- (ext==NULL)? ".dvi" : ext
-)
-
-);
- break;
- } }
- if( (dvi_file = fopen(job_name, READ_BIN_FLAGS)) == NULL ){
- warn_i_str(1, job_name); bad_in_file(job_name);
-} }
-
- }
-
-#line 5390 "./tex4ht-c.tex"
-
-job_name[job_name_n-1] = 'v';
-job_name[job_name_n-2] = 'd';
-job_name[job_name_n-3] = 'i';
-if( (idv_file = fopen(job_name, WRITE_BIN_FLAGS)) == NULL )
- bad_in_file(job_name);
-
-
-
-
- }
-#ifdef KWIN32
- else if (!isatty(fileno(stdin))) SET_BINARY(fileno(stdin));
-#endif
-
-
- {
-#line 1700 "./tex4ht-c.tex"
-
- U_CHAR *name=0;
-if( *out_name == '\0' )
- { if( *in_name == '\0' ){
-#line 1785 "./tex4ht-c.tex"
-
-bad_arg;
-
- }
- else {
-#line 1790 "./tex4ht-c.tex"
-
-int n = (int) strlen((char *) job_name );
-name = m_alloc(char, 6 + n);
-(IGNORED) strcpy((char *) name, (char *) job_name);
-n -= 4; *(name + n) = '\0';
-(IGNORED) strct(name,".html");
-#ifdef HTM
-name[n+4] ='\0';
-#endif
-
- }
- }
-else{
-#line 1808 "./tex4ht-c.tex"
-
- int tag = 1;
- int n = (int) strlen( out_name );
-name = m_alloc(char, 6 + n);
-(IGNORED) strcpy((char *) name, out_name);
-while( n-- ) tag = tag && (*(name+n) != '.') ;
-if( tag ) (IGNORED) strct(name,".html");
-#ifdef HTM
-name[n+4] = '\0';
-#endif
-
- }
-no_root_file = name;
-
- }
-}
-
-
-
-#line 13066 "./tex4ht-c.tex"
-
-{ U_CHAR str[PATH_MAX], *TEX4HTENV;
-
-#line 13084 "./tex4ht-c.tex"
-
-if( dump_env_search && tex4ht_env_file ){
- (IGNORED) printf("-e: %s?\n", tex4ht_env_file);
-}
-dot_file = tex4ht_env_file?
- f_open_pathed_filename( tex4ht_env_file, READ_TEXT_FLAGS ) : NULL;
-
-
-
-#line 13129 "./tex4ht-c.tex"
-
-if( !dot_file ){
- if( dump_env_search ){ (IGNORED) printf("%s?\n", "tex4ht.env"); }
- dot_file = f_open("tex4ht.env", READ_TEXT_FLAGS);
-}
-#ifndef DOS_WIN32
- if( !dot_file ){
- if( dump_env_search ){ (IGNORED) printf("%s?\n", ".tex4ht"); }
- dot_file = f_open(".tex4ht", READ_TEXT_FLAGS);
- if( dot_file ){
- printf("(%s)\n", ".tex4ht");
- } }
-#endif
-
-
- if( !dot_file ){
-
-#line 13158 "./tex4ht-c.tex"
-
-TEX4HTENV = getenv("TEX4HTENV");
-if( TEX4HTENV ){
- if( dump_env_search ){
- (IGNORED) printf("TEX4HTENV: %s?\n", TEX4HTENV); }
- dot_file = f_open_pathed_filename(TEX4HTENV,READ_TEXT_FLAGS);
-} else {
- if( dump_env_search ){
- (IGNORED) printf("getenv(\"TEX4HTENV\")=\n");
-} }
-
-
- }
-
-#line 13096 "./tex4ht-c.tex"
-
-if( !dot_file ){
- if( HOME_DIR ){
- (IGNORED) sprintf(str,
-#line 13177 "./tex4ht-c.tex"
-
-#if defined(__DJGPP__)
- is_forward_slash(HOME_DIR)? "%s/tex4ht.env" : "%s\\tex4ht.env"
-#else
- "%s/tex4ht.env"
-#endif
-
-, HOME_DIR);
- if( dump_env_search ){ (IGNORED) printf("%s?\n", str); }
- dot_file = f_open(str,READ_TEXT_FLAGS);
-} }
-#ifndef DOS_WIN32
- if( !dot_file ){
- if( HOME_DIR ){
- (IGNORED) sprintf(str,"%s/.tex4ht", HOME_DIR);
- if( dump_env_search ){ (IGNORED) printf("%s?\n", str); }
- dot_file = f_open(str,READ_TEXT_FLAGS);
- } }
-#endif
-#if defined(__MSDOS__)
- if( !dot_file ){
- if( dump_env_search ){ (IGNORED) printf("%s?\n", "C:/tex4ht.env"); }
- dot_file = f_open("C:/tex4ht.env",READ_TEXT_FLAGS);
- }
-#endif
-
-
-
-#line 13145 "./tex4ht-c.tex"
-
-#ifdef ENVFILE
- if( !dot_file ){
- if( dump_env_search ){ (IGNORED) printf("ENVFILE: %s?\n", ENVFILE); }
- dot_file = f_open_pathed_filename( ENVFILE,READ_TEXT_FLAGS);
- }
-#else
- if( dump_env_search ){
- (IGNORED) printf("tex4ht compiled without ENVFILE\n");
- }
-#endif
-
-
-
-#line 13122 "./tex4ht-c.tex"
-
-if( !dot_file && dos_env_file){
- if( dump_env_search ){ (IGNORED) printf("%s?\n", dos_env_file); }
- dot_file = f_open( dos_env_file, READ_TEXT_FLAGS );
-}
-
-
-
-#line 14887 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
-if( !dot_file ) { U_CHAR * envfile;
- char *arch, *p, str[256];
-
-#line 14939 "./tex4ht-c.tex"
-
-p = arch = (char *) kpse_var_value( "SELFAUTOLOC" );
-while( *p != '\0' ){
- if( (*p == '/') || (*p == '\\') ){
- arch = p;
- }
- p++;
-}
-
-
- envfile = (char *) 0;
-
-#line 14950 "./tex4ht-c.tex"
-
-if( arch ){
- (IGNORED) sprintf(str,"%s%ctex4ht.env", arch+1, *arch);
- if( dump_env_search ){
- (IGNORED) printf("kpse_open_file (\"%s\", ...)?\n", str );
- }
- envfile= kpse_find_file (str, kpse_program_text_format, 0);
-}
-
-
- if ( !envfile ){
-#line 14961 "./tex4ht-c.tex"
-
-if( dump_env_search ){
- (IGNORED) printf("kpse_open_file (\"tex4ht.env\", ...)?\n");
-}
-envfile= kpse_find_file ("tex4ht.env", kpse_program_text_format, 0);
-
- }
- if ( !envfile ){
-#line 15012 "./tex4ht-c.tex"
-
-#define KPSEWHICH_CMD "kpsewhich --progname=tex4ht --format=othertext tex4ht.env"
-if( dump_env_search ){
- (IGNORED) printf("system(" KPSEWHICH_CMD ")?\n"); /* cpp concatenation */
-}
-if( system(KPSEWHICH_CMD ">tex4ht.tmp") == 0 ){
-
-#line 15042 "./tex4ht-c.tex"
-
-char fileaddr [256];
-int loc = 0;
-FILE* file = f_open("tex4ht.tmp", READ_TEXT_FLAGS);
-if( file ){
- while( (fileaddr[loc] = getc(file)) >=0 ){
- if( fileaddr[loc] == '\n' ){ fileaddr[loc] = '\0'; break; }
- loc++;
- }
- (IGNORED) fclose(file);
-}
-
-
- envfile= kpse_find_file (fileaddr, kpse_program_text_format, 0);
- if( envfile ){
- warn_i_str( 50,
- "search support for kpse_find_file--using kpsewhich calls instead");
-} }
-
- }
- if ( envfile ){
- dot_file = kpse_open_file (envfile,
- kpse_program_text_format);
- (IGNORED) printf("(%s)\n", envfile);
- } else if( dump_env_search ){
- p = (char *) kpse_var_value( "TEX4HTINPUTS" );
- if( p ){
- (IGNORED) printf( "TEX4HTINPUTS = %s\n", p );
- } else { warn_i_str( 50, "kpathsea variable TEX4HTINPUTS"); }
- }
-}
-#endif
-
-
- if( !dot_file ) { bad_in_file(
-#line 13187 "./tex4ht-c.tex"
-
-#ifdef DOS_WIN32
- "tex4ht.env"
-#else
- "tex4ht.env | .tex4ht"
-#endif
-
-); } /* give up if no tex4ht.env */
-}
-
-
-
-#line 4626 "./tex4ht-c.tex"
-
-(IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-while ( search_dot_file( 'P' ) ){ struct sys_call_rec *q;
- U_CHAR *p, str[256];
- q = m_alloc(struct sys_call_rec, 1);
- q->next = system_calls;
- system_calls = q;
- p = str;
- do
- *(p++) = ch = (int) getc(dot_file);
- while( (ch !='\n') && (ch != EOF) );
- p--;
- *p = '\0';
- q->filter = m_alloc(char, (int) strlen((char *) str)+1);
- (IGNORED) strcpy((char *) q->filter, (char *) str);
-}
-
-
-#line 8857 "./tex4ht-c.tex"
-
-lg_font_fmt = (char *) get_script(lg_font_fmt,LGFNT,'f');
-
-
-#line 10854 "./tex4ht-c.tex"
-
-class_fmt = (char *) get_script(class_fmt,LGCLS,'c');
-
-
-#line 11083 "./tex4ht-c.tex"
-
-font_gif = (char *) get_script(font_gif,LGPIC,'s');
-
-#line 11089 "./tex4ht-c.tex"
-
-{ int n;
- n = (int) strlen((char *) font_gif);
- if( font_gif[n-1] != '%' ){ font_gif[n] = '%'; font_gif[n+1] = '\0'; }
-}
-
-
-
-
-#line 11121 "./tex4ht-c.tex"
-
-begin_char_gif = (char *) get_script(begin_char_gif,LGSEP,'b');
-
-
-#line 11149 "./tex4ht-c.tex"
-
-gif = (char *) get_script(gif,LGTYP,'g');
-{ int n;
- n = (int) strlen((char *) gif) - 1;
- if( gif[n] == '%' ){ gif[n] = '%'; }
- else if( gif[n] == '\n' ) { gif[n] = '\0'; }
-}
-
-
-
-#line 1880 "./tex4ht-c.tex"
-
-{ long curr_pos;
- curr_pos = ftell(dvi_file);
- (IGNORED) fseek(dvi_file, 0, SEEK_END);
- file_len = ftell(dvi_file);
- (IGNORED) fseek(dvi_file, curr_pos,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- if( (file_len % 4) != 0 ) bad_dvi;
-}
-
-
-
-#line 5953 "./tex4ht-c.tex"
-
-{ U_CHAR str[256];
- (IGNORED) strcpy((char *) str, (char *) job_name);
- str[job_name_n-1] = '\0';
- str[job_name_n-2] = 'g';
- str[job_name_n-3] = 'l';
- if( (log_file = fopen(str, WRITE_TEXT_FLAGS)) == NULL )
- bad_in_file(str);
-}
-
-
-
-#line 14437 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-{ char str [256], *export_str, *postfix;
- export_str = m_alloc(char, 1);
- *export_str = '\0';
-
-#line 14525 "./tex4ht-c.tex"
-
-{
- struct htf_com_rec *q;
- q = htf_font_dir;
- while( q != (struct htf_com_rec *) 0 ){
- (IGNORED) strcpy((char *) str, (char *) q->name);
- export_htf( &export_str, str );
- q = q->next;
-} }
-(IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-while ( search_dot_file( 'i' ) ){
- int ch;
- char* p;
- p = str;
- do {
- ch = (int) getc(dot_file);
- if( ch != EOF) { *(p++) = ch;}
- } while( (ch !='\n') && (ch != EOF) );
- *p = '\0';
- export_htf( &export_str, str );
-}
-#ifdef HTFDIR
- (IGNORED) strcpy((char *) str, (char *) HTFDIR);
- export_htf( &export_str, str );
-#endif
-
-#line 14555 "./tex4ht-c.tex"
-
-{ U_CHAR * q;
- q = (U_CHAR *) kpse_var_value( "TEX4HTFONTSET" );
- if( q ){
- if( (int) strlen((char *) q) > 0 ){
- export_str = (char *) r_alloc((void *) export_str,
- (int) strlen((char *) export_str) + (int) strlen((char *) q) + 2);
- if( (int) strlen((char *) export_str) > 0 ){
- (IGNORED) strcat((char *) export_str, ",");
- }
- (IGNORED) strcat((char *) export_str, (char *) q);
-} } }
-
-
-
-
- if( (int) strlen((char *) export_str) > 0 ){
- (IGNORED) strcpy((char *) str, "%%12");
- export_str = (char *) r_alloc((void *) export_str,
- (int) strlen((char *) export_str) + (int) strlen((char *) str) + 1 );
- postfix = str - 1;
- while( *(++postfix) != '\0' ){
- if( (*postfix=='%') && (*(postfix+1)=='%') &&
- (*(postfix+2)=='1') && (*(postfix+3)=='2') ){
- *postfix='\0'; postfix += 4; break;
- } }
- if( (int) strlen((char *) export_str) != 0 ){
-
-#line 14468 "./tex4ht-c.tex"
-
-{ char *from_ch;
- int i, n, m;
- n = (int) strlen((char *) str);
- m = (int) strlen((char *) export_str);
- from_ch = export_str + m;
- for( i = 0; i<=m; i++){
- *(from_ch + n) = *(from_ch);
- from_ch--;
- }
- for( i = 0; i<n; i++){
- export_str[i] = str[i];
- }
- (IGNORED) strcat((char *) export_str, (char *) postfix);
-}
-
-
-
-#line 14493 "./tex4ht-c.tex"
-
-{ U_CHAR * q;
- if( dump_htf_search ) { U_CHAR *p, *q;
-
-#line 14842 "./tex4ht-c.tex"
-
-p = (U_CHAR *) kpse_var_value( "TEX4HTFONTSET" );
-if( p ){
- (IGNORED) printf("given TEX4HTFONTSET = %s\n", p);
-}
-q = getenv("TEX4HTFONTSET");
-if( q ){ (IGNORED) printf(
- "Environmet var TEX4HTFONTSET: %s\n", q);
-}
-if( !p && !q ){
- (IGNORED) printf( "Missing TEX4HTFONTSET for kpathsea\n" );
-}
-
-
- }
- q = (U_CHAR *) kpse_var_value( "TEX4HTFONTSET" );
- if( q ){
- xputenv("TEX4HTFONTSET", export_str);
- if( dump_htf_search ){
- (IGNORED) printf("setting TEX4HTFONTSET={%s}\n", export_str);
- }
- } else if( dump_htf_search ) {
- warn_i_str( 50, "TEX4HTFONTSET for kpathsea" );
- }
-}
-
-
- }
- }
-
-#line 14673 "./tex4ht-c.tex"
-
-{ int n;
- n = (int) strlen((char *) export_str);
- if( n > 0 ){
- export_str_chars = m_alloc(char, n+1);
- (IGNORED) strcpy((char *) export_str_chars, (char *) export_str);
-} }
-
-
- free((void *) export_str);
-
-#line 14790 "./tex4ht-c.tex"
-
-if( dump_htf_search || dump_env_search ) {
- U_CHAR *p, *q;
-
-#line 14820 "./tex4ht-c.tex"
-
-p = kpse_find_file ( "texmf.cnf", kpse_cnf_format, 0);
-if( p ){
- (IGNORED) printf( "texmf.cnf = %s\n", p);
-} else { warn_i_str(1, "texmf.cnf" ); }
-p = (U_CHAR *) kpse_var_value( "TEX4HTINPUTS" );
-if( p ){
- (IGNORED) printf("TEX4HTINPUTS = %s\n", p);
-}
-q = getenv("TEX4HTINPUTS");
-if( q ){ (IGNORED) printf(
- "Environment var TEX4HTINPUTS: %s\n", q);
-}
-if( !p && !q ){
- (IGNORED) printf( "Missing TEX4HTINPUTS for kpathsea\n" );
-}
-
-
-}
-
-
-}
-#endif
-
-
-
-#line 2150 "./tex4ht-c.tex"
-
-i=0;
-do{
- i++; file_len -= 1;
- (IGNORED) fseek(dvi_file, file_len,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-} while( (ch=get_char()) ==
-#line 17420 "./tex4ht-c.tex"
-
-223
- );
-eof_op_n = file_len;
-if( (i<4)
- ||
- ((ch !=
-#line 2283 "./tex4ht-c.tex"
-
-2
-) && (ch >
-#line 2292 "./tex4ht-c.tex"
-
-10
-
-))
- ) bad_dvi;
-version_id = ch;
-
-
-#line 2185 "./tex4ht-c.tex"
-
-file_len -= 5;
-(IGNORED) fseek(dvi_file, file_len,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-if( get_char() !=
-#line 17469 "./tex4ht-c.tex"
-
-249
- ) bad_dvi;
-eof_op_n -= begin_postamble = get_unt(4);
-(IGNORED) fseek(dvi_file, begin_postamble,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-
-
-#line 2197 "./tex4ht-c.tex"
-
-if( get_char() !=
-#line 17466 "./tex4ht-c.tex"
-
-248
- ) bad_dvi;
-(IGNORED) fseek(dvi_file, 16L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-#line 5968 "./tex4ht-c.tex"
-
-mid_page_y = (INTEGER) get_unt(4) / 2;
-mid_page_x = (INTEGER) get_unt(4) / 2;
-
-
-if( (stack_len = (int) get_unt(2)) < 1) bad_dvi;
-
-#line 6679 "./tex4ht-c.tex"
-
-stack = m_alloc(struct stack_entry,
-#line 6684 "./tex4ht-c.tex"
-
-((int) stack_len + 2)
-
-);
-
-#line 6718 "./tex4ht-c.tex"
-
-{ int i;
- for( i=
-#line 6684 "./tex4ht-c.tex"
-
-((int) stack_len + 2)
-
--1; i>=0; i--){
- stack[i].begin = (struct group_info *) 0;
- stack[i].end = (struct stack_end_entry *) 0;
- stack[i].stack_id = -1;
-
-#line 6354 "./tex4ht-c.tex"
-
-stack[i].halign_info = FALSE;
-stack[i].halign_on = FALSE;
-
-
-#line 7804 "./tex4ht-c.tex"
-
-stack[i].path_start = (struct group_path *) 0;
-stack[i].path_end = (struct group_path *) 0;
-
-
-#line 12887 "./tex4ht-c.tex"
-
-stack[i].class_open = stack[i].class_close
- = (char *) 0;
-stack[i].temp_class_open = m_alloc(char, 1 );
-stack[i].temp_class_close = m_alloc(char, 1 );
-stack[i].ignore_subclass_del = stack[i].temp_class_del
- = stack[i].active_class_del
- = FALSE;
-
-
-} }
-
-
-
-
-unread_pages = (int) get_unt(2);
-
-
-#line 2222 "./tex4ht-c.tex"
-
-{
-#line 10256 "./tex4ht-c.tex"
-
-int fonts_n;
-struct html_font_rec *html_font=0;
-
-
-#line 11938 "./tex4ht-c.tex"
-
-struct visited_file_rec * visited_file =
- (struct visited_file_rec *) 0;
-
-
-#line 13648 "./tex4ht-c.tex"
-
-#ifndef KPATHSEA
-struct env_var_rec *tfm_dirs;
-#endif
-struct env_var_rec *htf_dirs;
-
-
-#line 14663 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
-
-#line 14683 "./tex4ht-c.tex"
-
-int cardinality=0;
-char ** fontset=0;
-
-
-#endif
-
-
- BOOL missing_fonts;
-#ifndef KPATHSEA
-
-#line 14195 "./tex4ht-c.tex"
-
-U_CHAR files_cache[PATH_MAX];
-
-
-
-#line 14155 "./tex4ht-c.tex"
-
-{ U_CHAR *p;
- if( !tex4ht_fls_name ){
- tex4ht_fls_name = p = files_cache;
- (IGNORED) fseek(dot_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- if ( search_dot_file( 'l' ) ){
- do
- *(p++) = ch = (int) getc(dot_file);
- while( (ch !='\n') && (ch != EOF) );
- p--; *p = '\0';
- } else { (IGNORED) strcpy((char *) p,
-(char *) getenv("TEX4HTWR")? "~~/tex4ht.fls" : "tex4ht.fls");
- }
- }
-
-#line 14174 "./tex4ht-c.tex"
-
-if( *tex4ht_fls_name == '~' ){
- tex4ht_fls_name = abs_addr(tex4ht_fls_name,getenv("TEX4HTWR"));
-}
-
-
-}
-
-
-
-#line 14338 "./tex4ht-c.tex"
-
-cache_files = f_open(tex4ht_fls_name, READ_BIN_FLAGS);
-
-
-#endif
-
-#line 10261 "./tex4ht-c.tex"
-
-fonts_n = 0;
-
-
-#line 13728 "./tex4ht-c.tex"
-
-cache_font = (struct cache_font_rec *) 0;
-cur_cache_font = (struct cache_font_rec *) 0;
-
-
- missing_fonts = FALSE;
-
-#line 13568 "./tex4ht-c.tex"
-
-#ifndef KPATHSEA
-tfm_dirs = get_env_var("TEX4HTTFM");
-#endif
-htf_dirs = get_env_var("TEX4HTHTF");
-
-
-
-#line 14688 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
-if( export_str_chars ){
-
-#line 14709 "./tex4ht-c.tex"
-
-{ U_CHAR *p;
- int n;
- cardinality = 1;
- p = (U_CHAR *) export_str_chars;
- while( *p != '\0' ){
- if( *p == ',' ){ cardinality++; }
- p++;
- }
- fontset = m_alloc(char *, cardinality);
- p = (U_CHAR *) export_str_chars;
- fontset[0] = p;
- n=1;
- while( *p != '\0' ){
- if( *p == ',' ){ fontset[n++] = p+1; *p = '\0'; }
- p++;
-} }
-
-
-}
-#endif
-
-
-
-#line 15935 "./tex4ht-c.tex"
-
-{ U_CHAR name[256];
- FILE* file;
- (IGNORED) sprintf(name, "%s.4hf", "unicode");
-
-#line 13837 "./tex4ht-c.tex"
-
- file = NULL;
-
-#line 13905 "./tex4ht-c.tex"
-
-{
- struct htf_com_rec *p;
- p = htf_font_dir;
- while( p ){
- file = search_file_base(name, p->name, READ_TEXT_FLAGS, htf_dirs);
- if( file ){
-#ifndef KPATHSEA
- tex4ht_fls = TRUE;
-#endif
- break;
- }
- p = p->next;
- }
-}
-
-
- if( !file ){
- if( ((file = f_open(name, READ_TEXT_FLAGS)) == NULL) && dot_file )
- file = search_in_dot_file( 'i', name, READ_TEXT_FLAGS, htf_dirs);
-#ifdef HTFDIR
- if( !file ) file = search_file_base(name, HTFDIR,
- READ_TEXT_FLAGS, htf_dirs);
-#endif
-
-#line 15073 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
- if( !file ){ U_CHAR * htfname;
- htfname= kpse_find_file (name, kpse_program_text_format, 0);
- if ( htfname ){
-
-#line 14729 "./tex4ht-c.tex"
-
-{ U_CHAR * head, * tail, *p;
- int n;
-
-#line 14739 "./tex4ht-c.tex"
-
-n = (int) strlen((char *) htfname);
-tail = head = m_alloc(char, n+1);
-(IGNORED) strcpy((char *) head, (char *) htfname);
-while( n>11 ){
- if( (*tail=='\\') || (*tail=='/') ){
- if( (*tail == *(tail+9)) && (*(tail+1) == 'h')
- && (*(tail+2) == 't') && (*(tail+3) == '-')
- && (*(tail+4) == 'f') && (*(tail+5) == 'o')
- && (*(tail+6) == 'n') && (*(tail+7) == 't')
- && (*(tail+8) == 's') ){
- p = tail + 9; *(tail + 10) = '\0'; tail += 11;
- while( (*tail != *p) && (*tail != '\0') ){ tail++; }
- break;
- } }
- tail++; n--;
-}
-
-
- htfname = (U_CHAR *) 0;
-
-#line 14761 "./tex4ht-c.tex"
-
-for( n = 0 ; (n < cardinality) && !htfname ; n++){
- p = tail;
- while( *p != '\0' ){
- char * s, *nm;
- s = m_alloc(char, (int) strlen((char *) head ) +
- (int) strlen((char *) fontset[n] ) +
- (int) strlen((char *) p ) + 1);
- (IGNORED) strcpy((char *) s, (char *) head);
- (IGNORED) strcat((char *) s, (char *) fontset[n]);
- (IGNORED) strcat((char *) s, (char *) p);
- nm = kpse_find_file (s, kpse_program_text_format, 0);
- free((void *) s);
- if ( nm ){
- htfname = nm; break;
- }
- p++;
- while( (*p != '\\') && (*p != '/') && (*p != '\0') ){ p++; }
-} }
-
-
-}
-
-
- if ( htfname ){
- (IGNORED) printf("(%s)\n", htfname);
- file= fopen(htfname,READ_TEXT_FLAGS);
- } }
- }
-#endif
-
-
- }
-
-
- if( file ){
-
-#line 15950 "./tex4ht-c.tex"
-
-int chr, delimiter, delimiter_n, line_no, digit, i, j;
-U_CHAR in[512], *in_p, * start[4], *p;
-BOOL char_on, err;
-int value;
-
-
-
-#line 16053 "./tex4ht-c.tex"
-
-max_charset_n = 256;
-charset = m_alloc(struct charset_rec, 256);
-
-
-#line 16465 "./tex4ht-c.tex"
-
-max_htf_4hf_n = 256;
-htf_4hf = m_alloc(struct htf_4hf_rec, 256);
-
-
-
-#line 15958 "./tex4ht-c.tex"
-
-err = FALSE;
-line_no = 0;
-while( TRUE ){
- line_no++;
- chr = (int) getc(file);
- if( chr == EOF ){ break; }
- if( (chr>32) && (chr<127) ){
-
-#line 15994 "./tex4ht-c.tex"
-
-delimiter = chr;
-delimiter_n = 1;
-char_on = TRUE;
-in_p = in;
-while( TRUE ) {
- chr = (int) getc(file);
- if( (chr == EOF) || (chr=='\n') ){ break; }
- if( chr == delimiter ){
- if( char_on ){ *(in_p++) = '\0'; }
- else{ start[ delimiter_n/2 ] = in_p; }
- char_on = !char_on;
- delimiter_n++;
- } else if (char_on ) {
- *(in_p++) = chr;
- }
- if( delimiter_n==8 ){ break; }
-}
-
-
- if( delimiter_n == 8 ){
- if( *in != '?' ) {
- if(
-#line 15987 "./tex4ht-c.tex"
-
- (*in != '&')
-|| (*(in+1) != '#')
-|| ( (*(in+2) != 'x') && (*(in+2) != 'X'))
-|| (*(start[1] - 2) != ';')
-
- ){ err = TRUE; }
- else {
-
-#line 16063 "./tex4ht-c.tex"
-
-value = 0;
-for( p=in+3; *p!=';'; p++){
- digit = (int) *p;
- if( (digit>='0') && (digit<='9') ){ digit -= '0'; }
- else if( (digit>='A') && (digit<='F') ){ digit -= BASE_A; }
- else if( (digit>='a') && (digit<='f') ){ digit -= BASE_a; }
- else { digit=0; err = TRUE; }
- value = 16*value + digit;
-}
-
-
- if( start[3] == (in_p-1) ){
- if( !err ){
-#line 16082 "./tex4ht-c.tex"
-
-
-#line 16112 "./tex4ht-c.tex"
-
-if( (charset_n+1) == max_charset_n){
- max_charset_n += 10;
- charset = (struct charset_rec *) r_alloc((void *) charset,
- (size_t) ((max_charset_n) * sizeof(struct charset_rec) ));
-}
-
-
-p = m_alloc(char, (int) (start[3] - start[2]) );
-(IGNORED) strcpy((char *) p, (char *) start[2] );
-i = charset_n;
-while( i-- > 0 ){
- if( charset[i].ch == value ){
- free((void *) charset[i].str);
- break;
- } else {
- if( (charset[i].ch < value)
- || ((charset[i].ch > value) && (i==0)) ){
- if( charset[i].ch < value ){ i++; }
- charset_n++;
- for( j=charset_n; j>i; j-- ){
- charset[j].ch = charset[j-1].ch;
- charset[j].str = charset[j-1].str;
- }
- break;
- } }
-}
-if(i == -1){ i = charset_n; }
-if( i==charset_n ){ charset_n++; }
-charset[i].str = p;
-charset[i].ch = value;
-
- }
- } else {
-#line 16381 "./tex4ht-c.tex"
-
-
-#line 16421 "./tex4ht-c.tex"
-
-if( (htf_4hf_n+1) == max_htf_4hf_n){
- max_htf_4hf_n += 10;
- htf_4hf = (struct htf_4hf_rec *) r_alloc((void *) htf_4hf,
- (size_t) ((max_htf_4hf_n) * sizeof(struct htf_4hf_rec) ));
-}
-p = m_alloc(char, (int) (start[3] - start[2]) );
-
-
-(IGNORED) strcpy((char *) p, (char *) start[2] );
-i = htf_4hf_n;
-while( i-- > 0 ){
- if( htf_4hf[i].ch == value ){
- free((void *) htf_4hf[i].str);
- break;
- } else {
- if( (htf_4hf[i].ch < value)
- || ((htf_4hf[i].ch > value) && (i==0)) ){
- if( htf_4hf[i].ch < value ){ i++; }
- htf_4hf_n++;
- for( j=htf_4hf_n; j>i; j-- ){
- htf_4hf[j].ch = htf_4hf[j-1].ch;
- htf_4hf[j].str = htf_4hf[j-1].str;
- htf_4hf[j].type1 = htf_4hf[j-1].type1;
- htf_4hf[j].type2 = htf_4hf[j-1].type2;
- }
- break;
-} } }
-if(i == -1){ i = htf_4hf_n; }
-if(i == htf_4hf_n){ htf_4hf_n++; }
-htf_4hf[i].str = p;
-htf_4hf[i].ch = value;
-
-#line 16431 "./tex4ht-c.tex"
-
-value = 0;
-p = start[1];
-while( *p != '\0' ){
- if( (*p < '0') || (*p > '9') ) break;
- value = value * 10 + *p - '0';
- p++;
-}
-htf_4hf[i].type1 = value;
-
-
-#line 16442 "./tex4ht-c.tex"
-
-value = 0;
-p = start[3];
-while( *p != '\0' ){
- if( (*p < '0') || (*p > '9') ) break;
- value = value * 10 + *p - '0';
- p++;
-}
-htf_4hf[i].type2 = value;
-
-
-
-
- }
- } } }
- else { err = TRUE; }
-
-#line 16020 "./tex4ht-c.tex"
-
-if( err ){
- warn_i_int(48,line_no);
- (IGNORED) printf( "%c", delimiter );
- for( p=in; p != in_p; p++ ){
- if( *p=='\0' ){
- (IGNORED) printf("%c", delimiter);
- if( p != in_p-1 ){ (IGNORED) printf(" %c", delimiter); }
- }
- else { (IGNORED) printf( "%c", *p ); }
- }
- (IGNORED) printf( "\n" );
- err = FALSE;
-}
-
-
- }
- while( (chr != EOF) && (chr!='\n') ){
- chr = (int) getc(file);
- }
- if( chr == EOF ){ break; }
-}
-
-
- put_4ht_off = 0;
- } else{ put_4ht_off = 1;
-#line 16058 "./tex4ht-c.tex"
-
-max_charset_n = 0;
-
-
-#line 16470 "./tex4ht-c.tex"
-
-max_htf_4hf_n = 0;
-
- }
-}
-
-
- while( (ch = get_char()) !=
-#line 17469 "./tex4ht-c.tex"
-
-249
- ){
-
-#line 8663 "./tex4ht-c.tex"
-
-#ifdef MAXFONTS
-if( (font_tbl_size + 1) < MAXFONTS )
-#endif
-{
- INTEGER new_font_checksum;
- int font_name_n;
- font_tbl = font_tbl_size?
- (struct font_entry *) r_alloc((void *) font_tbl,
- (size_t) ((font_tbl_size+1)
- * sizeof(struct font_entry)))
- : m_alloc(struct font_entry, 1);
- if( (version_id ==
-#line 2292 "./tex4ht-c.tex"
-
-10
-
-)
- && (ch ==
-#line 17490 "./tex4ht-c.tex"
-
-252
-
-)
- ){
-
-#line 8886 "./tex4ht-c.tex"
-
- unsigned short flags;
-new_font.num = (INTEGER) get_unt(4);
-new_font.scale = (INTEGER) get_unt(4);
-new_font.design_sz = new_font.scale;
-flags = (INTEGER) get_unt(2);
-
-#line 8913 "./tex4ht-c.tex"
-
-{ int n, family_name_n, style_name_n;
- U_CHAR *ch;
-
- font_name_n = (INTEGER) get_unt(1);
- family_name_n = (INTEGER) get_unt(1);
- style_name_n = (INTEGER) get_unt(1);
- n = font_name_n + 1;
- ch = new_font_name = m_alloc(char, n);
- while( --n ){ *ch = (int) get_unt(1); ch++; }
- *ch = '\0';
- n = family_name_n + 1;
-
- while( --n ){ (void) get_unt(1); ch++; }
- *ch = '\0';
- n = style_name_n + 1;
-
- while( --n ){ (void) get_unt(1); ch++; }
- *ch = '\0';
-}
-
-
-new_font.layout_dir = (flags &
-#line 8951 "./tex4ht-c.tex"
-
-0x0100
-
-) ? 1 : 0;
-new_font.rgba_color = (flags &
-#line 8955 "./tex4ht-c.tex"
-
-0x0200
-
-)?
- (unsigned long) get_unt(4)
- :
- 0xffffffff;
-if( flags &
-#line 8959 "./tex4ht-c.tex"
-
-0x0800
-
- ){
- int n = (INTEGER) get_unt(2);
- int i;
- for (i = 0; i < n; ++i) {
- (void) get_unt(4);
- }
- for (i = 0; i < n; ++i) {
- (void) get_int(4);
-} }
-(IGNORED) printf("(--- xdv font = %s (not implemented) ---)\n", new_font_name);
-
-#line 9077 "./tex4ht-c.tex"
-
-
-#line 9298 "./tex4ht-c.tex"
-
-{ int i;
- for( i=font_tbl_size-1; i>0; i-- )
- if( new_font.num == font_tbl[i].num ) warn_i(10); }
-
-
-
-#line 9098 "./tex4ht-c.tex"
-
-{
-
-/*
- if( font_file == NULL ){
- dump_env(); err_i_str(1,file_name);
- missing_fonts = TRUE;
- new_font.char_f = 2;
- new_font.char_l = 1;
- } else {
-*/
-
-#line 9119 "./tex4ht-c.tex"
-
-{
-
-#line 9166 "./tex4ht-c.tex"
-
-new_font.char_f = 0;
-new_font.char_l = 255;
-new_font.wtbl_n = 0;
-new_font.htbl_n = 0;
-new_font.dtbl_n = 0;
-
-
-
-
-#line 9191 "./tex4ht-c.tex"
-
-{ U_CHAR *ch, *hidp;
- int i;
- ch = new_font.char_wi = m_alloc(char, new_font.char_l
- - new_font.char_f + 1);
- hidp = new_font.char_hidp = m_alloc(char, new_font.char_l
- - new_font.char_f + 1);
- for( i = new_font.char_f; i <= new_font.char_l; i++ ){
- *(ch++) = 10;
- *(hidp++) = 26;
-} }
-
-
-
-#line 9205 "./tex4ht-c.tex"
-
-{ INTEGER *p;
- int i;
- p = new_font.wtbl = m_alloc( INTEGER, new_font.wtbl_n);
- for( i = 0; i < new_font.wtbl_n; i++ ){
- *(p++) = 600000;
-} }
-
-
-
-#line 9216 "./tex4ht-c.tex"
-
-{ INTEGER *p;
- int i;
- p = new_font.htbl = m_alloc( INTEGER, new_font.htbl_n);
- for( i = 0; i < new_font.htbl_n; i++ ){
- *(p++) = 600000;
-} }
-
-
-
-
-
-
-
-
-#line 9140 "./tex4ht-c.tex"
-
-
-#line 9151 "./tex4ht-c.tex"
-
-new_font.it = 0;
-
-
-
-#line 9156 "./tex4ht-c.tex"
-
-new_font.word_sp = 350000;
-
-#line 9752 "./tex4ht-c.tex"
-
-if( new_font.word_sp == 0 ) {
- int i;
- for( i = new_font.char_f; i <= new_font.char_l; i++ ){
- new_font.word_sp =
- ( new_font.word_sp
- +
- *(new_font.wtbl + (int)(*(new_font.char_wi + i - new_font.char_f)))
- ) / (new_font.char_f<i? 2:1);
- } }
-if( new_font.word_sp == 0 ) new_font.word_sp = MARGINSP;
-
-
-
-
-
-
-
-
-
-
-
-}
-
-
-/*
- (IGNORED) fclose(font_file);
- }
-*/
-}
-
-
-new_font_name[font_name_n] = '\0';
-new_font.name = m_alloc(char, font_name_n + 1);
-(IGNORED) strcpy((char *) new_font.name, (char *) new_font_name );
-
-#line 8781 "./tex4ht-c.tex"
-
-{ int n, i;
- for( n=0; n<font_name_n; n++ ){
- if( ( '0' <= new_font_name[n] ) && ( new_font_name[n] <= '9' )){
- break;
- }
- }
-
-#line 8803 "./tex4ht-c.tex"
-
-{ int m;
- for( m=n; m<font_name_n; m++ ){
- if( ( new_font_name[m] < '0' ) || ( new_font_name[m] > '9' )){
- n=font_name_n;
- break;
-} } }
-
-
- new_font.family_name = m_alloc(char, n + 2);
- new_font.font_size = m_alloc(char, font_name_n - n + 1 );
- for( i=0; i<n; i++ ){
- new_font.family_name[i] = new_font_name[i];
- }
- new_font.family_name[i] = '\0'; i = 0;
- while( n<font_name_n ){
- new_font.font_size[i++] = new_font_name[n++];
- }
- new_font.font_size[i] = '\0';
-}
-
-
-
-#line 9088 "./tex4ht-c.tex"
-
-new_font.mag = new_font.scale / (new_font.design_sz / 100);
-
-
-
-
-
-
- } else {
-
-#line 8697 "./tex4ht-c.tex"
-
-
-#line 8723 "./tex4ht-c.tex"
-
-switch( ch ){
- case
-#line 17451 "./tex4ht-c.tex"
-
-243
-:
- case
-#line 17454 "./tex4ht-c.tex"
-
-244
-:
- case
-#line 17457 "./tex4ht-c.tex"
-
-245
-: {
- new_font.num = (INTEGER)
- get_unt(ch -
-#line 17451 "./tex4ht-c.tex"
-
-243
- + 1); break; }
- case
-#line 17460 "./tex4ht-c.tex"
-
-246
-: {
- new_font.num = (INTEGER) get_int(4); break; }
- default: err_i(8);
-}
-
-
-new_font_checksum = (INTEGER) get_int(4);
-new_font.scale = (INTEGER) get_unt(4);
-new_font.design_sz = (INTEGER) get_unt(4);
-
-#line 8737 "./tex4ht-c.tex"
-
-{ int n, area_ln;
- U_CHAR *ch;
- area_ln = (int) get_unt(1);
- font_name_n = (int) get_unt(1);
- n = area_ln + font_name_n + 1;
- ch = new_font_name = m_alloc(char, n);
- while( --n ){ *ch = (int) get_unt(1); ch++; }
- *ch = '\0';
-}
-
-
-
-#line 8753 "./tex4ht-c.tex"
-
-
-#line 9298 "./tex4ht-c.tex"
-
-{ int i;
- for( i=font_tbl_size-1; i>0; i-- )
- if( new_font.num == font_tbl[i].num ) warn_i(10); }
-
-
-
-#line 9344 "./tex4ht-c.tex"
-
-{ FILE *font_file;
- U_CHAR file_name[256];
-
-#line 13512 "./tex4ht-c.tex"
-
-{
- font_file = NULL;
- (IGNORED) sprintf(file_name, "%s.tfm", new_font_name);
-
-#line 14971 "./tex4ht-c.tex"
-
-#ifdef KPATHSEA
-{
- U_CHAR * tfmfile;
- tfmfile = kpse_find_file (file_name, kpse_tfm_format, 0);
- if( !tfmfile ){
-#line 15026 "./tex4ht-c.tex"
-
-char s [256];
-(IGNORED) strcpy(s, "kpsewhich ");
-(IGNORED) strcat(s, file_name);
-(IGNORED) strcat(s, " > tex4ht.tmp ");
-if( system(s) == 0 ){
-
-#line 15042 "./tex4ht-c.tex"
-
-char fileaddr [256];
-int loc = 0;
-FILE* file = f_open("tex4ht.tmp", READ_TEXT_FLAGS);
-if( file ){
- while( (fileaddr[loc] = getc(file)) >=0 ){
- if( fileaddr[loc] == '\n' ){ fileaddr[loc] = '\0'; break; }
- loc++;
- }
- (IGNORED) fclose(file);
-}
-
-
- tfmfile = kpse_find_file (fileaddr, kpse_program_text_format, 0);
-}
-
- }
- if ( tfmfile ){
- (IGNORED) printf("(%s)\n", tfmfile);
- font_file = kpse_open_file (tfmfile, kpse_tfm_format);
- }
-}
-#else
-
-
-
-#line 13668 "./tex4ht-c.tex"
-
-for( cur_cache_font = cache_font;
- cur_cache_font;
- cur_cache_font = cur_cache_font->next )
- if( (font_file = search_file(file_name,
- cur_cache_font->dir,
- READ_BIN_FLAGS))
- != NULL) break;
-
-
- if( !font_file ){ int i;
- for( i = fontdir_count; i--; ){
- if( (font_file = search_file_base(file_name, fontdir[i],
- READ_BIN_FLAGS, tfm_dirs))
- != NULL ) break; }
- }
- if( !font_file ) font_file = f_open(file_name, READ_BIN_FLAGS);
- if( !font_file && dot_file )
- font_file = search_in_dot_file( 't', file_name,
- READ_BIN_FLAGS, tfm_dirs);
-
-#line 13544 "./tex4ht-c.tex"
-
-#ifdef TFMDIR
- if( !font_file )
- font_file = search_file_base(file_name, TFMDIR,
- READ_BIN_FLAGS, tfm_dirs);
-#endif
-
-
-
-#line 14988 "./tex4ht-c.tex"
-
-#endif
-
-
-}
-
-
- if( font_file == NULL ){
- dump_env(); err_i_str(1,file_name);
- missing_fonts = TRUE;
- new_font.char_f = 2;
- new_font.char_l = 1;
- } else {
-
-#line 9385 "./tex4ht-c.tex"
-
-{
-#line 9435 "./tex4ht-c.tex"
-
- INTEGER file_length;
- int header_length,
- it_correction_table_length,
- lig_kern_table_length,
- kern_table_length,
- extensible_char_table_length,
- num_font_parameters;
-
-
-
-#line 9407 "./tex4ht-c.tex"
-
-file_length = (INTEGER) fget_int(font_file,2);
-header_length = (int) fget_int(font_file,2);
-new_font.char_f = (int) fget_int(font_file,2);
-new_font.char_l = (int) fget_int(font_file,2);
-new_font.wtbl_n = (int) fget_int(font_file,2);
-new_font.htbl_n = (int) fget_int(font_file,2);
-new_font.dtbl_n = (int) fget_int(font_file,2);
-it_correction_table_length = (int) fget_int(font_file,2);
-lig_kern_table_length = (int) fget_int(font_file,2);
-kern_table_length = (int) fget_int(font_file,2);
-extensible_char_table_length = (int) fget_int(font_file,2);
-num_font_parameters = (int) fget_int(font_file,2);
-if( file_length != ( 6 + header_length
- - new_font.char_f + new_font.char_l + 1
- + new_font.wtbl_n + new_font.htbl_n
- + new_font.dtbl_n + it_correction_table_length
- + lig_kern_table_length + kern_table_length
- + extensible_char_table_length + num_font_parameters )
- ){ err_i_str(15,file_name); }
-
-
-
-#line 9480 "./tex4ht-c.tex"
-
-
-#line 9489 "./tex4ht-c.tex"
-
-{ INTEGER checksum;
- checksum = ( INTEGER) fget_int(font_file,4);
- if( checksum && new_font_checksum
- && (checksum != new_font_checksum) )
- { warn_i(16);
- (IGNORED) fprintf(stderr,"%s: %d\ndvi file: %d\n",file_name,
- checksum, new_font_checksum);
-} }
-
-
-
-#line 9509 "./tex4ht-c.tex"
-
-new_font.design_pt = ( INTEGER) fget_int(font_file,4);
-
-
-(IGNORED) fseek(font_file, (long) ((header_length - 2) * 4),
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9521 "./tex4ht-c.tex"
-
-{ U_CHAR *ch, *hidp;
- int i;
- ch = new_font.char_wi = m_alloc(char, new_font.char_l
- - new_font.char_f + 1);
- hidp = new_font.char_hidp = m_alloc(char, new_font.char_l
- - new_font.char_f + 1);
- for( i = new_font.char_f; i <= new_font.char_l; i++ ){
- *(ch++) = (int) fget_unt(font_file,1);
- *(hidp++) = (int) fget_unt(font_file,1);
- (IGNORED) fseek(font_file, 2L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-} }
-
-
-
-#line 9576 "./tex4ht-c.tex"
-
-{ INTEGER *p;
- int i;
- p = new_font.wtbl = m_alloc( INTEGER, new_font.wtbl_n);
- for( i = 0; i < new_font.wtbl_n; i++ ){
- *(p++) = ( INTEGER) fget_int(font_file,4);
-} }
-
-
-
-#line 9612 "./tex4ht-c.tex"
-
-{ INTEGER *p;
- int i;
- p = new_font.htbl = m_alloc( INTEGER, new_font.htbl_n);
- for( i = 0; i < new_font.htbl_n; i++ ){
- *(p++) = ( INTEGER) fget_int(font_file,4);
-} }
-
-
-#line 9636 "./tex4ht-c.tex"
-
-{ INTEGER *p;
- int i;
- p = new_font.dtbl = m_alloc( INTEGER, new_font.dtbl_n);
- for( i = 0; i < new_font.dtbl_n; i++ ){
- *(p++) = ( INTEGER) fget_int(font_file,4);
-} }
-
-
-
-
-#line 9659 "./tex4ht-c.tex"
-
-
-(IGNORED) fseek(font_file, (long) (it_correction_table_length * 4),
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9669 "./tex4ht-c.tex"
-
-(IGNORED) fseek(font_file, (long) (lig_kern_table_length * 4),
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9678 "./tex4ht-c.tex"
-
-
-(IGNORED) fseek(font_file, (long) (kern_table_length * 4),
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9688 "./tex4ht-c.tex"
-
-(IGNORED) fseek(font_file, (long) (extensible_char_table_length * 4),
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9703 "./tex4ht-c.tex"
-
-
-#line 9718 "./tex4ht-c.tex"
-
-new_font.it = ( INTEGER) fget_int(font_file,4);
-
-
-
-#line 9724 "./tex4ht-c.tex"
-
-new_font.word_sp = ( INTEGER) fget_int(font_file,4);
-
-#line 9752 "./tex4ht-c.tex"
-
-if( new_font.word_sp == 0 ) {
- int i;
- for( i = new_font.char_f; i <= new_font.char_l; i++ ){
- new_font.word_sp =
- ( new_font.word_sp
- +
- *(new_font.wtbl + (int)(*(new_font.char_wi + i - new_font.char_f)))
- ) / (new_font.char_f<i? 2:1);
- } }
-if( new_font.word_sp == 0 ) new_font.word_sp = MARGINSP;
-
-
-
-
-
-#line 9768 "./tex4ht-c.tex"
-
-(IGNORED) fseek(font_file, 4L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9772 "./tex4ht-c.tex"
-
-(IGNORED) fseek(font_file, 4L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-
-#line 9161 "./tex4ht-c.tex"
-
-new_font.ex = 450000;
-
-
-#line 9778 "./tex4ht-c.tex"
-
-new_font.ex = (INTEGER) fget_int(font_file,4);
-
-
-
-#line 9784 "./tex4ht-c.tex"
-
-
-
-
-
-#line 9790 "./tex4ht-c.tex"
-
-
-
-
-
-
-}
-
-
- (IGNORED) fclose(font_file);
-} }
-
-
-new_font_name[font_name_n] = '\0';
-new_font.name = m_alloc(char, font_name_n + 1);
-(IGNORED) strcpy((char *) new_font.name, (char *) new_font_name );
-
-#line 8781 "./tex4ht-c.tex"
-
-{ int n, i;
- for( n=0; n<font_name_n; n++ ){
- if( ( '0' <= new_font_name[n] ) && ( new_font_name[n] <= '9' )){
- break;
- }
- }
-
-#line 8803 "./tex4ht-c.tex"
-
-{ int m;
- for( m=n; m<font_name_n; m++ ){
- if( ( new_font_name[m] < '0' ) || ( new_font_name[m] > '9' )){
- n=font_name_n;
- break;
-} } }
-
-
- new_font.family_name = m_alloc(char, n + 2);
- new_font.font_size = m_alloc(char, font_name_n - n + 1 );
- for( i=0; i<n; i++ ){
- new_font.family_name[i] = new_font_name[i];
- }
- new_font.family_name[i] = '\0'; i = 0;
- while( n<font_name_n ){
- new_font.font_size[i++] = new_font_name[n++];
- }
- new_font.font_size[i] = '\0';
-}
-
-
-
-#line 8768 "./tex4ht-c.tex"
-
-new_font.mag = new_font.scale / (new_font.design_sz / 100);
-
-
-
-
-
-
- }
-
-#line 9994 "./tex4ht-c.tex"
-
-{ U_CHAR str[256];
- int i, design_n, n_gif;
-
-#line 10089 "./tex4ht-c.tex"
-
-int loopBound = 0;
-U_CHAR loopName[256];
-loopName[0] = '\0';
-
-
- n_gif = new_font.char_l - new_font.char_f + 1;
- new_font.ch255 = 0;
-
-#line 10024 "./tex4ht-c.tex"
-
-{ int n_gif_bytes;
- n_gif_bytes = (n_gif + 7) / 8;
- new_font.gif_on = m_alloc(char, n_gif_bytes );
- new_font.ch_str = m_alloc(char, n_gif_bytes );
-
-#line 12768 "./tex4ht-c.tex"
-
-new_font.math_closing = m_alloc(char, n_gif_bytes );
-new_font.math = m_alloc(char, n_gif );
-
-
- for( i=n_gif_bytes; i--; ) {
-
-#line 12774 "./tex4ht-c.tex"
-
-new_font.math_closing[i] =
-
- new_font.ch_str[i] = new_font.gif_on[i] = 0;
- }
- new_font.gif1 = m_alloc(unsigned char, n_gif );
- for( i=n_gif; i--; ) {
-
-#line 12778 "./tex4ht-c.tex"
-
-new_font.math[i] =
-
- new_font.gif1[i] = 0;
-} }
-
-
-
-#line 12078 "./tex4ht-c.tex"
-
-new_font.accent = m_alloc(unsigned char, n_gif );
-new_font.accented = m_alloc(unsigned char, n_gif );
-new_font.accent_array = (unsigned int *) 0;
-new_font.accented_array = (unsigned int *) 0;
-new_font.accent_N = new_font.accented_N = 0;
-for( i=n_gif; i--; ) {
- new_font.accent[i] = new_font.accented[i] = 0;
-}
-
-
- new_font.ch = m_alloc(unsigned char, n_gif );
-
-#line 10039 "./tex4ht-c.tex"
-
-for( i = new_font.char_f; i <= new_font.char_l ; i++ ){
- new_font.ch[i - new_font.char_f] =
- (char) (((31<i) && (i<128))? i : ignore_ch);
-}
-
-
- new_font.str = m_alloc(unsigned char*, n_gif);
- new_font.str[0] = &null_str;
- design_n = 0;
-
-#line 10053 "./tex4ht-c.tex"
-
-{ char search_font_name [256];
- (IGNORED) strcpy((char *) search_font_name, (char *) new_font.name);
- while( 1 ){ BOOL flag;
-
-#line 10095 "./tex4ht-c.tex"
-
-if( eq_str( new_font_name, loopName) ){
- U_CHAR name[256];
- (IGNORED) sprintf(name, "%s.htf", new_font_name);
- err_i_str(1, name);
-} else {
- (IGNORED) strcpy((char *) loopName, (char *) new_font_name);
-}
-loopBound++;
-if( loopBound > 10 ){
- U_CHAR name[256];
- (IGNORED) sprintf(name, "%s.htf", new_font_name);
- err_i_str(1, name);
-}
-
-
- flag = TRUE;
- for( ; font_name_n; font_name_n-- ){ FILE* file;
- int char_f, char_l;
- new_font_name[font_name_n] = '\0';
-
-#line 13828 "./tex4ht-c.tex"
-
-{ U_CHAR name[256];
- (IGNORED) sprintf(name, "%s.htf", new_font_name);
-
-#line 13837 "./tex4ht-c.tex"
-
- file = NULL;
-
-#line 13905 "./tex4ht-c.tex"
-
-{
- struct htf_com_rec *p;
- p = htf_font_dir;
- while( p ){
- file = search_file_base(name, p->name, READ_TEXT_FLAGS, htf_dirs);
- if( file ){
-#ifndef KPATHSEA
- tex4ht_fls = TRUE;
-#endif
- break;
- }
- p = p->next;
- }
-}
-
-
- if( !file ){
- if( ((file = f_open(name, READ_TEXT_FLAGS)) == NULL) && dot_file )
- file = search_in_dot_file( 'i', name, READ_TEXT_FLAGS, htf_dirs);
-#ifdef HTFDIR
- if( !file ) file = search_file_base(name, HTFDIR,
- READ_TEXT_FLAGS, htf_dirs);
-#endif
-
-#line 15073 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
- if( !file ){ U_CHAR * htfname;
- htfname= kpse_find_file (name, kpse_program_text_format, 0);
- if ( htfname ){
-
-#line 14729 "./tex4ht-c.tex"
-
-{ U_CHAR * head, * tail, *p;
- int n;
-
-#line 14739 "./tex4ht-c.tex"
-
-n = (int) strlen((char *) htfname);
-tail = head = m_alloc(char, n+1);
-(IGNORED) strcpy((char *) head, (char *) htfname);
-while( n>11 ){
- if( (*tail=='\\') || (*tail=='/') ){
- if( (*tail == *(tail+9)) && (*(tail+1) == 'h')
- && (*(tail+2) == 't') && (*(tail+3) == '-')
- && (*(tail+4) == 'f') && (*(tail+5) == 'o')
- && (*(tail+6) == 'n') && (*(tail+7) == 't')
- && (*(tail+8) == 's') ){
- p = tail + 9; *(tail + 10) = '\0'; tail += 11;
- while( (*tail != *p) && (*tail != '\0') ){ tail++; }
- break;
- } }
- tail++; n--;
-}
-
-
- htfname = (U_CHAR *) 0;
-
-#line 14761 "./tex4ht-c.tex"
-
-for( n = 0 ; (n < cardinality) && !htfname ; n++){
- p = tail;
- while( *p != '\0' ){
- char * s, *nm;
- s = m_alloc(char, (int) strlen((char *) head ) +
- (int) strlen((char *) fontset[n] ) +
- (int) strlen((char *) p ) + 1);
- (IGNORED) strcpy((char *) s, (char *) head);
- (IGNORED) strcat((char *) s, (char *) fontset[n]);
- (IGNORED) strcat((char *) s, (char *) p);
- nm = kpse_find_file (s, kpse_program_text_format, 0);
- free((void *) s);
- if ( nm ){
- htfname = nm; break;
- }
- p++;
- while( (*p != '\\') && (*p != '/') && (*p != '\0') ){ p++; }
-} }
-
-
-}
-
-
- if ( htfname ){
- (IGNORED) printf("(%s)\n", htfname);
- file= fopen(htfname,READ_TEXT_FLAGS);
- } }
- }
-#endif
-
-
- }
-
-
- if( file ){
-#line 8827 "./tex4ht-c.tex"
-
-if( (strlen((char *) new_font.family_name) +
- strlen((char *) new_font.font_size) + 4) == strlen((char *) name) ){
- new_font.family_name = (char *) r_alloc((void *) new_font.family_name,
- (size_t) (strlen((char *) name)+1));
- (IGNORED) strcat((char *) new_font.family_name, (char *) new_font.font_size);
- *(new_font.font_size)='\0';
-}
-
- }
-}
-
-
- if( file != NULL){
- INTEGER x_char_l;
-
-#line 10580 "./tex4ht-c.tex"
-
-x_char_l =
- get_html_file_id(file, new_font.char_f, new_font.char_l, 19);
-if( x_char_l != HTF_ALIAS) {
- char_f = (int) (x_char_l / 1000.0 + 0.5) + new_font.char_f;
- x_char_l -= (char_f-new_font.char_f) * 1000 - new_font.char_l;
- char_l = (int) x_char_l;
-}
-
-
- if( x_char_l == HTF_ALIAS) {
-
-#line 10166 "./tex4ht-c.tex"
-
-{ int chr;
- font_name_n=0;
- while( (chr = get_html_ch(file)) != '\n' ){
- if( chr != ' ' ) search_font_name[font_name_n++] = chr;
- }
- search_font_name[font_name_n] = '\0';
- if( eq_str( search_font_name, new_font_name) ){ err_i_str(20, new_font_name); }
- (IGNORED) printf("Searching `%s.htf' for `%s.htf'\n",
- search_font_name, new_font.name);
- htf_to_lg(html_font, new_font_name, fonts_n, file);
- new_font_name = (char *) r_alloc((void *) new_font_name,
- (size_t) (font_name_n+1));
- (IGNORED) strcpy((char *) new_font_name, (char *) search_font_name);
- font_name_n = strlen((char *) new_font_name);
-}
-
-
- (IGNORED) fclose(file); flag = FALSE; break;
- }
-
-#line 10283 "./tex4ht-c.tex"
-
-if( char_f <= new_font.char_l ){ U_CHAR del;
- int j, n;
-
-#line 10297 "./tex4ht-c.tex"
-
-while( char_f < new_font.char_f ){
- while( get_html_ch(file) != '\n' );
- char_f++; }
-
-
- n = ((char_l < new_font.char_l)? char_l : new_font.char_l)
- - char_f + 1;
- for( i = char_f - new_font.char_f; i < n; i++ ){
-
-#line 10312 "./tex4ht-c.tex"
-
-{ int indirect_ch, base=0, value=0, digit, ch1;
- indirect_ch = 0;
- del = get_html_ch(file); j=0;
- while( (str[j++] = get_html_ch(file)) != del )
- {
-#line 10346 "./tex4ht-c.tex"
-
-if( (digit=str[j-1]) == '\\' )
- if( (indirect_ch = !indirect_ch) != 0) {
- switch( value=get_html_ch(file) ){
- case 'x': { base = 16; value = 0; j--; break; }
- case 'o': { base = 8; value = 0; j--; break; }
- default: {
- if( (value < '0') || (value > '9') ) {
- indirect_ch = !indirect_ch; str[j-1] = value;
- } else { value -= '0'; base = 10; j--; }
- } } }
- else{ if( value>255 ){
- warn_i_int(28,value);
- value = 32; dump_htf( file );
- }
- str[j-1] = value;
- }
-else if ( indirect_ch ){
- j--; digit -= (digit>'9')? 'A'-10 : '0';
- if( (digit<0) || (digit>=base) ){
- warn_i_int(29, str[j]);
- digit = 0; dump_htf( file );
- }
- value = value*base + digit;
-} else if ( str[j-1]==10 ){
- dump_htf( file );
- err_i_int(48, i+1);
-}
-
- };
- str[j-1] = '\0';
- while( get_html_ch(file) != del );
- ch1 = 0;
- while( ((ch = (int) get_html_ch(file)) != del) ){
- if( (ch < '0') || (ch > '9') ) break;
- ch1 = ch1 * 10 + ch - '0'; }
-
-#line 16480 "./tex4ht-c.tex"
-
-if(
- (*str == '&')
- && (*(str+1) == '#')
- && ( (*(str+2) == 'x') || (*(str+2) == 'X'))
- && (*(str + strlen((char *) str) - 1) == ';')
-) {
- char* p;
- int value = 0;
- BOOL err = FALSE;
- for( p=str+3; *p!=';'; p++){
- int digit = (int) *p;
- if( (digit>='0') && (digit<='9') ){ digit -= '0'; }
- else if( (digit>='A') && (digit<='F') ){ digit -= BASE_A; }
- else if( (digit>='a') && (digit<='f') ){ digit -= BASE_a; }
- else { digit=0; err = TRUE; }
- value = 16*value + digit;
- }
- if( !err ){
-
-#line 16518 "./tex4ht-c.tex"
-
- int bottom, mid, top;
- BOOL found=FALSE;
-bottom = 0; top = htf_4hf_n;
-while( !found ){
- mid = (bottom + top) / 2;
- if( value == htf_4hf[mid].ch ){
-
-#line 16504 "./tex4ht-c.tex"
-
-if( htf_4hf[mid].type1 == ch1 ){
- ch1 = htf_4hf[mid].type2;
- (IGNORED) strcpy((char *) str, (char *) htf_4hf[mid].str );
-}
-
-
- found = TRUE;
- } else if( value < htf_4hf[mid].ch ){
- if( bottom == top ){ break; }
- top = mid;
- }
- else {
- if ( bottom < mid ){ bottom = mid; }
- else if ( bottom<top ){ bottom++; }
- else{ break; }
- }
-}
-
-
-
-} }
-
-
- new_font.gif1[i] = ch1 % 256;
- do{
- if( (ch = get_html_ch(file)) == del ){
-
-#line 12090 "./tex4ht-c.tex"
-
-ch1 = 0;
-while( ((ch = (int) get_html_ch(file)) != del) ){
- if( (ch < '0') || (ch > '9') ){ warn_i_int(48,i); break; }
- ch1 = ch1 * 10 + ch - '0'; }
-new_font.accent_array = new_font.accent_N++?
- (unsigned int *) r_alloc((void *) new_font.accent_array,
- (size_t) (new_font.accent_N * sizeof(unsigned int)))
- : m_alloc(unsigned int, 1);
-new_font.accent_array[new_font.accent_N - 1] = ch1;
-new_font.accent[i] = new_font.accent_N;
-
- break;
- }
- } while( ch != '\n' );
- if( ch != '\n' ){
- do{
- if( (ch = get_html_ch(file)) == del ){
-
-#line 12104 "./tex4ht-c.tex"
-
-ch1 = 0;
-while( ((ch = (int) get_html_ch(file)) != del) ){
- if( (ch < '0') || (ch > '9') ){ warn_i_int(48,i); break; }
- ch1 = ch1 * 10 + ch - '0'; }
-new_font.accented_array = new_font.accented_N++?
- (unsigned int *) r_alloc((void *) new_font.accented_array,
- (size_t) (new_font.accented_N * sizeof(unsigned int)))
- : m_alloc(unsigned int, 1);
-new_font.accented_array[new_font.accented_N - 1] = ch1;
-new_font.accented[i] = new_font.accented_N;
-
- break;
- }
- } while( ch != '\n' );
- }
- if( ch != '\n' )
- { while( get_html_ch(file) != '\n' ); }
-}
-
-
-
-#line 10389 "./tex4ht-c.tex"
-
-add_bit( new_font.ch_str, i, j!=2 );
-switch( j ){
- case 1: { new_font.ch[i] = 0; break; }
- case 2: { new_font.ch[i] = *str; break; }
- default: { unsigned U_CHAR *p;
- new_font.str[design_n] = p = m_alloc(unsigned char, j);
- if( design_n>255 ){ design_n--; warn_i(35);}
- if( i==255 ){
- if( design_n == 255 ){
- new_font.ch[i] = 0; new_font.ch255 = 1;
- } else { new_font.ch[i] = ++design_n; }
- } else { new_font.ch[i] = ++design_n; }
- while( j-- ) p[j] = str[j];
-} }
-
- }
-
-#line 10303 "./tex4ht-c.tex"
-
-while( char_l > new_font.char_l ){
- while( get_html_ch(file) != '\n' );
- char_l--; }
-
-
-}
-
-
-
-#line 10591 "./tex4ht-c.tex"
-
-(void) get_html_file_id(file, new_font.char_f, new_font.char_l, 18);
-
-
- htf_to_lg(html_font, new_font_name, fonts_n, file);
-
-#line 10499 "./tex4ht-c.tex"
-
-if( dump_htf_files ){
- dump_htf_files++; dump_htf( file ); dump_htf_files--;
-}
-
-
- (IGNORED) fclose(file); break;
- } }
- if( flag ){ break; }
- }
- if( font_name_n == 0 ){
- if( errCode == 0 ){ errCode= 21; }
- warn_i_str(21,search_font_name);
- (IGNORED) fprintf(stderr,
- "%d--%d)\n", new_font.char_f, new_font.char_l);
- dump_env();
- } else {
-#line 10505 "./tex4ht-c.tex"
-
-if( dump_env_files ){ dump_env(); }
-
- }
-}
-
-
- new_font.str = (unsigned U_CHAR **) r_alloc((void *) new_font.str,
- (size_t) ( (design_n?design_n:1) * sizeof(char *)) );
-
-#line 10231 "./tex4ht-c.tex"
-
-for( i = fonts_n; i--; )
- if( eq_str(html_font[i].name, new_font_name) ){ int k;
- k = html_font[i].i;
- free((void *) new_font.gif1 ); new_font.gif1= font_tbl[ k ].gif1;
- free((void *) new_font.ch ); new_font.ch = font_tbl[ k ].ch;
- free((void *) new_font.str ); new_font.str = font_tbl[ k ].str;
- free((void *) new_font.ch_str );
- new_font.ch_str = font_tbl[ k ].ch_str;
-
-#line 12782 "./tex4ht-c.tex"
-
-free((void *) new_font.math_closing );
- new_font.math_closing = font_tbl[ k ].math_closing;
-free((void *) new_font.math );
- new_font.math = font_tbl[ k ].math;
-
-
- break; }
-if( i < 0 ){
-#line 10246 "./tex4ht-c.tex"
-
-html_font = fonts_n? (struct html_font_rec *) r_alloc((void *) html_font,
- (size_t) ((fonts_n+1) * sizeof(struct html_font_rec) ))
- : m_alloc(struct html_font_rec, 1);
-html_font[fonts_n].name = m_alloc(char, font_name_n + 1);
-(IGNORED) strcpy((char *) html_font[fonts_n].name, (char *) new_font_name);
-html_font[fonts_n].i = font_tbl_size;
-fonts_n++;
-
- }
-
-
-}
-
-
-
-#line 11875 "./tex4ht-c.tex"
-
-{ static struct css_ext_rec * search_css_ext;
- for( search_css_ext = css_ext;
- search_css_ext != (struct css_ext_rec *) 0;
- search_css_ext = search_css_ext->next ){
- int css_name_n = (int) strlen((char *) new_font.name );
- char * css_file_name = m_alloc(char, css_name_n + 1);
- (IGNORED) strcpy((char *) css_file_name, (char *) new_font.name);
- for( ; css_name_n; css_name_n-- ){
- FILE* file;
- css_file_name[css_name_n] = '\0';
-
-#line 11892 "./tex4ht-c.tex"
-
-{ U_CHAR name[256];
- (IGNORED) sprintf(name, "%s.%s", css_file_name,
- search_css_ext->name);
-
-#line 13837 "./tex4ht-c.tex"
-
- file = NULL;
-
-#line 13905 "./tex4ht-c.tex"
-
-{
- struct htf_com_rec *p;
- p = htf_font_dir;
- while( p ){
- file = search_file_base(name, p->name, READ_TEXT_FLAGS, htf_dirs);
- if( file ){
-#ifndef KPATHSEA
- tex4ht_fls = TRUE;
-#endif
- break;
- }
- p = p->next;
- }
-}
-
-
- if( !file ){
- if( ((file = f_open(name, READ_TEXT_FLAGS)) == NULL) && dot_file )
- file = search_in_dot_file( 'i', name, READ_TEXT_FLAGS, htf_dirs);
-#ifdef HTFDIR
- if( !file ) file = search_file_base(name, HTFDIR,
- READ_TEXT_FLAGS, htf_dirs);
-#endif
-
-#line 15073 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
- if( !file ){ U_CHAR * htfname;
- htfname= kpse_find_file (name, kpse_program_text_format, 0);
- if ( htfname ){
-
-#line 14729 "./tex4ht-c.tex"
-
-{ U_CHAR * head, * tail, *p;
- int n;
-
-#line 14739 "./tex4ht-c.tex"
-
-n = (int) strlen((char *) htfname);
-tail = head = m_alloc(char, n+1);
-(IGNORED) strcpy((char *) head, (char *) htfname);
-while( n>11 ){
- if( (*tail=='\\') || (*tail=='/') ){
- if( (*tail == *(tail+9)) && (*(tail+1) == 'h')
- && (*(tail+2) == 't') && (*(tail+3) == '-')
- && (*(tail+4) == 'f') && (*(tail+5) == 'o')
- && (*(tail+6) == 'n') && (*(tail+7) == 't')
- && (*(tail+8) == 's') ){
- p = tail + 9; *(tail + 10) = '\0'; tail += 11;
- while( (*tail != *p) && (*tail != '\0') ){ tail++; }
- break;
- } }
- tail++; n--;
-}
-
-
- htfname = (U_CHAR *) 0;
-
-#line 14761 "./tex4ht-c.tex"
-
-for( n = 0 ; (n < cardinality) && !htfname ; n++){
- p = tail;
- while( *p != '\0' ){
- char * s, *nm;
- s = m_alloc(char, (int) strlen((char *) head ) +
- (int) strlen((char *) fontset[n] ) +
- (int) strlen((char *) p ) + 1);
- (IGNORED) strcpy((char *) s, (char *) head);
- (IGNORED) strcat((char *) s, (char *) fontset[n]);
- (IGNORED) strcat((char *) s, (char *) p);
- nm = kpse_find_file (s, kpse_program_text_format, 0);
- free((void *) s);
- if ( nm ){
- htfname = nm; break;
- }
- p++;
- while( (*p != '\\') && (*p != '/') && (*p != '\0') ){ p++; }
-} }
-
-
-}
-
-
- if ( htfname ){
- (IGNORED) printf("(%s)\n", htfname);
- file= fopen(htfname,READ_TEXT_FLAGS);
- } }
- }
-#endif
-
-
- }
-
-
- if( file != NULL ){
-
-#line 11913 "./tex4ht-c.tex"
-
-
-#line 11961 "./tex4ht-c.tex"
-
-BOOL is_visited = FALSE;
-struct visited_file_rec * v = visited_file;
-while( v != (struct visited_file_rec *) 0 ){
- if( eq_str(v->name, name) ){
- is_visited = TRUE; break;
- }
- v = v->next;
-}
-
-
-if( !is_visited ){
-
-#line 11953 "./tex4ht-c.tex"
-
-struct visited_file_rec * v = m_alloc(struct visited_file_rec, 1);
-v->name = m_alloc(char, (int) strlen((char *) name ) + 1 );
-(IGNORED) strcpy((char *) v->name, (char *) name);
-v->next = visited_file;
-visited_file = v;
-
-
- while( 1 ){
- int ch;
- do{
- ch = (int) getc(file);
- } while ( (ch == ' ') || (ch == '\n') || (ch == '\t') );
- if( ch == EOF ){ break; }
- do{
- (void) putc( ch, log_file );
- ch = (int) getc(file);
- } while ( (ch != '\n') && (ch != EOF) );
- (void) putc( '\n', log_file );
- if( ch == EOF ){ break; }
-} }
-
-
- (IGNORED) fclose(file); break;
- }
-}
-
-
- }
- free((void *) css_file_name);
-} }
-
-
- free((void *) new_font_name); font_tbl_size++;
-}
-#ifdef MAXFONTS
- else err_i_int(17, MAXFONTS);
-#endif
-
-
- }
-
-#line 11943 "./tex4ht-c.tex"
-
-while( visited_file != (struct visited_file_rec *) 0 ){
- struct visited_file_rec * v = visited_file;
- visited_file = visited_file->next;
- free((void *) v->name);
- free((void *) v);
-}
-
-
-#line 14698 "./tex4ht-c.tex"
-
-
-#ifdef KPATHSEA
-if( export_str_chars ){
- free((void *) export_str_chars);
- free((void *) fontset);
-}
-#endif
-
-
-#line 16411 "./tex4ht-c.tex"
-
-for( i = 0; i<htf_4hf_n; i++){
- free((void *) htf_4hf[i].str);
-}
-free((void *) htf_4hf);
-
-
- if( missing_fonts ) err_i(14);
-#ifndef KPATHSEA
-
-#line 14342 "./tex4ht-c.tex"
-
-if( cache_files != (FILE *) 0 ){ (IGNORED) fclose(cache_files); }
-
-
-
-#line 14105 "./tex4ht-c.tex"
-
-if( tex4ht_fls ){
- FILE *in_file, *out_file;
- U_CHAR temp_file[256];
-
-#line 14126 "./tex4ht-c.tex"
-
-(IGNORED) strcpy((char *) temp_file, (char *) job_name);
-temp_file[job_name_n] = '\0';
-temp_file[job_name_n-1] = 'p';
-temp_file[job_name_n-2] = 'm';
-temp_file[job_name_n-3] = 't';
-
-
-
-#line 14222 "./tex4ht-c.tex"
-
-if( (out_file = fopen(temp_file, WRITE_TEXT_FLAGS)) == NULL )
-{ bad_in_file(temp_file);
-} else {
- if( (in_file = fopen(tex4ht_fls_name, READ_TEXT_FLAGS)) != NULL ){
- int ch;
- while( (ch = getc(in_file)) != EOF ) {
- (IGNORED) putc( ch, out_file );
- }
- (IGNORED) fclose(in_file);
- }
- (IGNORED) fclose(out_file);
-}
-
-
- if( (out_file = fopen(tex4ht_fls_name, WRITE_TEXT_FLAGS)) == NULL )
- { bad_in_file(tex4ht_fls_name);
- } else {
- if( (in_file = fopen(temp_file, READ_TEXT_FLAGS)) != NULL ){
-
-#line 14238 "./tex4ht-c.tex"
-
- U_CHAR dir[255], prev_dir[255], file[255], *p;
- int ch;
- BOOL is_dir;
- struct cache_file_rec *file_rec, *prev_file_rec;
-cur_cache_font = cache_font;
-ch = 'n'; prev_dir[0] = '\0';
-while( ch != EOF ){
- ch = getc(in_file);
- is_dir = (ch == ' ');
- p = is_dir? dir : file;
- while( ch != '\n' ) {
- if( ch == EOF ) break;
- if( ch != ' ' ) { *p++ = ch; }
- ch = getc(in_file);
- }
- *p = '\0';
- if( is_dir && (dir[0] != '\0') ){
-
-#line 14268 "./tex4ht-c.tex"
-
-while( cur_cache_font != (struct cache_font_rec *)0 ){
- if( gt_str(dir,cur_cache_font->dir) ){
-
-#line 14278 "./tex4ht-c.tex"
-
-file_rec = cur_cache_font->cache_file;
-if( file_rec ){
- if( !eq_str( prev_dir, cur_cache_font->dir) ){
- (IGNORED) fprintf(out_file, " %s\n", cur_cache_font->dir);
- (IGNORED) strcpy((char *) prev_dir, (char *) dir);
- }
- cur_cache_font->cache_file = (struct cache_file_rec *) 0;
- while( file_rec ) {
- prev_file_rec = file_rec;
- file_rec = file_rec->next;
- (IGNORED) fprintf(out_file, "%s\n", prev_file_rec->file);
- free((void *) prev_file_rec );
- }
-}
-
-
- } else break;
- cur_cache_font = cur_cache_font->next;
-}
-
-
- (IGNORED) fprintf(out_file," %s\n", dir);
- (IGNORED) strcpy((char *) prev_dir, (char *) dir);
- } else if( !is_dir && (file[0] != '\0') ){
-
-#line 14298 "./tex4ht-c.tex"
-
-if( cur_cache_font != (struct cache_font_rec *)0 ){
- if( eq_str(dir,cur_cache_font->dir) ){
- file_rec = cur_cache_font->cache_file;
- while( file_rec ) {
- if( gt_str(file_rec->file,file) ){ break; }
- else if( gt_str(file,file_rec->file) ){
- (IGNORED) fprintf(out_file, "%s\n", file_rec->file);
- }
- prev_file_rec = file_rec;
- file_rec = file_rec->next;
- free((void *) prev_file_rec );
- }
- cur_cache_font->cache_file = file_rec;
- }
-}
-
-
- (IGNORED) fprintf(out_file,"%s\n", file);
- }
-}
-
-#line 14318 "./tex4ht-c.tex"
-
-while( cur_cache_font != (struct cache_font_rec *)0 ){
-
-#line 14278 "./tex4ht-c.tex"
-
-file_rec = cur_cache_font->cache_file;
-if( file_rec ){
- if( !eq_str( prev_dir, cur_cache_font->dir) ){
- (IGNORED) fprintf(out_file, " %s\n", cur_cache_font->dir);
- (IGNORED) strcpy((char *) prev_dir, (char *) dir);
- }
- cur_cache_font->cache_file = (struct cache_file_rec *) 0;
- while( file_rec ) {
- prev_file_rec = file_rec;
- file_rec = file_rec->next;
- (IGNORED) fprintf(out_file, "%s\n", prev_file_rec->file);
- free((void *) prev_file_rec );
- }
-}
-
-
- cur_cache_font = cur_cache_font->next;
-}
-
-
-
-
- (IGNORED) fclose(in_file);
- }
- (IGNORED) fclose(out_file);
-} }
-
-
-#endif
-
-#line 10265 "./tex4ht-c.tex"
-
-if( html_font ){
- while( fonts_n-- ) free((void *) html_font[fonts_n].name);
- free((void *) html_font );
-}
-
-
-#line 13716 "./tex4ht-c.tex"
-
-while( (cur_cache_font = cache_font) != (struct cache_font_rec *)0 ){
- cache_font = cache_font->next;
- free((void *) cur_cache_font->dir );
- free((void *) cur_cache_font ); }
-
-
-}
-
-
- (IGNORED) fclose(dot_file);
-}
-
-#line 2268 "./tex4ht-c.tex"
-
-(IGNORED) fseek(dvi_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-ch = get_noop();
-if( ch !=
-#line 17475 "./tex4ht-c.tex"
-
-247
- ) bad_dvi;
-if( ((int) get_char()) != version_id ) bad_dvi;
-(void) get_unt(4);
-(void) get_unt(4);
- (void) get_unt(4);
-for( i= get_char(); i>0; i-- ) ch = get_char();
-
-
-
-#line 2318 "./tex4ht-c.tex"
-
-{
- dis_pages = unread_pages;
- while( unread_pages-- ){
- (IGNORED) printf("[%d", dis_pages - unread_pages);
-
-#line 2343 "./tex4ht-c.tex"
-
-x_val = dx_1 = dx_2 = 0; max_x_val = -10000;
-y_val = max_y_val = prev_y_val = dy_1 = dy_2 = 0;
-
-
- if( get_noop() !=
-#line 17320 "./tex4ht-c.tex"
-
-139
- ) bad_dvi;
- for( i = 1; i<45; i++ )
- if( get_char() == EOF ) bad_dvi;
- while( (ch = get_char()) !=
-#line 17323 "./tex4ht-c.tex"
-
-140
- ){
-
-#line 2930 "./tex4ht-c.tex"
-
-{ register int ch_1;
- ch_1 = ch;
-
-#line 6462 "./tex4ht-c.tex"
-
-if( stack[stack_n].halign_on )
-{
- switch( ch ){
- case
-#line 17374 "./tex4ht-c.tex"
-
-157
-: { ; }
- case
-#line 17377 "./tex4ht-c.tex"
-
-158
-: { ; }
- case
-#line 17380 "./tex4ht-c.tex"
-
-159
-: { ; }
- case
-#line 17383 "./tex4ht-c.tex"
-
-160
-: { ; }
- case
-#line 17386 "./tex4ht-c.tex"
-
-161
-: { ; }
- case
-#line 17389 "./tex4ht-c.tex"
-
-162
-: { ; }
- case
-#line 17392 "./tex4ht-c.tex"
-
-163
-: { ; }
- case
-#line 17395 "./tex4ht-c.tex"
-
-164
-: { ; }
- case
-#line 17398 "./tex4ht-c.tex"
-
-165
-: { ; }
- case
-#line 17401 "./tex4ht-c.tex"
-
-166
-: { ; }
- case
-#line 17404 "./tex4ht-c.tex"
-
-167
-: { ; }
- case
-#line 17407 "./tex4ht-c.tex"
-
-168
-: { ; }
- case
-#line 17410 "./tex4ht-c.tex"
-
-169
-: { ; }
- case
-#line 17413 "./tex4ht-c.tex"
-
-170
-: { ; }
- case
-#line 17309 "./tex4ht-c.tex"
-
-132
-: { ; }
- case
-#line 17314 "./tex4ht-c.tex"
-
-137
-: { ; }
- case
-#line 17429 "./tex4ht-c.tex"
-
-235
-: { ; }
- case
-#line 17432 "./tex4ht-c.tex"
-
-236
-: { ; }
- case
-#line 17435 "./tex4ht-c.tex"
-
-237
-: { ; }
- case
-#line 17438 "./tex4ht-c.tex"
-
-238
-: { ; }
- case
-#line 17326 "./tex4ht-c.tex"
-
-141
-:
- { break; }
- default: {
-#line 6498 "./tex4ht-c.tex"
-
-print_f( stack[stack_n].halign[1]->str );
-stack[stack_n].halign_on = FALSE;
-
- }
-} }
-
-
-
-#line 3197 "./tex4ht-c.tex"
-
-if( (ch > 127) && (ch < 137) && (ch !=
-#line 17309 "./tex4ht-c.tex"
-
-132
-) ){
- ch_1 = (int) get_unt( (ch - (ch>132)) % 4 +1);
-}
-
-
-
-#line 7655 "./tex4ht-c.tex"
-
-if( group_dvi ){
- if( ( ch < 132 ) ||
- ( (ch > 127) && (ch < 137) && (ch !=
-#line 17309 "./tex4ht-c.tex"
-
-132
- ) )
- ){
- ch_id++;
- back_token = back_insert ( back_token, ch_id);
-} }
-
-
-
-#line 2626 "./tex4ht-c.tex"
-
-if( trace_dvi_C && !in_trace_char ){
- if( (ch < 137) && (ch !=
-#line 17309 "./tex4ht-c.tex"
-
-132
-) ){
- in_trace_char = TRUE; block_start = TRUE;
-} }
-else if ( in_trace_char ){
- if( !trace_dvi_C || (ch > 136) || (ch ==
-#line 17309 "./tex4ht-c.tex"
-
-132
-) ){
- in_trace_char = FALSE;
-} }
-
-
-
-#line 2587 "./tex4ht-c.tex"
-
-if( span_on && !in_span_ch && !ignore_chs && !in_accenting
- && (default_font != font_tbl[cur_fnt].num) ){
- if( (ch < 137) && (ch !=
-#line 17309 "./tex4ht-c.tex"
-
-132
-) ){
- in_span_ch = TRUE; start_span = TRUE;
-} }
-else if ( in_span_ch ){
- if( !span_on ||
- (ch ==
-#line 17309 "./tex4ht-c.tex"
-
-132
-) ||
- ((136 < ch) && (ch <
-#line 17332 "./tex4ht-c.tex"
-
-143
-)) ||
- (ch >
-#line 17371 "./tex4ht-c.tex"
-
-156
-)
- ){
- in_span_ch = FALSE;
- if( *end_span[0] ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
- }
-} }
-
-
-
-#line 12212 "./tex4ht-c.tex"
-
-if( in_accenting ){
-
-#line 12244 "./tex4ht-c.tex"
-
- long int width;
-if( i_accent_template ){
- (IGNORED) fprintf(cur_o_file, "%s", i_accent_second); }
-needs_end_accent = (needs_accent_sym == 2 * TRUE);
-if( needs_end_accent && t_accent_template )
-{
-#line 12201 "./tex4ht-c.tex"
-
-needs_accented_sym++;
-
- }
-else if( m_accent_template )
-{
-#line 12201 "./tex4ht-c.tex"
-
-needs_accented_sym++;
-
- stack[stack_n-1].accented = TRUE; }
-needs_accent_sym = FALSE;
-width = (INTEGER)(
-#line 9837 "./tex4ht-c.tex"
-
-design_size_to_pt( *(font_tbl[cur_fnt].wtbl
- + (int) (
-#line 9845 "./tex4ht-c.tex"
-
-*(font_tbl[cur_fnt].char_wi + (int)
- ( ch - font_tbl[cur_fnt].char_f)% 256)
-
-) )
- )
-* (double) font_tbl[cur_fnt].scale
-
- );
-if( needs_end_accent ){ needs_end_accent = x_val + 9 * width / 10; }
-in_accenting = FALSE;
-
-
-} else if(
-#line 12269 "./tex4ht-c.tex"
-
-needs_accent_sym && (ch < 128)
-
- ){
- if( needs_accent_sym ){
- BOOL needs_end_accent;
- needs_end_accent = (needs_accent_sym == 2 * TRUE);
- if( needs_end_accent && t_accent_template ){
- (IGNORED) fprintf(cur_o_file, "%s%s%s%d%s%d%s",
- t_accent_first, font_tbl[cur_fnt].family_name,
- t_accent_second, ch, t_accent_third,
- font_tbl[cur_fnt].accent[ch]?
- font_tbl[cur_fnt].accent_array[font_tbl[cur_fnt].accent[ch]-1]
- : 0,
- t_accent_fourth);
- } else if( m_accent_template ){
- (IGNORED) fprintf(cur_o_file, "%s%s%s%d%s%d%s",
- m_accent_first, font_tbl[cur_fnt].family_name,
- m_accent_second, ch, m_accent_third,
- font_tbl[cur_fnt].accent[ch]?
- font_tbl[cur_fnt].accent_array[font_tbl[cur_fnt].accent[ch]-1]
- : 0,
- m_accent_fourth);
- }
- if( i_accent_template ){
- (IGNORED) fprintf(cur_o_file, "%s", i_accent_first); }
- in_accenting = TRUE;
- }
-}
-
-
- if( ch < 132 ) {
- x_val += math_class_on?
-#line 12651 "./tex4ht-c.tex"
-
-set_ch_class(ch_1)
-
-
- : insert_ch(ch_1);
- if( max_x_val < x_val ) max_x_val = x_val;
- } else switch( ch ) {
- case 133: case 134: case 135: case 136: {
- INTEGER w;
- w = math_class_on?
-#line 12651 "./tex4ht-c.tex"
-
-set_ch_class(ch_1)
-
- : insert_ch(ch_1);
- max_x_val = ( x_val + w > max_x_val )? x_val + w : max_x_val;
- break;
- }
-
-#line 3036 "./tex4ht-c.tex"
-
-case
-#line 17332 "./tex4ht-c.tex"
-
-143
-: {;}
-case
-#line 17335 "./tex4ht-c.tex"
-
-144
-: {;}
-case
-#line 17338 "./tex4ht-c.tex"
-
-145
-: {;}
-case
-#line 17341 "./tex4ht-c.tex"
-
-146
-: {
- try_new_line();
- (void) move_x((INTEGER) get_int(ch -
-#line 17332 "./tex4ht-c.tex"
-
-143
- + 1 ));
- break; }
-
-
-#line 3046 "./tex4ht-c.tex"
-
-case
-#line 17344 "./tex4ht-c.tex"
-
-147
-: {
- (void) move_x( dx_1 ); break; }
-case
-#line 17347 "./tex4ht-c.tex"
-
-148
-: {;}
-case
-#line 17350 "./tex4ht-c.tex"
-
-149
-: {;}
-case
-#line 17353 "./tex4ht-c.tex"
-
-150
-: {;}
-case
-#line 17356 "./tex4ht-c.tex"
-
-151
-: {
- try_new_line();
- dx_1 = move_x((INTEGER) get_int(ch -
-#line 17344 "./tex4ht-c.tex"
-
-147
- ));
- break; }
-
-
-#line 3058 "./tex4ht-c.tex"
-
-case
-#line 17359 "./tex4ht-c.tex"
-
-152
-: {
- (void) move_x( dx_2 ); break; }
-case
-#line 17362 "./tex4ht-c.tex"
-
-153
-: {;}
-case
-#line 17365 "./tex4ht-c.tex"
-
-154
-: {;}
-case
-#line 17368 "./tex4ht-c.tex"
-
-155
-: {;}
-case
-#line 17371 "./tex4ht-c.tex"
-
-156
-: {
- try_new_line();
- dx_2 = move_x((INTEGER) get_int(ch -
-#line 17359 "./tex4ht-c.tex"
-
-152
- ));
- break; }
-
-
-#line 3143 "./tex4ht-c.tex"
-
-case
-#line 17374 "./tex4ht-c.tex"
-
-157
-: {;}
-case
-#line 17377 "./tex4ht-c.tex"
-
-158
-: {;}
-case
-#line 17380 "./tex4ht-c.tex"
-
-159
-: {;}
-case
-#line 17383 "./tex4ht-c.tex"
-
-160
-: {
- (void) move_y( (INTEGER) get_int(ch -
-#line 17374 "./tex4ht-c.tex"
-
-157
- + 1 ));
- break; }
-
-
-#line 3152 "./tex4ht-c.tex"
-
-case
-#line 17386 "./tex4ht-c.tex"
-
-161
-: { (void) move_y( dy_1 ); break; }
-case
-#line 17389 "./tex4ht-c.tex"
-
-162
-: {;}
-case
-#line 17392 "./tex4ht-c.tex"
-
-163
-: {;}
-case
-#line 17395 "./tex4ht-c.tex"
-
-164
-: {;}
-case
-#line 17398 "./tex4ht-c.tex"
-
-165
-: {
- dy_1 = move_y( (INTEGER) get_int(ch -
-#line 17386 "./tex4ht-c.tex"
-
-161
- ));
- break; }
-
-
-#line 3162 "./tex4ht-c.tex"
-
-case
-#line 17401 "./tex4ht-c.tex"
-
-166
-: { (void) move_y( dy_2 ); break; }
-case
-#line 17404 "./tex4ht-c.tex"
-
-167
-: {;}
-case
-#line 17407 "./tex4ht-c.tex"
-
-168
-: {;}
-case
-#line 17410 "./tex4ht-c.tex"
-
-169
-: {;}
-case
-#line 17413 "./tex4ht-c.tex"
-
-170
-: {
- dy_2 = move_y( (INTEGER) get_int(ch -
-#line 17401 "./tex4ht-c.tex"
-
-166
- ));
- break; }
-
-
-#line 3586 "./tex4ht-c.tex"
-
-case
-#line 17309 "./tex4ht-c.tex"
-
-132
-: {
- (void) rule_x( TRUE ); break;
-}
-case
-#line 17314 "./tex4ht-c.tex"
-
-137
-: {
- (void) rule_x( FALSE ); break;
-}
-
-
-#line 3759 "./tex4ht-c.tex"
-
-
-#line 3764 "./tex4ht-c.tex"
-
-case
-#line 17460 "./tex4ht-c.tex"
-
-246
-: (void) get_char();
-case
-#line 17457 "./tex4ht-c.tex"
-
-245
-: (void) get_char();
-case
-#line 17454 "./tex4ht-c.tex"
-
-244
-: (void) get_char();
-case
-#line 17451 "./tex4ht-c.tex"
-
-243
-: {
- for( i=0; i<14; i++ ){ ch = get_char(); }
- for( i=ch + get_char(); i>0; i--) (void) get_char();
- break;
-}
-
-
-
-
-#line 3776 "./tex4ht-c.tex"
-
-case
-#line 17490 "./tex4ht-c.tex"
-
-252
-
-:
- if( version_id ==
-#line 2292 "./tex4ht-c.tex"
-
-10
-
- ){
-
-#line 9230 "./tex4ht-c.tex"
-
- unsigned short flags;
-for( i=0; i<8; i++ ){ ch = get_char(); }
-flags = (INTEGER) get_unt(2);
-for( i = (INTEGER) get_unt(1)
- + (INTEGER) get_unt(1)
- + (INTEGER) get_unt(1)
- ; i>0
- ; i-- ){ ch = get_char(); }
-if( flags &
-#line 8955 "./tex4ht-c.tex"
-
-0x0200
-
- ){ (void) get_unt(4); }
-if( flags &
-#line 8959 "./tex4ht-c.tex"
-
-0x0800
-
- ){
- int n = (INTEGER) get_unt(2);
- int i;
- for (i = 0; i < n; ++i) {
- (void) get_unt(4);
- }
- for (i = 0; i < n; ++i) {
- (void) get_int(4);
-} }
-
-
- break;
- }
-case
-#line 17496 "./tex4ht-c.tex"
-
-253
-
-:
- if( version_id ==
-#line 2292 "./tex4ht-c.tex"
-
-10
-
- ){
-
-#line 9253 "./tex4ht-c.tex"
-
-doGlyphArray(TRUE);
-
-
- break;
- }
-case
-#line 17501 "./tex4ht-c.tex"
-
-254
-
-:
- if( version_id ==
-#line 2292 "./tex4ht-c.tex"
-
-10
-
- ){
-
-#line 9258 "./tex4ht-c.tex"
-
-doGlyphArray(FALSE);
-
-
- break;
- }
-
-
-#line 3795 "./tex4ht-c.tex"
-
-default: {
- if( (ch <
-#line 17417 "./tex4ht-c.tex"
-
-171
-) || (ch >
-#line 17423 "./tex4ht-c.tex"
-
-234
-) ) {
- bad_char(ch);
- } else { cur_fnt = ch -
-#line 17417 "./tex4ht-c.tex"
-
-171
-;
-
-#line 9309 "./tex4ht-c.tex"
-
-cur_fnt = search_font_tbl( cur_fnt );
-word_sp =
-#line 9911 "./tex4ht-c.tex"
-
-design_size_to_pt( font_tbl[cur_fnt].word_sp )
- * (double) font_tbl[cur_fnt].scale
-
-;
-
- }
- break;
-}
-
-
-#line 3805 "./tex4ht-c.tex"
-
-case
-#line 17429 "./tex4ht-c.tex"
-
-235
- :
-case
-#line 17432 "./tex4ht-c.tex"
-
-236
-:
-case
-#line 17435 "./tex4ht-c.tex"
-
-237
-:
-case
-#line 17438 "./tex4ht-c.tex"
-
-238
- : {
- INTEGER n;
- n = ch -
-#line 17429 "./tex4ht-c.tex"
-
-235
- + 1;
- cur_fnt = (int) ((n==4)? get_int(4) : get_unt((int) n));
-
-#line 9309 "./tex4ht-c.tex"
-
-cur_fnt = search_font_tbl( cur_fnt );
-word_sp =
-#line 9911 "./tex4ht-c.tex"
-
-design_size_to_pt( font_tbl[cur_fnt].word_sp )
- * (double) font_tbl[cur_fnt].scale
-
-;
-
-
- break; }
-
-
-#line 3841 "./tex4ht-c.tex"
-
-case
-#line 17441 "./tex4ht-c.tex"
-
-239
-: {;}
-case
-#line 17443 "./tex4ht-c.tex"
-
-240
-: {;}
-case
-#line 17445 "./tex4ht-c.tex"
-
-241
-: {;}
-case
-#line 17447 "./tex4ht-c.tex"
-
-242
-: {
-#line 3857 "./tex4ht-c.tex"
-
-long int special_n;
-
-#line 12281 "./tex4ht-c.tex"
-
-if( needs_end_accent && t_accent_template ){
-
-#line 2609 "./tex4ht-c.tex"
-
-if( span_on && in_span_ch ){
- if( *end_span[0] ){
- in_span_ch = FALSE;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", end_span[0]);
-} }
-
-
- (IGNORED) fprintf(cur_o_file, "%s", t_accent_fifth);
- needs_end_accent = FALSE;
-#line 12424 "./tex4ht-c.tex"
-
-needs_accented_sym--;
-
-
-}
-
-
- if( tex4ht_special( &ch, &special_n) ) { int sv; sv = ch;
- special_on = TRUE;
-#line 3944 "./tex4ht-c.tex"
-
-try_new_line();
-switch( ch ){
- case '*': {
-#line 4585 "./tex4ht-c.tex"
-
-if( special_n ){
- special_n--;
- switch ( get_char() ){
- case '<': {
-#line 4689 "./tex4ht-c.tex"
-
- U_CHAR name[256];
- int i=0;
- FILE* file;
-name[(int) special_n] = '\0';
-while( special_n-- > 0 ){ name[i++] = get_char(); }
-file = f_open(name, READ_TEXT_FLAGS);
-if( file ) {
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- while( (ch = getc(file)) >=0 ){
- (IGNORED) put_4ht_ch(ch,cur_o_file);
- }
- (IGNORED) fclose(file);
-} else { warn_i_str( 1, name ); }
-
- break; }
- case '>': {
-#line 4394 "./tex4ht-c.tex"
-
-if( special_n > 0 ){
-
-#line 4504 "./tex4ht-c.tex"
-
- static struct files_rec *p, *q;
- U_CHAR name[256];
- int i;
-
-#line 4514 "./tex4ht-c.tex"
-
-i = 0;
-name[(int) special_n] = '\0';
-while( special_n-- > 0 ){ name[i++] = get_char(); }
-for( p = opened_files; p != (struct files_rec*) 0; p = p->next ){
- if( eq_str(p->name, name) ){ break; }
-}
-
-
-if( p != (struct files_rec*) 0 ){
-
-#line 4525 "./tex4ht-c.tex"
-
-for( q = p; q->next != (struct files_rec*) 0; q = q->next ){ }
-if( q != p ){
- q->next = p;
- (p->next)->prev = p->prev;
- if( opened_files == p ){ opened_files = p->next; }
- else { (p->prev)->next = p->next; }
- p->prev = q;
- p->next = (struct files_rec*) 0;
-}
-
-
-}
-
-
-} else {
-
-#line 4470 "./tex4ht-c.tex"
-
-
-#line 4474 "./tex4ht-c.tex"
-
- static struct files_rec *p, *q;
-for( p = opened_files; p != (struct files_rec*) 0; p = p->next ){
- if( (p->file == cur_o_file) && p->prev_file ){
-
-#line 4486 "./tex4ht-c.tex"
-
-for( q = opened_files; q != (struct files_rec*) 0; q = q->next ){
- if( q->file == p->prev_file ){
- break;
- }
-}
-if( q == (struct files_rec*) 0 ){
- warn_i_str(51,q->name);
- break;
-}
-
-
- cur_o_file = p->prev_file;
- p->prev_file = (FILE *) 0;
- break;
- }
-}
-
-
-
-
-}
-
- break; }
- case '!': {
-#line 4608 "./tex4ht-c.tex"
-
- U_CHAR name[256], ch;
- int i=0, n;
- struct sys_call_rec *p;
- BOOL flag;
-name[(int) special_n] = '\0';
-while( special_n-- > 0 ){ name[i++] = get_char(); }
-(IGNORED) printf("System call: %s\n", name);
-
-#line 4654 "./tex4ht-c.tex"
-
-flag = FALSE;
-p = system_calls;
-while( p ){
- if( (n = (int) strlen((char *) p->filter)) == 1 ) {
- flag = flag || (*(p->filter) == '*');
- } if( strlen((char *) name) >= (unsigned int) n ) {
- ch = name[n]; name[n] = '\0';
- flag = flag || eq_str(p->filter,name);
- name[n] = ch;
- }
- p = p->next;
-}
-
-
-if( flag ){
- (IGNORED) printf("System return: %d\n",
- system_yes? (int) system(name) : -1 );
-} else { (IGNORED) printf("No permission for system call\n"); }
-
- break; }
- case '^': {
-#line 12155 "./tex4ht-c.tex"
-
-special_n--;
-switch ( get_char() ){
- case 't': { if( special_n ){
-
-#line 12317 "./tex4ht-c.tex"
-
-(IGNORED) get_open_accent(&t_accent_template,
- &t_accent_first, &t_accent_second,
- &t_accent_third, &t_accent_fourth,
- &t_accent_fifth, &special_n);
-
-
- } else {
-#line 12193 "./tex4ht-c.tex"
-
-needs_accent_sym = TRUE * 2;
-
- }
- break;
- }
- case 'm': { if( special_n ){
-
-#line 12324 "./tex4ht-c.tex"
-
-(IGNORED) get_open_accent(&m_accent_template,
- &m_accent_first, &m_accent_second,
- &m_accent_third, &m_accent_fourth,
- &m_accent_fifth, &special_n);
-
-
- } else {
-#line 12197 "./tex4ht-c.tex"
-
-needs_accent_sym = TRUE;
-
- }
- break;
- }
- case 'a': {
-#line 12428 "./tex4ht-c.tex"
-
-(IGNORED) get_open_accent(&a_accent_template,
- &a_accent_first, &a_accent_second,
- &a_accent_third, &a_accent_fourth,
- &a_accent_fifth, &special_n);
-
-
- break;
- }
- case 'i': {
-#line 12444 "./tex4ht-c.tex"
-
-(IGNORED) get_open_accent(&i_accent_template,
- &i_accent_first, &i_accent_second,
- &i_accent_third, &i_accent_fourth,
- &i_accent_fifth, &special_n);
-
-
- break;
- }
- default: {
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
-}
-
- break; }
- case '@': {
-#line 6239 "./tex4ht-c.tex"
-
- int i;
-i = 0;
-special_n--;
-switch ( get_char() ){
- case '8': { i++; }
- case '7': { i++; }
- case '6': { i++; }
- case '5': { i++; }
- case '4': { i++; }
- case '3': { i++; }
- case '2': { i++; }
- case '1': {
-#line 6313 "./tex4ht-c.tex"
-
-if( halign[i]->refs == 1 ){
- free((void *) halign[i]->str );
-} else {
- (halign[i]->refs)--;
- halign[i] = m_alloc(struct halign_rec, 1);
- halign[i]->refs = 1;
-}
-halign[i]->str = get_str( (int) special_n );
-special_n=0;
-
- break; }
- case '/': { if( special_n ){
-
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
-
- } else {
-#line 6492 "./tex4ht-c.tex"
-
-if( stack[stack_n].halign_on )
-{
-#line 6498 "./tex4ht-c.tex"
-
-print_f( stack[stack_n].halign[1]->str );
-stack[stack_n].halign_on = FALSE;
-
- }
-
- }
- break;
- }
- case '&': { i++; }
- case '@': { i++;
- if( special_n ){
-
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
-
- } else {
-
-#line 6370 "./tex4ht-c.tex"
-
-new_halign = i * TRUE;
-
-
- }
- break;
- }
- default: {
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
-}
-
- break; }
- case '=': {
-#line 4149 "./tex4ht-c.tex"
-
- char *str, *repl;
- struct hcode_repl_typ *p, *q;
- BOOL flag;
-if( special_n ){
- repl = str = m_alloc(char, (int) special_n + 1);
- while( special_n-- > 0 ){
- *str = get_char(); str++;
- }
- *str = 0;
-
-#line 4176 "./tex4ht-c.tex"
-
-if( hcode_repl != (struct hcode_repl_typ*) 0 ){
- if( *(hcode_repl->str) == *repl ){
- p = hcode_repl;
- hcode_repl = hcode_repl->next;
- free((void *) p->str);
- free((void *) p);
- } else {
- p = hcode_repl;
- while( TRUE ){
- q = p->next;
- if( q == (struct hcode_repl_typ*) 0 ){ break; }
- if( *(q->str) == *repl ){
- p->next = q->next;
- free((void *) q->str);
- free((void *) q);
- break;
- }
- p = q;
-} } }
-
-
-
-#line 4199 "./tex4ht-c.tex"
-
-flag = *repl != *(repl+1);
-if( !flag ){ flag = *(repl+2) != 0; }
-if( flag ){
- p = (struct hcode_repl_typ *) m_alloc(struct hcode_repl_typ, 1);
- p->str = repl;
- p->next = hcode_repl;
- hcode_repl = p;
-}
-
-
-} else {
-
-#line 4166 "./tex4ht-c.tex"
-
-while( hcode_repl != (struct hcode_repl_typ*) 0 ){
- p = hcode_repl;
- hcode_repl = hcode_repl->next;
- free((void *) p->str);
- free((void *) p);
-}
-
-
-}
-
- break; }
- default: {
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
- }
-} else {
-#line 17093 "./tex4ht-c.tex"
-
-;
-
- }
-
- break; }
- case '@': {
-#line 4240 "./tex4ht-c.tex"
-
- int code, digit;
-special_n--;
-switch ( code = get_char() ){
- case '%': {
-#line 2511 "./tex4ht-c.tex"
-
-if( special_n>1 ) {
- special_n--;
- if ( get_char() == '%' ) {
- if( special_n>2 ) {
-#line 2648 "./tex4ht-c.tex"
-
- U_CHAR type, ch, *p, *q, *pp=0, *qq=0, pre[256], post[256];
-special_n -= 2; type = get_char(); ch = get_char();
-p = pre;
-while( special_n-- > 0 ) {
- if ( (*(p++)=get_char() ) == ch ) { p--; break; }
-}
-*p = '\0';
-p = post;
-while( special_n-- > 0 ) { *(p++)=get_char(); } *p='\0';
-
-
-#line 2661 "./tex4ht-c.tex"
-
-p = m_alloc(char, 1 + (int) strlen((char *) pre));
-(IGNORED) strcpy((char *) p, (char *) pre );
-q = m_alloc(char, 1 + (int) strlen((char *) post));
-(IGNORED) strcpy((char *) q, (char *) post );
-
-
-#line 2670 "./tex4ht-c.tex"
-
-switch ( type ){
- case 'P': {
- pp = trace_dvi_del_P; trace_dvi_del_P = p;
- qq = end_trace_dvi_del_P; end_trace_dvi_del_P = q;
- break; }
- case 'C': {
- pp = trace_dvi_del_C; trace_dvi_del_C = p;
- qq = end_trace_dvi_del_C; end_trace_dvi_del_C = q;
- break; }
- case 'V': {
- pp = trace_dvi_del_V; trace_dvi_del_V = p;
- qq = end_trace_dvi_del_V; end_trace_dvi_del_V = q;
- break; }
- case 'H': {
- pp = trace_dvi_del_H; trace_dvi_del_H = p;
- qq = end_trace_dvi_del_H; end_trace_dvi_del_H = q;
- break; }
- case 'R': {
- pp = trace_dvi_del_R; trace_dvi_del_R = p;
- qq = end_trace_dvi_del_R; end_trace_dvi_del_R = q;
- break; }
- case 'p': {
- pp = trace_dvi_del_p; trace_dvi_del_p = p;
- qq = end_trace_dvi_del_p; end_trace_dvi_del_p = q;
- break; }
- case 'c': {
- pp = trace_dvi_del_c; trace_dvi_del_c = p;
- qq = end_trace_dvi_del_c; end_trace_dvi_del_c = q;
- break; }
- case 'v': {
- pp = trace_dvi_del_v; trace_dvi_del_v = p;
- qq = end_trace_dvi_del_v; end_trace_dvi_del_v = q;
- break; }
- case 'h': {
- pp = trace_dvi_del_h; trace_dvi_del_h = p;
- qq = end_trace_dvi_del_h; end_trace_dvi_del_h = q;
- break; }
- case 'r': {
- pp = trace_dvi_del_r; trace_dvi_del_r = p;
- qq = end_trace_dvi_del_r; end_trace_dvi_del_r = q;
- break; }
- default: { ; }
-}
-free((void *) pp);
-free((void *) qq);
-
- }
- else {
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
- } else {
-#line 17088 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
-} else if( special_n ) {
- special_n--;
- switch ( get_char() ){
- case 'P': { trace_dvi_P++; break; }
- case 'C': { trace_dvi_C++; break; }
- case 'V': { trace_dvi_V++; break; }
- case 'H': { trace_dvi_H++; break; }
- case 'R': { trace_dvi_R++; break; }
- case 'p': { trace_dvi_P--; break; }
- case 'c': { trace_dvi_C--; break; }
- case 'v': { trace_dvi_V--; break; }
- case 'h': { trace_dvi_H--; break; }
- case 'r': { trace_dvi_R--; break; }
- default: { ; }
-} }
-
- break; }
- case '@': { verb_ch = !verb_ch; break; }
- case '/': {
-#line 17176 "./tex4ht-c.tex"
-
-trace_special = !trace_special;
-
- break; }
- case 'e': {
-#line 17153 "./tex4ht-c.tex"
-
-if( err_mark ){ free((void *) err_mark); }
-if( special_n ){
- err_mark = get_str( (int) special_n ); special_n=0;
-} else { err_mark = (char *) 0; }
-
- break; }
- case '!': {
-#line 3262 "./tex4ht-c.tex"
-
-while( recover_spaces-- ){ text_on=TRUE; put_char(' '); }
-recover_spaces = 0;
-
- break; }
- case '(': {
-#line 3268 "./tex4ht-c.tex"
-
-ignore_spaces++;
-
- break; }
- case ')': {
-#line 3272 "./tex4ht-c.tex"
-
-ignore_spaces--;
-
- break; }
- case '[': {
-#line 3290 "./tex4ht-c.tex"
-
-if( special_n ){
-
-#line 3278 "./tex4ht-c.tex"
-
-U_CHAR *unhskip_mark;
-long retract_addr;
-BOOL unhskip;
-int cr_fnt, ch, unskip_depth;
-
-
- cr_fnt = cur_fnt;
- unskip_depth = 0;
- unhskip_mark = get_str( (int) special_n ); special_n=0;
- retract_addr = ftell(dvi_file);
-
-#line 3304 "./tex4ht-c.tex"
-
-unhskip = TRUE;
-while( unhskip ){
- if( (ch = get_char()) >= 128 ) {
- switch( ch ){
-
-#line 7080 "./tex4ht-c.tex"
-
-case
-#line 17460 "./tex4ht-c.tex"
-
-246
-: (void) get_char();
-case
-#line 17457 "./tex4ht-c.tex"
-
-245
-: (void) get_char();
-case
-#line 17454 "./tex4ht-c.tex"
-
-244
-: (void) get_char();
-case
-#line 17451 "./tex4ht-c.tex"
-
-243
-: { int i;
- for( i=14; i; i-- ){ ch = get_char(); }
- i = ch + get_char();
- (IGNORED) fseek(dvi_file, (long) i,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- break; }
-
-
-
-#line 7151 "./tex4ht-c.tex"
-
-case
-#line 17309 "./tex4ht-c.tex"
-
-132
-:
-case
-#line 17314 "./tex4ht-c.tex"
-
-137
-:{
- (IGNORED) fseek(dvi_file, 8L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- break;
-}
-
-
-#line 7159 "./tex4ht-c.tex"
-
-case
-#line 17320 "./tex4ht-c.tex"
-
-139
-: {
- (IGNORED) fseek(dvi_file, 44L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-); break; }
-
-
-#line 7164 "./tex4ht-c.tex"
-
-case
-#line 17332 "./tex4ht-c.tex"
-
-143
-: case
-#line 17335 "./tex4ht-c.tex"
-
-144
-:
-case
-#line 17338 "./tex4ht-c.tex"
-
-145
-: case
-#line 17341 "./tex4ht-c.tex"
-
-146
-: {
- (IGNORED) (get_int( ch -
-#line 17332 "./tex4ht-c.tex"
-
-143
- + 1 )); break; }
-case
-#line 17347 "./tex4ht-c.tex"
-
-148
-:
-case
-#line 17350 "./tex4ht-c.tex"
-
-149
-:
-case
-#line 17353 "./tex4ht-c.tex"
-
-150
-:
-case
-#line 17356 "./tex4ht-c.tex"
-
-151
-: {
- (IGNORED) (get_int( ch -
-#line 17347 "./tex4ht-c.tex"
-
-148
- + 1));
- break; }
-case
-#line 17362 "./tex4ht-c.tex"
-
-153
-:
-case
-#line 17365 "./tex4ht-c.tex"
-
-154
-:
-case
-#line 17368 "./tex4ht-c.tex"
-
-155
-:
-case
-#line 17371 "./tex4ht-c.tex"
-
-156
-: {
- (IGNORED) (get_int( ch -
-#line 17362 "./tex4ht-c.tex"
-
-153
- + 1));
- break; }
-case
-#line 17374 "./tex4ht-c.tex"
-
-157
-: case
-#line 17377 "./tex4ht-c.tex"
-
-158
-:
-case
-#line 17380 "./tex4ht-c.tex"
-
-159
-: case
-#line 17383 "./tex4ht-c.tex"
-
-160
-: {
- (IGNORED) (get_int( ch -
-#line 17374 "./tex4ht-c.tex"
-
-157
- + 1));
- break; }
-case
-#line 17389 "./tex4ht-c.tex"
-
-162
-:
-case
-#line 17392 "./tex4ht-c.tex"
-
-163
-:
-case
-#line 17395 "./tex4ht-c.tex"
-
-164
-:
-case
-#line 17398 "./tex4ht-c.tex"
-
-165
-: {
- (IGNORED) (get_int( ch -
-#line 17389 "./tex4ht-c.tex"
-
-162
- + 1));
- break; }
-case
-#line 17404 "./tex4ht-c.tex"
-
-167
-:
-case
-#line 17407 "./tex4ht-c.tex"
-
-168
-:
-case
-#line 17410 "./tex4ht-c.tex"
-
-169
-:
-case
-#line 17413 "./tex4ht-c.tex"
-
-170
-: {
- (IGNORED) (get_int( ch -
-#line 17404 "./tex4ht-c.tex"
-
-167
- + 1));
- break; }
-
-
-#line 7200 "./tex4ht-c.tex"
-
-case
-#line 17344 "./tex4ht-c.tex"
-
-147
-:
-case
-#line 17359 "./tex4ht-c.tex"
-
-152
-:
-case
-#line 17386 "./tex4ht-c.tex"
-
-161
-:
-case
-#line 17401 "./tex4ht-c.tex"
-
-166
-:
- { break; }
-
-
-
-#line 3342 "./tex4ht-c.tex"
-
-case 128: case 129: case 130: case 131: case 133:
-case 134: case 135: case 136: {
- (void) get_unt( (ch-(ch>132)) % 4 +1);
- break;
-}
-
-
-
-#line 3355 "./tex4ht-c.tex"
-
-case
-#line 17326 "./tex4ht-c.tex"
-
-141
-:
-case
-#line 17329 "./tex4ht-c.tex"
-
-142
-: { break; }
-
-
-
-#line 3364 "./tex4ht-c.tex"
-
-case
-#line 17441 "./tex4ht-c.tex"
-
-239
-: case
-#line 17443 "./tex4ht-c.tex"
-
-240
-:
-case
-#line 17445 "./tex4ht-c.tex"
-
-241
-: case
-#line 17447 "./tex4ht-c.tex"
-
-242
-: { long int i;
- if( tex4ht_special( &ch, &i ) ){ char *mark;
- mark = get_str( (int) i );
- if( i ){
- if( (ch=='@') && eq_str(mark+1,unhskip_mark) ){
- switch( *mark ){
- case '[': { unskip_depth++; break; }
- case ']': {
- unhskip = !(--unskip_depth);
- break;
- }
- default: { ; }
- } } }
- }else{
-#line 7016 "./tex4ht-c.tex"
-
- U_CHAR *ch;
-ch = special_hd + 4;
-while( *ch ){ ch++; }
-(IGNORED) fseek(dvi_file, (long) i,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
- }
- break;
-}
-
-
-
-#line 7093 "./tex4ht-c.tex"
-
-case
-#line 17429 "./tex4ht-c.tex"
-
-235
-:
-case
-#line 17432 "./tex4ht-c.tex"
-
-236
-:
-case
-#line 17435 "./tex4ht-c.tex"
-
-237
-:
-case
-#line 17438 "./tex4ht-c.tex"
-
-238
-: {
- INTEGER n;
- n = ch -
-#line 17429 "./tex4ht-c.tex"
-
-235
- + 1;
- cr_fnt = (int) ((n==4)? get_int(4) : get_unt((int) n));
- cr_fnt = search_font_tbl( cr_fnt );
- break; }
-default: {
- if( (ch <
-#line 17417 "./tex4ht-c.tex"
-
-171
-) || (ch >
-#line 17423 "./tex4ht-c.tex"
-
-234
-) ) {
- if( ch ==
-#line 17323 "./tex4ht-c.tex"
-
-140
- ) { warn_i(46); }
- else { warn_i_int(45,ch); }
- } else { cr_fnt = ch -
-#line 17417 "./tex4ht-c.tex"
-
-171
-;
- cr_fnt = search_font_tbl( cr_fnt );
- }
- break;
-}
-
-
- }
-} }
-
-#line 3320 "./tex4ht-c.tex"
-
-do{
- long int i;
- char *mark;
- ch = get_char();
- if(
- ( ch==
-#line 17441 "./tex4ht-c.tex"
-
-239
-) || ( ch==
-#line 17443 "./tex4ht-c.tex"
-
-240
-) ||
- ( ch==
-#line 17445 "./tex4ht-c.tex"
-
-241
-) || ( ch==
-#line 17447 "./tex4ht-c.tex"
-
-242
-)
- )
- {
- if( tex4ht_special( &ch, &i ) ){
- mark = get_str( (int) i );
- if( (ch=='@') && ( *mark=='?') && eq_str(mark+1,unhskip_mark)){
- break;
- } }
- }
- (IGNORED) fseek(dvi_file, (long) retract_addr,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-} while(FALSE);
-
-
-
-
- cur_fnt = cr_fnt;
- free((void *) unhskip_mark);
-} else { ignore_chs++;; }
-
- break; }
- case ']': {
-#line 3390 "./tex4ht-c.tex"
-
-if( special_n ){
- while( special_n-- > 0 ){ (void) get_char(); }
-} else { ignore_chs--; }
-
- break; }
- case '?': {
-#line 3397 "./tex4ht-c.tex"
-
-while( special_n-- > 0 ){ (void) get_char(); }
-
- break; }
- case '-': {
- if( special_n ) { code = 0;
-#line 4280 "./tex4ht-c.tex"
-
-while( special_n-- > 0 ){
- digit = get_char() - '0';
- if ( (digit < 0) || (digit > 9) ) { warn_i_int(41,digit+'0') ; }
- else { code = code * 10 + digit; }
-}
-if ( (code < 0) || (code > 255) ) { code = '?'; warn_i_int(41,'?') ; }
-
-
- put_char( code );
- } else { nomargin = TRUE; }
- break; }
- case '*': {
-#line 4342 "./tex4ht-c.tex"
-
-keepChar=1;
-
- }
- case '+': {
-#line 4299 "./tex4ht-c.tex"
-
-if(
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
- != -1 ) {
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) put_4ht_ch(
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
- , cur_o_file );
-
-#line 4332 "./tex4ht-c.tex"
-
-next_char
-
- = -1;
-}
-if(
-#line 4338 "./tex4ht-c.tex"
-
-next_str
-
- ){ print_f(next_str);
- free((void *) next_str); next_str = (char *) 0; }
-next_str = get_str( (int) special_n ); special_n = 0;
-
-#line 4314 "./tex4ht-c.tex"
-
-{ char *front, *back;
- int i;
- back = front = next_str;
- while( *front != '\0' ){
- if( *front == '{' ){
- i = *(++front) - '0';
- while( *(++front) != '}' ){ i = i*10 + (*front - '0'); }
- *front = (char) i;
- }
- *(back++) = *(front++);
- }
- *back = '\0';
-}
-
-
-
- break; }
- case '.': {
-#line 3402 "./tex4ht-c.tex"
-
-if( eoln_str ){ free((void *) eoln_str); }
-if( special_n ){
- eoln_str = get_str( (int) special_n ); special_n=0;
-} else { eoln_str = (char *) 0; }
-
- break; }
- case ',': {
-#line 3424 "./tex4ht-c.tex"
-
-if( space_str ){ free((void *) space_str); }
-if( special_n ){
- space_str = get_str( (int) special_n ); special_n=0;
-} else { space_str = (char *) 0; }
-
- break; }
- case '_': {
-#line 3678 "./tex4ht-c.tex"
-
-if( !special_n ){ rule_ch = '\0'; }
-else { while( special_n-- > 0 ){ rule_ch = get_char(); }
- }
-
- break; }
- case 'D': {
-#line 3686 "./tex4ht-c.tex"
-
- struct files_rec *p;
-while( special_n-- > 0 ) (void) putc( get_char(), log_file );
-for( p = opened_files; p != (struct files_rec*) 0; p = p->next ){
- if( p->file == cur_o_file) {
- (IGNORED) fprintf(log_file, "%d %s\n",
- (int) ftell(cur_o_file), p->name);
- break;
-} }
-
- break; }
- case 'u': {
-#line 15888 "./tex4ht-c.tex"
-
-special_n--;
-switch ( code = get_char() ){
- case '+': { put_4ht_off++;
-#line 15906 "./tex4ht-c.tex"
-
-flush_uni();
-
- break; }
- case '-': { if( put_4ht_off>0 ){ put_4ht_off--; }
- else { warn_i_str(52, "@u-"); }
- break; }
-}
-
- break; }
- default: {
-#line 4289 "./tex4ht-c.tex"
-
-code -= '0';
-#line 4280 "./tex4ht-c.tex"
-
-while( special_n-- > 0 ){
- digit = get_char() - '0';
- if ( (digit < 0) || (digit > 9) ) { warn_i_int(41,digit+'0') ; }
- else { code = code * 10 + digit; }
-}
-if ( (code < 0) || (code > 255) ) { code = '?'; warn_i_int(41,'?') ; }
-
- next_char = code;
-if(
-#line 4338 "./tex4ht-c.tex"
-
-next_str
-
- ){ print_f(next_str);
- free((void *) next_str); next_str = (char *) 0; }
-
- }
-}
-
- break; }
- case '+': {
-#line 5440 "./tex4ht-c.tex"
-
-while( special_n-- > 0 ) (void) get_char();
-
- break; }
- case '=': {
-#line 4119 "./tex4ht-c.tex"
-
-while( special_n-- > 0 ){
- int ch;
- BOOL flag;
- struct hcode_repl_typ *q;
- ch = get_char();
- q = hcode_repl;
- flag = FALSE;
- while( q != (struct hcode_repl_typ*) 0 ){
- if( ch == *(q->str) ){ flag = TRUE; break; }
- q = q->next;
- }
- if( flag ){
- char *chr;
- chr = (q->str) + 1;
- while( *chr != 0 ){ put_char( *chr ); chr++; }
- } else { put_char( ch ); }
-}
-
- break; }
- case '<':
- case '>': {
-#line 4383 "./tex4ht-c.tex"
-
-
-#line 4541 "./tex4ht-c.tex"
-
- int i=0;
- U_CHAR *name;
-name = m_alloc(char, (int) special_n+1);
-*(name + (int) special_n) = '\0';
-while( special_n-- > 0 ) *(name + i++) = get_char();
-
-
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
-
-#line 4555 "./tex4ht-c.tex"
-
-for( p = opened_files; p != (struct files_rec*) 0; p = p->next )
- { if( eq_str(p->name, name) ) break; }
-
-
-if( ch == '>' ){
-#line 4407 "./tex4ht-c.tex"
-
-if( p != (struct files_rec*) 0 ){
- out_file = p->file;
- p->prev_file = cur_o_file;
- free((void *) name );
-} else {
- if( !(*name) ) out_file = (FILE *) 0;
- else {
-#line 4419 "./tex4ht-c.tex"
-
-p = m_alloc(struct files_rec, 1);
-if( opened_files != (struct files_rec*) 0 ) opened_files->prev = p;
-p->prev = (struct files_rec *) 0;
-p->next = opened_files; opened_files = p;
-p->name = name;
-p->file = out_file = open_html_file(name);
-p->prev_file = cur_o_file;
-
- }
-}
-
- }
-else {
-#line 4431 "./tex4ht-c.tex"
-
-if( p == (struct files_rec *) 0 ) bad_special( name );
-else { /* if p is null, do nothing more */
-
-#line 4444 "./tex4ht-c.tex"
-
-if( p->prev != (struct files_rec*) 0 ) (p->prev)->next = p->next;
-else opened_files = p->next;
-if( p->next != (struct files_rec*) 0 ) (p->next)->prev = p->prev;
-
-
-if( opened_files != (struct files_rec*) 0 )
- { if( out_file == p->file ) out_file = opened_files->file; }
-else out_file = (FILE *) 0;
-(IGNORED) fclose( p->file ); free((void *) p->name );
-free((void *) p );
-}
-
- }
-cur_o_file = ( out_file == (FILE *) 0 )? root_file
- : out_file;
-
- break; }
- case '!': {
-#line 4816 "./tex4ht-c.tex"
-
-ch_map_flag = !ch_map_flag;
-if( ch_map_flag ){
-#line 4906 "./tex4ht-c.tex"
-
-init_ch_map();
-xresolution = yresolution = 0;
-while( special_n-- > 0 ){
- ch = get_char();
- if( (ch >= '0') && (ch <= '9') )
- { yresolution = yresolution * 10 + ch - '0'; }
- else if( (ch == ',') && !xresolution && yresolution )
- { xresolution = yresolution; yresolution = 0; }
- else {
-#line 4930 "./tex4ht-c.tex"
-
-xresolution = yresolution = 0;
-
-#line 17080 "./tex4ht-c.tex"
-
-warn_i_int( 26, '!');
-(IGNORED) putc( ch, stderr);
-while( special_n-- ) (IGNORED) putc( get_char(), stderr);
-
-
-
- }
-}
-if( !xresolution ) xresolution = yresolution;
-if( !xresolution ){ xresolution = XRESOLUTION;
- yresolution = YRESOLUTION; }
-else { xresolution = xresolution * (INTEGER) (XRESOLUTION / 100);
- yresolution = yresolution * (INTEGER) (YRESOLUTION / 100); }
-
- }
-else {
-#line 5275 "./tex4ht-c.tex"
-
-dump_ch_map();
-
- }
-
- break; }
- case '|': { gif_ch = !gif_ch; break; }
- case ':': {
-#line 4722 "./tex4ht-c.tex"
-
-if( special_n-- ){
- int code, n;
- U_CHAR str [255], *p;
- struct count_rec *q;
- code = get_char();
- while( special_n > 254 ){ (void) get_char(); special_n--; }
- p = str; n = special_n;
- while( special_n-- ) { *(p++) = get_char(); }
- *p = '\0';
-
-#line 4751 "./tex4ht-c.tex"
-
-q = counter;
-while( q ){
- if( eq_str(str,q->str) ) break; q = q->next;
-}
-if( !q ){
- q = m_alloc(struct count_rec, 1);
- q->i = q->depth = 0; q->max = 10;
- q->next = counter; counter = q;
- q->str = m_alloc(char, (int) n+1);
- (IGNORED) strcpy((char *) q->str, (char *) str );
- q->stack = m_alloc(int, q->max);
-}
-
-
-
-#line 4783 "./tex4ht-c.tex"
-
-switch ( code ){
- case '+': { (q->i)++; break; }
- case '-': { (q->i)--; break; }
- case '>': {
-#line 4766 "./tex4ht-c.tex"
-
-if( q->depth == q->max ){
- q->max += 10;
- if( (q->stack = (int *) r_alloc( (void *) q->stack,
- (size_t) (q->max * sizeof(int)))) == NULL) bad_mem;
-}
-q->stack[q->depth++] = q->i;
-
- break; }
- case '<': { if( q->depth ){
-#line 4775 "./tex4ht-c.tex"
-
-q->depth--;
-if( q->max > q->depth + 20 ){ q->max -= 15;
- if( (q->stack = (int *) r_alloc( (void *) q->stack,
- (size_t) (q->max * sizeof(int)))) == NULL) bad_mem;
-}
-
- }
- break; }
- case '!': {
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%d", q->i); break; }
- case '|': { if( q->depth ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- (IGNORED) fprintf(cur_o_file, "%d", q->stack[q->depth - 1] );
- }
- break; }
- default: { ; }
-}
-
-
-}
-
- break; }
- case ';': {
-#line 11400 "./tex4ht-c.tex"
-
- int n, code;
- U_CHAR *p, *q;
-code = get_char();
-n = 1 + ((--special_n>254)? 254 : special_n);
-q = p = m_alloc(char, (int) n);
-while( special_n > 254 ){ (void) get_char(); special_n--; }
-while( special_n-- ) { *(q++) = get_char(); }
-*q = '\0'; q = p;
-switch ( code ){
- case '8': { pause_style--; break; }
- case '9': { pause_style++; break; }
- case '-': { default_font = font_tbl[cur_fnt].num;
- base_font_size = font_tbl[cur_fnt].scale / 100;
- break; }
- case '+': { default_font = -1; break; }
- case '%': {
-#line 11814 "./tex4ht-c.tex"
-
- int f;
-f = 0; while( *p ){ f = 10*f + *(p++) - '0'; }
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
-(IGNORED) fprintf(cur_o_file, "%d",
- (font_tbl[cur_fnt].scale / base_font_size - 100) * f / 100 +100
- );
-
- break; }
- case '=': {
-#line 11823 "./tex4ht-c.tex"
-
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
-(IGNORED) fprintf(cur_o_file, "%s", font_tbl[cur_fnt].name);
-if( font_tbl[cur_fnt].mag != 100 ){
- (IGNORED) fprintf(cur_o_file,"_%d", font_tbl[cur_fnt].mag);
-}
-
- break; }
- case '|': {
-#line 11599 "./tex4ht-c.tex"
-
-{ int bad_str, m;
- U_CHAR ch, *t[
-#line 11643 "./tex4ht-c.tex"
-
-8
-], err_str[256];
-bad_str=
-#line 11645 "./tex4ht-c.tex"
-
-7
-; (IGNORED) strcpy((char *) err_str, (char *) p);
-if( n>
-#line 11647 "./tex4ht-c.tex"
-
-10
- ){
- m = 100*( *p-'0' ) + 10*( *(p+1)-'0' )+ *(p+2)-'0';
- if( (m>-1) && (m<256) ){
- ch = *(p + 3); t[0]=p;
- while( (*p = *(p+4)) != '\0' ){
- if( ch == *p ){ *p = '\0';
- if( bad_str-- > 0 ) t[
-#line 11645 "./tex4ht-c.tex"
-
-7
- - bad_str] = p+1;
- }
- p++;
- } }
- if( !bad_str ){
- if( m==0 ){ span_name_on = n>
-#line 11649 "./tex4ht-c.tex"
-
-11
-; }
- q = span_open[m]; span_open[m] = t[0];
- span_name[m] = t[1]; span_size[m] = t[2];
- span_mag[m] = t[3]; span_ord[m] = t[4];
- span_ch[m] = t[5]; end_span[m] = t[6];
- gif_id[m] = t[7];
- if( not_notify ) {
- store_bit_I( class_on, m );
- not_notify = FALSE;
- } else store_bit_Z( class_on, m );
- }
-}
-if( bad_str ){ warn_i_str(37,err_str); }
-}
-
- break; }
- case ',': {
-#line 11634 "./tex4ht-c.tex"
-
-not_notify = TRUE;
-
- break; }
- default: { warn_i_int( 36, code); }
-}
-span_on = span_name_on && !pause_style;
-if( q ) free((void *) q);
-
- break; }
- case '"': {
-#line 8396 "./tex4ht-c.tex"
-
-if( special_n ){
-
-#line 8467 "./tex4ht-c.tex"
-
-{ U_CHAR * p, ch, i;
- ch = get_char();
- p = pos_text = pos_line = end_pos_text
- = end_pos_body = pos_body
- = (char *) r_alloc((void *) pos_body,(size_t) special_n + 1);
- i = 0;
-#line 8486 "./tex4ht-c.tex"
-
-{ BOOL after_star=0;
- while( special_n-- > 0 ){
- if( (*p = get_char()) == ch ){
- *p = '\0'; i++;
- if( i==1 ){ end_pos_body = p + 1; after_star = FALSE; }
- else if( i==2 ){ pos_text = p + 1;
- if( !after_star ){ i--; after_star = TRUE; }
- }
- else if( i==3 ){ end_pos_text = p + 1; }
- else if( i==4 ){ pos_line = p + 1; }
- else { p++; break; }
- } else { after_star = FALSE; }
- p++;
- }
-}
-
-
-
-#line 8506 "./tex4ht-c.tex"
-
-{ long int v=0;
- double w[5];
- int j;
- U_CHAR ch, sign;
- BOOL done;
- for(j=0;j<5;j++){
-
-#line 8528 "./tex4ht-c.tex"
-
-done = FALSE; sign = 1;
-if( --special_n > 0 ){
- if( (ch = get_char()) == '-' ){ sign = -1; v=0; }
- else v = ch - '0';
- if( (v<0) || (v>9) ) done = TRUE;
-}
-if( !done )
- while( --special_n > 0 ){
- ch = get_char();
- if( ('0' <= ch ) && (ch <= '9' ) ){
- v = v * 10 + ch - '0'; }
- else{ done = TRUE; break; }
- }
-
-
- if( done ){
- i++;
- w[j] = sign * ((double) v + pos_dbl( &special_n ));
- }
- }
- pos_x_A = w[0]; pos_x_B = w[1];
- pos_y_C = w[2]; pos_y_D = w[3]; pos_y_E = w[4];
-}
-rect_pos = (special_n == 2);
-if( rect_pos ){ special_n -= 2; rect_pos = get_char() - '0';}
-
-
- if( (i != 10) || special_n ){
- warn_i_str(39,pos_text);
- *(pos_text = end_pos_body = pos_line =
- end_pos_text = pos_body) = '\0';
- }
-}
-
-
-} else if( (pos_dvi = !pos_dvi) == TRUE ){
- print_f(pos_body);
- min_pos_x = max_pos_x = base_pos_x = x_val;
- min_pos_y = max_pos_y = base_pos_y = y_val ;
-} else { U_CHAR *p;
- double dim=0.0;
- BOOL dim_on;
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- p = end_pos_body;
- while( *p ){
- dim_on = TRUE;
- switch( *p ){
-
-#line 8426 "./tex4ht-c.tex"
-
-case 'X': { dim = pos_x_A * (max_pos_x - base_pos_x) + pos_x_B;
- break; }
-case 'x': { dim = pos_x_A * (base_pos_x - min_pos_x) + pos_x_B;
- break; }
-case 'd': { dim = pos_x_A * (max_pos_x - min_pos_x) + pos_x_B;
- break; }
-case 'y': { dim = pos_y_C * (base_pos_y - min_pos_y - 1) + pos_y_D;
- break; }
-case 'Y': { dim = pos_y_C * (max_pos_y - base_pos_y) + pos_y_D;
- break; }
-case 'D': { dim = pos_y_C * (max_pos_y - min_pos_y) + pos_y_D;
- break; }
-
-
- default: { dim_on = FALSE; }
- }
- p++;
- if( dim_on ){ (IGNORED) fprintf(cur_o_file, p, dim); }
- else { (IGNORED) fprintf(cur_o_file, "%s", p); }
- while( * (p++) );
- }
-}
-
- break; }
- case '~': {
-#line 6581 "./tex4ht-c.tex"
-
-if( special_n ){
-
-#line 6612 "./tex4ht-c.tex"
-
- U_CHAR in_ch;
-if( (in_ch = get_char()) == '>' ) {
-
-#line 6734 "./tex4ht-c.tex"
-
-if( special_n == 1 ){
- special_n--;
- switch( get_char() ){
- case '[': { ignore_end_group++; break; }
- case ']': { ignore_end_group--; break; }
- default: {
-#line 17093 "./tex4ht-c.tex"
-
-;
-
- }
- }
-} else {
- struct stack_end_entry *p;
- U_CHAR *q;
- int j;
- j = get_char() - '0' + stack_n - 1;
- if( --special_n ){
- if (j >= stack_len ) { j = stack_len - 1; }
- p = m_alloc(struct stack_end_entry,1);
- p->next = stack[ j ].end;
- stack[ j ].end = p;
- q = p->send = m_alloc(char,special_n+1);
- while( --special_n ) *q++ = get_char();
- *q = '\0';
-} }
-
-
-} else if( in_ch == '!' ) {
-
-#line 7809 "./tex4ht-c.tex"
-
- struct group_path *p, *t;
- U_CHAR *q, str[256];
- int n;
-p = m_alloc(struct group_path,1);
-
-#line 7832 "./tex4ht-c.tex"
-
-n = 0;
-while( --special_n ) {
- str[n] = get_char();
- if( ( str[n] != 'e') && (str[n] != 's') ){ break; }
- n++;
-}
-if((
- ( str[n] != '<') && (str[n] != '>') &&
- ( str[n] != '/') && (str[n] != '-')
- ) || (n==0) ){
- str[n+1] = '\0';
- err_i_str(38,str);
-}
-p->action = str[n]; str[n] = '\0';
-p->path = m_alloc(char,n+1);
-(IGNORED) strcpy((char *) p->path, (char *) str);
-
-
-
-#line 7851 "./tex4ht-c.tex"
-
-q = p->info = m_alloc(char,special_n+1);
-while( --special_n ) *q++ = get_char();
-*q = '\0';
-
-
-n = stack_n - 1;
-if( p->action == '>' ){
- p->next = stack[ n ].path_end;
- stack[ n ].path_end = p;
-} else {
- p->next = (struct group_path *) 0;
- if( stack[n].path_start == (struct group_path *) 0 ) {
- stack[n].path_start = p;
- } else {
- t = stack[n].path_start;
- while( t->next != (struct group_path *) 0 ) { t = t->next; }
- t->next = p;
-} }
-
-
-} else {
- if( !group_dvi ){ warn_i(42); }
- (IGNORED) fseek(dvi_file, (long) --special_n,
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- special_n = 0;
-}
-
-
-} else if( (group_dvi = !group_dvi) == TRUE ){
- long curr_pos;
- int ch, sv_stack_n;
-
-#line 7114 "./tex4ht-c.tex"
-
-int cr_fnt;
-
-
-#line 7474 "./tex4ht-c.tex"
-
-BOOL ch_token;
-int id_hide;
-
-
-
-#line 7118 "./tex4ht-c.tex"
-
-cr_fnt = cur_fnt;
-
-
-#line 7479 "./tex4ht-c.tex"
-
-sv_id = 0;
-#line 7470 "./tex4ht-c.tex"
-
-ch_id = 0;
-
-
-id_hide = 0; ch_token = TRUE;
-while( del_stack != (struct del_stack_entry*) 0 ){
- struct del_stack_entry* p;
- del_stack = (p = del_stack)->next;
- free((void *) p );
-}
-
- stack_id = 0;
- curr_pos = ftell(dvi_file); sv_stack_n = stack_n;
-
-#line 6989 "./tex4ht-c.tex"
-
-while( group_dvi ){
-
-#line 7126 "./tex4ht-c.tex"
-
-if( (ch = get_char()) >= 128 ) {
- switch( ch ){
-
-#line 7142 "./tex4ht-c.tex"
-
-case 128: case 129: case 130: case 131: case 133:
-case 134: case 135: case 136: {
- ch = (int) get_unt( (ch-(ch>132)) % 4 +1);
-
-#line 7354 "./tex4ht-c.tex"
-
-ch_id++;
-if(!back_id_off ){
- if( !id_hide ){ ch_token = TRUE; sv_id = ch_id; }
- switch( math_class_of( ch, cr_fnt ) ){
- case
-#line 7373 "./tex4ht-c.tex"
-
-4
-
-: { del_stack = push_del( (char) ch, cr_fnt);
- break; }
- case
-#line 7369 "./tex4ht-c.tex"
-
-5
-
-: {
- del_stack = pop_del( (char) ch, id_hide, cr_fnt); break; }
- default:{ ; }
-} }
-
-
- break;
-}
-
-
-
-#line 7080 "./tex4ht-c.tex"
-
-case
-#line 17460 "./tex4ht-c.tex"
-
-246
-: (void) get_char();
-case
-#line 17457 "./tex4ht-c.tex"
-
-245
-: (void) get_char();
-case
-#line 17454 "./tex4ht-c.tex"
-
-244
-: (void) get_char();
-case
-#line 17451 "./tex4ht-c.tex"
-
-243
-: { int i;
- for( i=14; i; i-- ){ ch = get_char(); }
- i = ch + get_char();
- (IGNORED) fseek(dvi_file, (long) i,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- break; }
-
-
-
-#line 7151 "./tex4ht-c.tex"
-
-case
-#line 17309 "./tex4ht-c.tex"
-
-132
-:
-case
-#line 17314 "./tex4ht-c.tex"
-
-137
-:{
- (IGNORED) fseek(dvi_file, 8L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- break;
-}
-
-
-#line 7159 "./tex4ht-c.tex"
-
-case
-#line 17320 "./tex4ht-c.tex"
-
-139
-: {
- (IGNORED) fseek(dvi_file, 44L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-); break; }
-
-
-#line 7164 "./tex4ht-c.tex"
-
-case
-#line 17332 "./tex4ht-c.tex"
-
-143
-: case
-#line 17335 "./tex4ht-c.tex"
-
-144
-:
-case
-#line 17338 "./tex4ht-c.tex"
-
-145
-: case
-#line 17341 "./tex4ht-c.tex"
-
-146
-: {
- (IGNORED) (get_int( ch -
-#line 17332 "./tex4ht-c.tex"
-
-143
- + 1 )); break; }
-case
-#line 17347 "./tex4ht-c.tex"
-
-148
-:
-case
-#line 17350 "./tex4ht-c.tex"
-
-149
-:
-case
-#line 17353 "./tex4ht-c.tex"
-
-150
-:
-case
-#line 17356 "./tex4ht-c.tex"
-
-151
-: {
- (IGNORED) (get_int( ch -
-#line 17347 "./tex4ht-c.tex"
-
-148
- + 1));
- break; }
-case
-#line 17362 "./tex4ht-c.tex"
-
-153
-:
-case
-#line 17365 "./tex4ht-c.tex"
-
-154
-:
-case
-#line 17368 "./tex4ht-c.tex"
-
-155
-:
-case
-#line 17371 "./tex4ht-c.tex"
-
-156
-: {
- (IGNORED) (get_int( ch -
-#line 17362 "./tex4ht-c.tex"
-
-153
- + 1));
- break; }
-case
-#line 17374 "./tex4ht-c.tex"
-
-157
-: case
-#line 17377 "./tex4ht-c.tex"
-
-158
-:
-case
-#line 17380 "./tex4ht-c.tex"
-
-159
-: case
-#line 17383 "./tex4ht-c.tex"
-
-160
-: {
- (IGNORED) (get_int( ch -
-#line 17374 "./tex4ht-c.tex"
-
-157
- + 1));
- break; }
-case
-#line 17389 "./tex4ht-c.tex"
-
-162
-:
-case
-#line 17392 "./tex4ht-c.tex"
-
-163
-:
-case
-#line 17395 "./tex4ht-c.tex"
-
-164
-:
-case
-#line 17398 "./tex4ht-c.tex"
-
-165
-: {
- (IGNORED) (get_int( ch -
-#line 17389 "./tex4ht-c.tex"
-
-162
- + 1));
- break; }
-case
-#line 17404 "./tex4ht-c.tex"
-
-167
-:
-case
-#line 17407 "./tex4ht-c.tex"
-
-168
-:
-case
-#line 17410 "./tex4ht-c.tex"
-
-169
-:
-case
-#line 17413 "./tex4ht-c.tex"
-
-170
-: {
- (IGNORED) (get_int( ch -
-#line 17404 "./tex4ht-c.tex"
-
-167
- + 1));
- break; }
-
-
-#line 7200 "./tex4ht-c.tex"
-
-case
-#line 17344 "./tex4ht-c.tex"
-
-147
-:
-case
-#line 17359 "./tex4ht-c.tex"
-
-152
-:
-case
-#line 17386 "./tex4ht-c.tex"
-
-161
-:
-case
-#line 17401 "./tex4ht-c.tex"
-
-166
-:
- { break; }
-
-
-
-#line 6871 "./tex4ht-c.tex"
-
-case
-#line 17326 "./tex4ht-c.tex"
-
-141
-: {
-
-#line 6891 "./tex4ht-c.tex"
-
-{ struct group_info *p, *last;
- if( (last = p = stack[ stack_n ].begin) != (struct group_info *)0 )
- if( p->stack_id == -1 ){
-
-#line 6901 "./tex4ht-c.tex"
-
-while( p ){
- if( p->stack_id != -1 ){ break; }
- p->stack_id = stack_id;
- last = p;
- p = p->next;
-}
-
-
-
-#line 6911 "./tex4ht-c.tex"
-
-while ( stack[ stack_n ].begin != last ){
- p = (stack[ stack_n ].begin) -> next;
- (stack[ stack_n ].begin) -> next = last->next;
- last->next = stack[ stack_n ].begin;
- stack[ stack_n ].begin = p;
-}
-
-
- }
-}
-
-
- stack[stack_n].stack_id = stack_id++;
-
-#line 7339 "./tex4ht-c.tex"
-
-if( !back_id_off )
-{ struct del_stack_entry *p;
- p = m_alloc(struct del_stack_entry,1);
- p->next = del_stack;
- p->id = p->fnt = -1;
- del_stack = p;
-}
-
- stack_n++;
- if( stack_n >
-#line 6684 "./tex4ht-c.tex"
-
-((int) stack_len + 2)
-
- ){ warn_i(40); }
- break;
-}
-case
-#line 17329 "./tex4ht-c.tex"
-
-142
-: {
- stack_n--;
-#line 7325 "./tex4ht-c.tex"
-
-if( !back_id_off ){
- if( !id_hide ){ ch_token = FALSE;
- sv_id = stack[stack_n].stack_id; }
- while( del_stack != (struct del_stack_entry*) 0 ){
- struct del_stack_entry* p;
- int id;
- del_stack = (p = del_stack)->next;
- id = p->id;
- free((void *) p );
- if( id == -1 ) break;
-} }
-
-
- stack[stack_n].stack_id = -1;
- break;
-}
-
-
-
-#line 7002 "./tex4ht-c.tex"
-
-case
-#line 17441 "./tex4ht-c.tex"
-
-239
-: case
-#line 17443 "./tex4ht-c.tex"
-
-240
-:
-case
-#line 17445 "./tex4ht-c.tex"
-
-241
-: case
-#line 17447 "./tex4ht-c.tex"
-
-242
-: { long int i;
- if( tex4ht_special( &ch, &i ) ){
- if( ch == '~' ){
-
-#line 7029 "./tex4ht-c.tex"
-
-if( i==0 ){
- group_dvi = FALSE ;
-}else{
- switch( get_char() ){
- case '<': {
- if( i-- ){ U_CHAR ch;
- if( (ch = get_char()) == '*' )
- {
-#line 7554 "./tex4ht-c.tex"
-
- struct send_back_entry *p, *q, *t=0;
-if( back_id_off ){
- while( i-- ){ (IGNORED) get_char(); }
-} else {
- p = m_alloc(struct send_back_entry,1);
- p->send = get_str( (int)( i - 1 ));
- if( ch_token ){
-
-#line 7595 "./tex4ht-c.tex"
-
-p->id = sv_id;
-if( sv_id > back_token->id ){
- p->next = back_token; back_token = p;
-} else {
- q = back_token;
- while( sv_id <= q->id ){ t = q; q = q->next; }
- p->next = t->next; t->next = p;
-}
-
-
- } else {
- p->id = (sv_id<0? 0 : sv_id) + push_id;
- if( back_group->id < p->id )
- { p->next = back_group; back_group = p; }
- else
- { q = back_group;
- while( q->id >= p->id ) { t = q; q = q->next; }
- p->next = t->next; t->next = p;
- }
- }
-}
-
- }
- else if( (ch == '[') && (i==1) ){
- i--;
-#line 7493 "./tex4ht-c.tex"
-
-id_hide++;
-
-
- }
- else if( (ch == ']') && (i==1) ){
- i--;
-#line 7498 "./tex4ht-c.tex"
-
-id_hide--;
-
-
- }
- else if( (ch == '-') && (i==1) ){
- i--;
-#line 7502 "./tex4ht-c.tex"
-
-id_latex++;
-
-
- }
- else if( (ch == '+') && (i==1) ){
- i--;
-#line 7507 "./tex4ht-c.tex"
-
-id_latex--;
-
-
- }
- else if( (ch == '(') && (i==1) ){
- i--;
-#line 7513 "./tex4ht-c.tex"
-
-back_id_off++;
-
-
- }
- else if( (ch == ')') && (i==1) ){
- i--;
-#line 7518 "./tex4ht-c.tex"
-
-back_id_off--;
-
-
- }
- else {
-#line 6846 "./tex4ht-c.tex"
-
- struct group_info *p;
- U_CHAR *q;
- int j;
-j = ch - '0' + stack_n - 1;
-if (j >= stack_len ) { j = stack_len - 1; }
-p = m_alloc(struct group_info,1);
-p->next = stack[ j ].begin; stack[ j ].begin = p;
-p->stack_id = stack[ j ].stack_id;
-q = p->info = m_alloc(char,i+1);
-while( --i ) *q++ = get_char();
-*q = '\0';
-
- }
- }
- break; }
- default: { (IGNORED) fseek(dvi_file, (long) --i,
-
-#line 2177 "./tex4ht-c.tex"
-
-1
-); break; }
-} }
-
-
- } else {
- (IGNORED) fseek(dvi_file, (long) i,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
- }
- }else{
-#line 7016 "./tex4ht-c.tex"
-
- U_CHAR *ch;
-ch = special_hd + 4;
-while( *ch ){ ch++; }
-(IGNORED) fseek(dvi_file, (long) i,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
- }
- break;
-}
-
-
-
-#line 7093 "./tex4ht-c.tex"
-
-case
-#line 17429 "./tex4ht-c.tex"
-
-235
-:
-case
-#line 17432 "./tex4ht-c.tex"
-
-236
-:
-case
-#line 17435 "./tex4ht-c.tex"
-
-237
-:
-case
-#line 17438 "./tex4ht-c.tex"
-
-238
-: {
- INTEGER n;
- n = ch -
-#line 17429 "./tex4ht-c.tex"
-
-235
- + 1;
- cr_fnt = (int) ((n==4)? get_int(4) : get_unt((int) n));
- cr_fnt = search_font_tbl( cr_fnt );
- break; }
-default: {
- if( (ch <
-#line 17417 "./tex4ht-c.tex"
-
-171
-) || (ch >
-#line 17423 "./tex4ht-c.tex"
-
-234
-) ) {
- if( ch ==
-#line 17323 "./tex4ht-c.tex"
-
-140
- ) { warn_i(46); }
- else { warn_i_int(45,ch); }
- } else { cr_fnt = ch -
-#line 17417 "./tex4ht-c.tex"
-
-171
-;
- cr_fnt = search_font_tbl( cr_fnt );
- }
- break;
-}
-
-
- }
-} else {
-#line 7354 "./tex4ht-c.tex"
-
-ch_id++;
-if(!back_id_off ){
- if( !id_hide ){ ch_token = TRUE; sv_id = ch_id; }
- switch( math_class_of( ch, cr_fnt ) ){
- case
-#line 7373 "./tex4ht-c.tex"
-
-4
-
-: { del_stack = push_del( (char) ch, cr_fnt);
- break; }
- case
-#line 7369 "./tex4ht-c.tex"
-
-5
-
-: {
- del_stack = pop_del( (char) ch, id_hide, cr_fnt); break; }
- default:{ ; }
-} }
-
- }
-
-
-}
-
-
-
-#line 6954 "./tex4ht-c.tex"
-
-{ struct group_info *first, *second, *temp;
- int i;
-for(i = stack_len; i >= 0; i--){
- first = stack[i].begin;
- if( first ) {
- second = first->next;
- while( second ){
- temp = second->next;
- second->next = first;
- first = second;
- second = temp;
- }
- (stack[i].begin)->next = (struct group_info *) 0;
- stack[i].begin = first;
-} } }
-
-
-#line 7610 "./tex4ht-c.tex"
-
-back_group = rev_list( back_group );
-back_token = rev_list( back_token );
-back_token = back_insert ( back_token, 0);
-
-#line 7470 "./tex4ht-c.tex"
-
-ch_id = 0;
-
-
-
-
- (IGNORED) fseek(dvi_file, curr_pos,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
- group_dvi = TRUE; stack_n = sv_stack_n; stack_id = 0;
-} else {
-#line 6813 "./tex4ht-c.tex"
-
-{ int stack_n;
- for( stack_n=
-#line 6684 "./tex4ht-c.tex"
-
-((int) stack_len + 2)
-
-;
- stack_n>0; stack_n--){
- group_dvi = TRUE;
-#line 6792 "./tex4ht-c.tex"
-
-while( stack[stack_n-1].end ){
-
-#line 6770 "./tex4ht-c.tex"
-
- struct stack_end_entry *q, *p, *t;
-q = stack[ stack_n-1 ].end;
-p = stack[ stack_n-1 ].end = (struct stack_end_entry *) 0;
-while( q ){
- t = q->next; q->next = p; p = q; q = t;
-}
-while( p ){
- if( ! ignore_end_group ){ print_f( p->send ); }
- free((void *) p->send );
- q = p; p = p->next; free((void *) q );
-}
-
-
-}
-
-
- group_dvi =FALSE;
-
-#line 6824 "./tex4ht-c.tex"
-
-while( stack[stack_n-1].begin ){
- struct group_info *p;
- warn_i_str(44, stack[stack_n-1].begin->info);
- p = stack[stack_n-1].begin;
- stack[stack_n-1].begin = p->next;
- free((void *) p );
-}
-stack[stack_n-1].stack_id = -1;
-
-
-} }
-
- }
-
- break; }
- case '.': {
-#line 1759 "./tex4ht-c.tex"
-
-if( no_root_file ){
- U_CHAR *name;
- name = m_alloc(char, 256);
- (IGNORED) strcpy((char *) name, (char *) no_root_file );
- free((void *) no_root_file);
- no_root_file = name;
- name += (size_t) strlen((char *) name); while( *(--name) != '.' ); name++;
- while( special_n-- ){
- if( (no_root_file+253) == name ) name--;
- *name++ = get_char();
- }
- *name = '\0';
-} else {
- U_CHAR str[256], *p;
- p = str; while( special_n-- ){ *p++ = get_char(); } *p = '\0';
- warn_i_str(43,str);
-}
-
- break; }
- case '^': {
-#line 12528 "./tex4ht-c.tex"
-
-switch( special_n ){
- case 0:{ if( math_class_on ){
- open_del = 256; pause_class = ignore_subclass_del = 0;
- math_class_on = FALSE;
-#line 12575 "./tex4ht-c.tex"
-
-group_dvi = sv_group_dvi;
-trace_dvi_C = sv_trace_dvi_C;
-in_trace_char = sv_in_trace_char;
-span_on = sv_span_on;
-in_span_ch = sv_in_span_ch;
-
-
- } else { show_class = !show_class; }
- break;
- }
- case 1:{
-#line 12566 "./tex4ht-c.tex"
-
-sv_group_dvi = group_dvi;
-sv_trace_dvi_C = trace_dvi_C;
-sv_in_trace_char = in_trace_char;
-sv_span_on = span_on;
-sv_in_span_ch = in_span_ch;
-
-
- special_n--;
- if( (math_class = scan_class(1)) ==
-#line 12719 "./tex4ht-c.tex"
-
-79
-
- )
- { math_class = 0; }
- else math_class_on = TRUE;
- break;
- }
- case 2:{
-#line 12801 "./tex4ht-c.tex"
-
-special_n -= 2; math_class = scan_class(0);
-stack[stack_n+1].ignore_subclass_del =
- (
-#line 12726 "./tex4ht-c.tex"
-
-')'
-
- == get_char());
-stack[stack_n+1].active_class_del = TRUE;
-stack[stack_n+1].temp_class_del = FALSE;
-stack[stack_n+1].no_left_del = TRUE;
-stack[stack_n+1].class_open = open_class[math_class];
-stack[stack_n+1].class_close = close_class[math_class];
-
-
- break; }
- default:{
-#line 12657 "./tex4ht-c.tex"
-
-{ U_CHAR str[256], *p, ch, **q;
- math_class = scan_class(2); ch = get_char();
- special_n -= 2; p = str;
- while( special_n-- > 0 ){
- if( (*(p++) = get_char()) == ch ){ p--; break; }
- }
- *p = '\0';
- q = (math_class >
-#line 12715 "./tex4ht-c.tex"
-
-78
-
-)? &(
-#line 12833 "./tex4ht-c.tex"
-
-stack[stack_n+1].temp_class_open
-
-)
- : &(open_class[math_class]);
- *q = (char *) r_alloc((void *) open_class[math_class],
- 1 + (size_t) strlen((char *) str));
- (IGNORED) strcpy((char *) *q, (char *) str);
- q = (math_class >
-#line 12715 "./tex4ht-c.tex"
-
-78
-
-) ? &(
-#line 12829 "./tex4ht-c.tex"
-
-stack[stack_n+1].temp_class_close
-
-)
- : &(close_class[math_class]);
- p = *q = (char *) r_alloc((void *) *q, 1 + (size_t) special_n);
- while( special_n-- > 0 ){ *(p++) = get_char(); }
- *p = '\0';
- if( math_class >
-#line 12715 "./tex4ht-c.tex"
-
-78
-
-){
-#line 12820 "./tex4ht-c.tex"
-
-stack[stack_n+1].ignore_subclass_del =
- (math_class ==
-#line 12734 "./tex4ht-c.tex"
-
-(
-#line 12719 "./tex4ht-c.tex"
-
-79
-
- + 1)
-
-);
-stack[stack_n+1].temp_class_del = TRUE;
-stack[stack_n+1].active_class_del = TRUE;
-
- }
-}
-
- }
-}
-
- break; }
-}
-
- special_on = FALSE;
-
-#line 17073 "./tex4ht-c.tex"
-
-if( special_n > 0 ){
- warn_i_int( 26, sv);
- while( special_n-- ) (IGNORED) putc( get_char(), stderr);
-}
-
-
- } else {
-#line 3871 "./tex4ht-c.tex"
-
-while( special_n-- ) (void) get_char();
-
- }
-
- break; }
-
-
-#line 7219 "./tex4ht-c.tex"
-
-case
-#line 17326 "./tex4ht-c.tex"
-
-141
-: {
-#line 7227 "./tex4ht-c.tex"
-
-
-#line 6414 "./tex4ht-c.tex"
-
-if( new_halign ){
-
-#line 6381 "./tex4ht-c.tex"
-
-stack[stack_n].halign_on = new_halign;
-if( stack[stack_n].halign_info )
-{ int j;
- for( j=8; j--; ){
- if( stack[stack_n].halign[j] != halign[j] ){
- if( ! (--(stack[stack_n].halign[j]->refs) ) ){
- free((void *) stack[stack_n].halign[j]->str );
- free((void *) stack[stack_n].halign[j] );
- }
- stack[stack_n].halign[j] = halign[j];
- (halign[j]->refs)++;
- }
- }
-} else { int j;
- stack[stack_n].halign_info = TRUE;
- for( j=8; j--; ){
- stack[stack_n].halign[j] = halign[j];
- (halign[j]->refs)++;
-} }
-print_f( stack[stack_n].halign[0]->str );
-stack[stack_n].row_no = 0;
-new_halign = FALSE;
-
-
-}
-if( stack[stack_n].halign_on )
-{
- print_f( stack[stack_n].halign[2]->str );
- if( stack[stack_n].halign_on > TRUE ){
- stack[stack_n].row_no++;
- stack[stack_n].col_no = 0;
- (IGNORED) fprintf(cur_o_file, "%d%s",
- stack[stack_n].row_no, stack[stack_n].halign[6]->str );
-} }
-if( stack_n ){
- if( stack[stack_n-1].halign_on )
- {
- print_f( stack[stack_n-1].halign[4]->str );
- if( stack[stack_n-1].halign_on > TRUE ){
- stack[stack_n-1].col_no ++;
- (IGNORED) fprintf(cur_o_file, "%d%s",
- stack[stack_n-1].col_no, stack[stack_n-1].halign[7]->str );
- }
-} }
-
-
-
-#line 6922 "./tex4ht-c.tex"
-
-{ struct group_info *p;
- if( group_dvi &&
- ( (p = stack[stack_n].begin ) != (struct group_info *)0)
- ){
- while( p ){
- if( p->stack_id != stack_id ) break;
- print_f(p->info);
- stack[stack_n].begin = p->next;
- free((void *) p );
- p = stack[stack_n].begin;
- }
- }
- stack_id++;
-}
-
-
-stack[stack_n].text_on = text_on;
-push_stack();
-#line 7647 "./tex4ht-c.tex"
-
-if( group_dvi ) {
- back_group = back_insert ( back_group, push_id);
-}
-
-
-
-#line 7861 "./tex4ht-c.tex"
-
-{
-
-#line 7881 "./tex4ht-c.tex"
-
-struct group_path *start_head, *start_tail,
- *parent_start_head, *parent_start_tail,
- *end_head, *end_tail,
- *parent_end_head, *parent_end_tail,
- *p, *q;
-int place=0;
-start_head = start_tail = parent_start_head = parent_start_tail
- = end_head = end_tail = parent_end_head
- = parent_end_tail = (struct group_path *) 0;
-
-
- if(
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- ){
-
-#line 3272 "./tex4ht-c.tex"
-
-ignore_spaces--;
-
-
-
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- = FALSE;
- }
- if( stack_n > 1 ){
- p = stack[stack_n - 2].path_start;
- if( p != (struct group_path *) 0 ){
-
-#line 7902 "./tex4ht-c.tex"
-
-while( p != (struct group_path *) 0 ){
-
-#line 8007 "./tex4ht-c.tex"
-
-if( *(p->path ) == 'e' ) {
- (IGNORED) strcpy((char *) p->path, (char *) p->path+1);
- if( *(p->path) == '\0' ) {
- switch( p->action ){
- case '<': print_f( p->info );
- place =
-#line 7978 "./tex4ht-c.tex"
-
-4
-;
- break;
- case '/': ignore_chs++;
- place =
-#line 7972 "./tex4ht-c.tex"
-
-2
-; break;
- case '-':
-#line 3739 "./tex4ht-c.tex"
-
-rule_ch_off
-
- = TRUE;
-
-#line 3268 "./tex4ht-c.tex"
-
-ignore_spaces++;
-
-
- place =
-#line 7978 "./tex4ht-c.tex"
-
-4
-; break;
- }
- } else {
- place =
-#line 7972 "./tex4ht-c.tex"
-
-2
-;
- }
-} else {
- if( *(p->path ) == 's' ) {
- (IGNORED) strcpy((char *) p->path, (char *) p->path+1);
- }
- place =
-#line 7966 "./tex4ht-c.tex"
-
-0
-;
-}
-
-
- q = p;
- p = p->next;
- q->next = (struct group_path *) 0;
-
-#line 7922 "./tex4ht-c.tex"
-
-switch( place ){
- case
-#line 7966 "./tex4ht-c.tex"
-
-0
-:
- if( parent_start_head == (struct group_path *) 0 ){
- parent_start_head = parent_start_tail = q;
- } else {
- parent_start_tail = parent_start_tail->next = q;
- }
- break;
- case
-#line 7972 "./tex4ht-c.tex"
-
-2
-:
- if( start_head == (struct group_path *) 0 ){
- start_head = start_tail = q;
- } else {
- start_tail = start_tail->next = q;
- }
- break;
- case
-#line 7978 "./tex4ht-c.tex"
-
-4
-:
-
-#line 7981 "./tex4ht-c.tex"
-
-free((void *) q->path );
-free((void *) q->info );
-free((void *) q );
-
-
- break;
-}
-
-
-}
-
-
- }
- p = stack[stack_n - 2].path_end;
- if( p != (struct group_path *) 0 ){
-
-#line 7912 "./tex4ht-c.tex"
-
-while( p != (struct group_path *) 0 ){
-
-#line 8043 "./tex4ht-c.tex"
-
-if( *(p->path ) == 'e' ) {
- (IGNORED) strcpy((char *) p->path, (char *) p->path+1);
- place =
-#line 7975 "./tex4ht-c.tex"
-
-3
-;
-} else {
- if( *(p->path ) == 's' ) {
- (IGNORED) strcpy((char *) p->path, (char *) p->path+1);
- }
- place =
-#line 7969 "./tex4ht-c.tex"
-
-1
-;
-}
-
-
- q = p;
- p = p->next;
- q->next = (struct group_path *) 0;
-
-#line 7944 "./tex4ht-c.tex"
-
-switch( place ){
- case
-#line 7969 "./tex4ht-c.tex"
-
-1
-:
- if( parent_end_head == (struct group_path *) 0 ){
- parent_end_head = parent_end_tail = q;
- } else {
- parent_end_tail = parent_end_tail->next = q;
- }
- break;
- case
-#line 7975 "./tex4ht-c.tex"
-
-3
-:
- if( end_head == (struct group_path *) 0 ){
- end_head = end_tail = q;
- } else {
- end_tail = end_tail->next = q;
- }
- break;
- case
-#line 7978 "./tex4ht-c.tex"
-
-4
-:
-
-#line 7981 "./tex4ht-c.tex"
-
-free((void *) q->path );
-free((void *) q->info );
-free((void *) q );
-
-
- break;
-}
-
-
-}
-
-
- }
-
-#line 7893 "./tex4ht-c.tex"
-
- stack[stack_n - 1].path_start = start_head;
- stack[stack_n - 1].path_end = end_head;
- stack[stack_n - 2].path_start = parent_start_head;
- stack[stack_n - 2].path_end = parent_end_head;
-
-
-} }
-
-
-
-#line 2867 "./tex4ht-c.tex"
-
-if( push_depth<256 ) { push_st[push_depth] = push_id++; }
-if( trace_dvi_P && !ch_map_flag ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( *trace_dvi_del_P != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_P, push_depth,
- push_st[(push_depth<256)? push_depth:256]);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_P);
-}
-push_depth++;
-
-
-
-#line 12842 "./tex4ht-c.tex"
-
-if( stack[stack_n].active_class_del ){
- if( show_class && !pause_class && !ignore_subclass_del ){
-
-#line 12982 "./tex4ht-c.tex"
-
-(IGNORED) print_f( (stack[stack_n].temp_class_del)?
- stack[stack_n].temp_class_open
- : stack[stack_n].class_open);
-
-
- }
- ignore_subclass_del = ignore_subclass_del
- + stack[stack_n].ignore_subclass_del;
- stack[stack_n+1].no_left_del= FALSE;
-}
-
-
-
- break; }
-case
-#line 17329 "./tex4ht-c.tex"
-
-142
-: {
-#line 7272 "./tex4ht-c.tex"
-
-
-#line 12854 "./tex4ht-c.tex"
-
-if( stack[stack_n].active_class_del ){
- ignore_subclass_del = ignore_subclass_del
- - stack[stack_n].ignore_subclass_del;
- if( show_class && !pause_class && !ignore_subclass_del ){
-
-#line 12969 "./tex4ht-c.tex"
-
-(IGNORED) print_f( (stack[stack_n].temp_class_del)?
- stack[stack_n].temp_class_close
- : stack[stack_n].class_close);
-
-
- }
- stack[stack_n].active_class_del = FALSE;
-}
-
-
-
-#line 8063 "./tex4ht-c.tex"
-
-{
- struct group_path *p, *q;
- if( stack_n > 1 ){
- p = stack[stack_n - 1].path_start;
- if( p != (struct group_path *) 0 ){
-
-#line 8078 "./tex4ht-c.tex"
-
-while( p != (struct group_path *) 0 ){
-
-#line 8104 "./tex4ht-c.tex"
-
-if( *(p->path) != '\0' ) {
-
-#line 8134 "./tex4ht-c.tex"
-
- char str[256];
-(IGNORED) strcpy(str, "...."); *(str+3) = p->action;
-(IGNORED) strct(str,p->info); warn_i_str(38,str);
-
-
-} else {
- switch( p->action ){
- case '/': ignore_chs--; break;
- default: {
-
-#line 8134 "./tex4ht-c.tex"
-
- char str[256];
-(IGNORED) strcpy(str, "...."); *(str+3) = p->action;
-(IGNORED) strct(str,p->info); warn_i_str(38,str);
-
-
- break;
-} } }
-
-
- q = p;
- p = p->next;
-
-#line 7981 "./tex4ht-c.tex"
-
-free((void *) q->path );
-free((void *) q->info );
-free((void *) q );
-
-
-}
-
-
- }
- p = stack[stack_n - 1].path_end;
- if( p != (struct group_path *) 0 ){
-
-#line 8087 "./tex4ht-c.tex"
-
-while( p != (struct group_path *) 0 ){
-
-#line 8120 "./tex4ht-c.tex"
-
-if( *(p->path) != '\0' ) {
-
-#line 8134 "./tex4ht-c.tex"
-
- char str[256];
-(IGNORED) strcpy(str, "...."); *(str+3) = p->action;
-(IGNORED) strct(str,p->info); warn_i_str(38,str);
-
-
-} else {
- switch( p->action ){
- case '>': print_f( p->info ); break;
- default: {
-
-#line 8134 "./tex4ht-c.tex"
-
- char str[256];
-(IGNORED) strcpy(str, "...."); *(str+3) = p->action;
-(IGNORED) strct(str,p->info); warn_i_str(38,str);
-
-
- break;
-} } }
-
-
- q = p;
- p = p->next;
-
-#line 7981 "./tex4ht-c.tex"
-
-free((void *) q->path );
-free((void *) q->info );
-free((void *) q );
-
-
-}
-
-
-} } }
-
-
-
-#line 6792 "./tex4ht-c.tex"
-
-while( stack[stack_n-1].end ){
-
-#line 6770 "./tex4ht-c.tex"
-
- struct stack_end_entry *q, *p, *t;
-q = stack[ stack_n-1 ].end;
-p = stack[ stack_n-1 ].end = (struct stack_end_entry *) 0;
-while( q ){
- t = q->next; q->next = p; p = q; q = t;
-}
-while( p ){
- if( ! ignore_end_group ){ print_f( p->send ); }
- free((void *) p->send );
- q = p; p = p->next; free((void *) q );
-}
-
-
-}
-
-
-
-#line 2883 "./tex4ht-c.tex"
-
-push_depth--;
-if( trace_dvi_P && !ch_map_flag ){
-
-#line 1715 "./tex4ht-c.tex"
-
-if( no_root_file ){ open_o_file(); }
-
-
- if( *trace_dvi_del_p != '\0' ){
- (IGNORED) fprintf(cur_o_file, "%s%d %d",
- trace_dvi_del_p, push_depth,
- push_st[(push_depth<256)? push_depth:256]);
- }
- (IGNORED) fprintf(cur_o_file, "%s", end_trace_dvi_del_p);
-}
-
-
-
-#line 6443 "./tex4ht-c.tex"
-
-
-#line 6492 "./tex4ht-c.tex"
-
-if( stack[stack_n].halign_on )
-{
-#line 6498 "./tex4ht-c.tex"
-
-print_f( stack[stack_n].halign[1]->str );
-stack[stack_n].halign_on = FALSE;
-
- }
-
-
-
-#line 6505 "./tex4ht-c.tex"
-
-if( stack_n ){
- if( stack[stack_n-1].halign_on )
- {
- print_f( stack[stack_n-1].halign[3]->str );
-} }
-
-
-
-#line 6514 "./tex4ht-c.tex"
-
-if( stack_n-1 ){
- if( stack[stack_n-2].halign_on )
- {
- print_f( stack[stack_n-2].halign[5]->str );
-} }
-
-
-if( stack[stack_n].halign_info )
-{ int j;
- for( j=8; j--; ){
- if( ! (--(stack[stack_n].halign[j]->refs) ) ){
- free((void *) stack[stack_n].halign[j]->str );
- free((void *) stack[stack_n].halign[j] );
- } }
- stack[stack_n].halign_info = FALSE;
-}
-
-
-pop_stack();
-if( ((x_val+0.6*word_sp) < stack[stack_n].x_val) ) put_char(' ');
-text_on = stack[stack_n].text_on;
-
- break; }
-
-
- }
-}
-
-
- }
-
-#line 5282 "./tex4ht-c.tex"
-
-if( ch_map_flag ){
- warn_i(27); init_ch_map(); }
-
-
- (IGNORED) printf("]%c",unread_pages % 10 == 0? '\n' : ' ');
- put_char('\n');
-} }
-
-
-put_char('\n');put_char('\n');
-
-#line 4456 "./tex4ht-c.tex"
-
-while( opened_files != (struct files_rec*) 0 )
-{
- (IGNORED) fclose( opened_files->file );
- opened_files = opened_files->next;
-}
-
-
-{
-#line 5778 "./tex4ht-c.tex"
-
-INTEGER bop_addr;
-
-
-#line 5843 "./tex4ht-c.tex"
-
-int stack_depth=0;
-
-
-#line 5900 "./tex4ht-c.tex"
-
-char cur_font[6];
-BOOL visible_cnt=FALSE;
-
-
-
-#line 5406 "./tex4ht-c.tex"
-
-job_name[job_name_n-3] = '\0';
-
-#line 5448 "./tex4ht-c.tex"
-
-file_n = 14;
-(IGNORED) fseek(dvi_file, 0L,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-do{ ch = get_char();
- idv_char( ch );
- file_n++;
-}while( ch ==
-#line 17317 "./tex4ht-c.tex"
-
-138
- );
-
-#line 5462 "./tex4ht-c.tex"
-
-ch = get_char();
-if( id_version != -1 ){ ch = id_version; }
-idv_char( ch );
-
-
-for( i=12; i ; i-- ){ idv_char( get_char() ); }
-i = get_char();
-idv_char( (int) i ); while( i-- ) idv_copy();
-
-
-page_n = 0;
-
-#line 6098 "./tex4ht-c.tex"
-
-x_val = 0; y_val = 0; stack_n = 0;
-idv_char(
-#line 17320 "./tex4ht-c.tex"
-
-139
- );
-idv_int( page_n + 1 ); for( i=36; i--; ) idv_char( 0);
-idv_int( -1 ); bop_addr = file_n; file_n += 45;
-idv_char(
-#line 17326 "./tex4ht-c.tex"
-
-141
-); file_n++;
-
-
-while( dis_pages ){
-#line 5526 "./tex4ht-c.tex"
-
-if( (ch = get_char()) < 128 ) { visible_cnt = TRUE; cond_idv_char( ch );}
-else switch( ch ){
-#line 5533 "./tex4ht-c.tex"
-
-case 128: case 129: case 130: case 131: case 133:
-case 134: case 135: case 136: {
- visible_cnt = TRUE; cond_string( ch, (ch - (ch>132)) % 4 +1 );
- break;
-}
-
-
-#line 5544 "./tex4ht-c.tex"
-
-case
-#line 17320 "./tex4ht-c.tex"
-
-139
-: {
- x_val = 0; y_val = 0; stack_n = 0;
- (IGNORED) fseek(dvi_file, 44L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-); break; }
-case
-#line 17323 "./tex4ht-c.tex"
-
-140
-: { dis_pages--; }
-case
-#line 17317 "./tex4ht-c.tex"
-
-138
-: { break; }
-
-
-#line 5553 "./tex4ht-c.tex"
-
-case
-#line 17344 "./tex4ht-c.tex"
-
-147
-: {
- cond_idv_char( ch ); x_val += dx_1; break; }
-case
-#line 17359 "./tex4ht-c.tex"
-
-152
-: {
- cond_idv_char( ch ); x_val += dx_2; break; }
-case
-#line 17386 "./tex4ht-c.tex"
-
-161
-: {
- cond_idv_char( ch ); y_val += dy_1; break; }
-case
-#line 17401 "./tex4ht-c.tex"
-
-166
-: {
- cond_idv_char( ch ); y_val += dy_2; break; }
-
-
-#line 5565 "./tex4ht-c.tex"
-
-case
-#line 17332 "./tex4ht-c.tex"
-
-143
-: case
-#line 17335 "./tex4ht-c.tex"
-
-144
-:
-case
-#line 17338 "./tex4ht-c.tex"
-
-145
-: case
-#line 17341 "./tex4ht-c.tex"
-
-146
-: {
- cond_idv_char( ch );
- x_val += cond_int( ch -
-#line 17332 "./tex4ht-c.tex"
-
-143
- + 1 ); break; }
-case
-#line 17347 "./tex4ht-c.tex"
-
-148
-:
-case
-#line 17350 "./tex4ht-c.tex"
-
-149
-:
-case
-#line 17353 "./tex4ht-c.tex"
-
-150
-:
-case
-#line 17356 "./tex4ht-c.tex"
-
-151
-: {
- cond_idv_char( ch );
- dx_1 = (INTEGER) cond_int( ch -
-#line 17347 "./tex4ht-c.tex"
-
-148
- + 1);
- x_val += dx_1; break; }
-case
-#line 17362 "./tex4ht-c.tex"
-
-153
-:
-case
-#line 17365 "./tex4ht-c.tex"
-
-154
-:
-case
-#line 17368 "./tex4ht-c.tex"
-
-155
-:
-case
-#line 17371 "./tex4ht-c.tex"
-
-156
-: {
- cond_idv_char( ch );
- dx_2 = (INTEGER) cond_int( ch -
-#line 17362 "./tex4ht-c.tex"
-
-153
- + 1);
- x_val += dx_2; break; }
-
-
-#line 5586 "./tex4ht-c.tex"
-
-case
-#line 17374 "./tex4ht-c.tex"
-
-157
-: case
-#line 17377 "./tex4ht-c.tex"
-
-158
-:
-case
-#line 17380 "./tex4ht-c.tex"
-
-159
-: case
-#line 17383 "./tex4ht-c.tex"
-
-160
-: {
- cond_idv_char( ch );
- y_val += cond_int( ch -
-#line 17374 "./tex4ht-c.tex"
-
-157
- + 1);
- break; }
-case
-#line 17389 "./tex4ht-c.tex"
-
-162
-:
-case
-#line 17392 "./tex4ht-c.tex"
-
-163
-:
-case
-#line 17395 "./tex4ht-c.tex"
-
-164
-:
-case
-#line 17398 "./tex4ht-c.tex"
-
-165
-: {
- cond_idv_char( ch );
- dy_1 = (INTEGER) cond_int( ch -
-#line 17389 "./tex4ht-c.tex"
-
-162
- + 1);
- y_val += dy_1; break; }
-case
-#line 17404 "./tex4ht-c.tex"
-
-167
-:
-case
-#line 17407 "./tex4ht-c.tex"
-
-168
-:
-case
-#line 17410 "./tex4ht-c.tex"
-
-169
-:
-case
-#line 17413 "./tex4ht-c.tex"
-
-170
-: {
- cond_idv_char( ch );
- dy_2 = (INTEGER) cond_int( ch -
-#line 17404 "./tex4ht-c.tex"
-
-167
- + 1);
- y_val += dy_2; break; }
-
-
-#line 5613 "./tex4ht-c.tex"
-
-case
-#line 17309 "./tex4ht-c.tex"
-
-132
-:{
- visible_cnt = TRUE; cond_string( ch,4 ); x_val += cond_int(4);
- break;
-}
-case
-#line 17314 "./tex4ht-c.tex"
-
-137
-:{
- visible_cnt = TRUE; cond_string( ch, 8 );
- break;
-}
-
-
-#line 5646 "./tex4ht-c.tex"
-
-case
-#line 17441 "./tex4ht-c.tex"
-
-239
-: case
-#line 17443 "./tex4ht-c.tex"
-
-240
-:
-case
-#line 17445 "./tex4ht-c.tex"
-
-241
-: case
-#line 17447 "./tex4ht-c.tex"
-
-242
-: { long int i;
- int special_nr;
- special_nr = ch;
- if( tex4ht_special( &ch, &i ) ){
- if( ch == '+' ){
-
-#line 5701 "./tex4ht-c.tex"
-
-if( i==0 ){ if( dvi_flag ){ dvi_flag = 0;
-#line 5833 "./tex4ht-c.tex"
-
-if( !visible_cnt ) { U_CHAR str[256];
- (IGNORED) sprintf(str, "--- empty picture --- %sidv[%d] ---\n",
- job_name,page_n);
- (IGNORED) printf("%s", str); (IGNORED) fprintf(log_file, "%s",str); }
-while( stack_depth-- > 0 ){
- idv_char(
-#line 17329 "./tex4ht-c.tex"
-
-142
-); file_n++; }
-
- } }
-else{
- if( dvi_flag ){
-#line 5760 "./tex4ht-c.tex"
-
-cond_idv_char( special_nr );
-cond_idv_int( i, special_nr -
-#line 17441 "./tex4ht-c.tex"
-
-239
- + 1 );
-while( i-- ) cond_idv_char( get_char() );
-visible_cnt = TRUE;
-
- }
- else switch( get_char() ){
- case '+': {
-#line 5740 "./tex4ht-c.tex"
-
-{ U_CHAR str[256], *ch;
- ch = str; while( --i ) *(ch++) = get_char(); *ch = '\0';
- script(font_gif, job_name ,page_n+1, str);
-}
-
-
- dvi_flag = TRUE; dvi_page = TRUE;
-
-#line 5768 "./tex4ht-c.tex"
-
-visible_cnt = FALSE;
-bop_addr = advance_idv_page( bop_addr, cur_font );
-stack_depth = 0;
-set_loc(
-#line 17332 "./tex4ht-c.tex"
-
-143
-, x_val );
-set_loc(
-#line 17374 "./tex4ht-c.tex"
-
-157
-, y_val );
-
- break; }
- case '@': {
-#line 5716 "./tex4ht-c.tex"
-
-while( --i ) (void) putc( get_char(), log_file );
-(IGNORED) putc( '\n', log_file );
-
- break; }
- default: { while( --i ) (void) get_char(); break; }
-} }
-
- }
- else while( i-- ) (void) get_char();
- }else if( dvi_flag ){
-#line 5679 "./tex4ht-c.tex"
-
-visible_cnt = TRUE;
-#line 5684 "./tex4ht-c.tex"
-
-{
- U_CHAR *ch;
- int j;
- ch = special_hd;
- (IGNORED) putc( (unsigned)
-#line 17447 "./tex4ht-c.tex"
-
-242
-, idv_file ); file_n++;
- for(j=4; j--; ){ (IGNORED) putc( *ch, idv_file ); file_n++; ch++; }
- while( *ch ){ (IGNORED) putc( *ch, idv_file ); file_n++; ch++; }
- file_n += (int) i;
- while( i-- ) (IGNORED) putc( get_char(), idv_file );
-}
-
-
-
-
- }else {
-#line 5664 "./tex4ht-c.tex"
-
-if( dvi_page || !page_n ){ dvi_page = FALSE;
-#line 5768 "./tex4ht-c.tex"
-
-visible_cnt = FALSE;
-bop_addr = advance_idv_page( bop_addr, cur_font );
-stack_depth = 0;
-set_loc(
-#line 17332 "./tex4ht-c.tex"
-
-143
-, x_val );
-set_loc(
-#line 17374 "./tex4ht-c.tex"
-
-157
-, y_val );
-
- }
-dvi_flag = TRUE;
-
-#line 5684 "./tex4ht-c.tex"
-
-{
- U_CHAR *ch;
- int j;
- ch = special_hd;
- (IGNORED) putc( (unsigned)
-#line 17447 "./tex4ht-c.tex"
-
-242
-, idv_file ); file_n++;
- for(j=4; j--; ){ (IGNORED) putc( *ch, idv_file ); file_n++; ch++; }
- while( *ch ){ (IGNORED) putc( *ch, idv_file ); file_n++; ch++; }
- file_n += (int) i;
- while( i-- ) (IGNORED) putc( get_char(), idv_file );
-}
-
-
-dvi_flag = FALSE;
-
- }
- break;
-}
-
-
-#line 5800 "./tex4ht-c.tex"
-
-case
-#line 17326 "./tex4ht-c.tex"
-
-141
-: {
- push_stack();
- stack_depth++;
- cond_idv_char( ch );
- break; }
-case
-#line 17329 "./tex4ht-c.tex"
-
-142
-: { INTEGER cur_x, cur_y;
- stack_depth--;
- cur_x = (INTEGER) x_val; cur_y = (INTEGER) y_val; pop_stack();
- if( dvi_flag ){
- if( stack_depth<0 ){ warn_i_int( 24, page_n );
-
-#line 5817 "./tex4ht-c.tex"
-
-cond_idv_char(
-#line 17341 "./tex4ht-c.tex"
-
-146
- );
-idv_int( x_val - cur_x - dx_1 - dx_2 );
-cond_idv_char(
-#line 17356 "./tex4ht-c.tex"
-
-151
- );
-idv_int( dx_1 );
-cond_idv_char(
-#line 17371 "./tex4ht-c.tex"
-
-156
- );
-idv_int( dx_2 );
-cond_idv_char(
-#line 17383 "./tex4ht-c.tex"
-
-160
- );
-idv_int( y_val - cur_y - dy_1 - dy_2 );
-cond_idv_char(
-#line 17398 "./tex4ht-c.tex"
-
-165
- );
-idv_int( dy_1 );
-cond_idv_char(
-#line 17413 "./tex4ht-c.tex"
-
-170
- );
-idv_int( dy_2 );
-cond_idv_char(
-#line 17326 "./tex4ht-c.tex"
-
-141
- ); file_n += 24;
-
- }
- cond_idv_char( ch );
- }
- break; }
-
-
-#line 5854 "./tex4ht-c.tex"
-
-case
-#line 17460 "./tex4ht-c.tex"
-
-246
-:
-case
-#line 17457 "./tex4ht-c.tex"
-
-245
-:
-case
-#line 17454 "./tex4ht-c.tex"
-
-244
-:
-case
-#line 17451 "./tex4ht-c.tex"
-
-243
-: { idv_char( ch ); file_n++;
- for( i=14; i; i-- ){ ch = get_char(); idv_char( ch ); file_n++; }
- i = ch; i += ch = get_char(); idv_char( ch ); file_n++;
- while( i-- ){ idv_copy(); }
- break; }
-
-
-#line 5873 "./tex4ht-c.tex"
-
-case
-#line 17429 "./tex4ht-c.tex"
-
-235
-:
-case
-#line 17432 "./tex4ht-c.tex"
-
-236
-:
-case
-#line 17435 "./tex4ht-c.tex"
-
-237
-:
-case
-#line 17438 "./tex4ht-c.tex"
-
-238
-: { int i;
- idv_char( ch ); file_n++;
- cur_font[0] = ch -
-#line 17429 "./tex4ht-c.tex"
-
-235
- + 2;
- cur_font[1] = ch;
- for( i=2; i <= cur_font[0]; i++ ){
- ch = get_char(); idv_char( ch );
- cur_font[i] = ch; file_n++; }
- break; }
-
-
-#line 5887 "./tex4ht-c.tex"
-
-default: {
- if( (ch <
-#line 17417 "./tex4ht-c.tex"
-
-171
-) || (ch >
-#line 17423 "./tex4ht-c.tex"
-
-234
-) ){
- if(
-#line 8971 "./tex4ht-c.tex"
-
-(version_id ==
-#line 2292 "./tex4ht-c.tex"
-
-10
-
-)
-&&
-(
- (ch ==
-#line 17484 "./tex4ht-c.tex"
-
-251
-
-)
- ||
- (ch ==
-#line 17490 "./tex4ht-c.tex"
-
-252
-
-)
- ||
- (ch ==
-#line 17496 "./tex4ht-c.tex"
-
-253
-
-)
- ||
- (ch ==
-#line 17501 "./tex4ht-c.tex"
-
-254
-
-)
-)
-
- ){
-
-#line 8993 "./tex4ht-c.tex"
-
-switch( ch ){
- case
-#line 17490 "./tex4ht-c.tex"
-
-252
-
-:
-
-#line 9021 "./tex4ht-c.tex"
-
-{ int i, flags;
-
-(void) get_unt(4);
-(void) get_unt(4);
-
- flags = (INTEGER) get_unt(2);
-
-
-
-if ((flags &
-#line 8985 "./tex4ht-c.tex"
-
-0x0002
-
-) || (flags &
-#line 8989 "./tex4ht-c.tex"
-
-0x0001
-
-)) {
-
-for (
-i =
- (INTEGER) get_unt(1)
-+ (INTEGER) get_unt(1)
- + (INTEGER) get_unt(1)
-;
-i>0;
-i--
-){ (void) get_unt(1); }
-
-
-
-
-
- if( flags &
-#line 8955 "./tex4ht-c.tex"
-
-0x0200
-
- ){
- (void) get_unt(4);
- }
-
-if( flags &
-#line 8959 "./tex4ht-c.tex"
-
-0x0800
-
- ){
- int n = (INTEGER) get_unt(2);
- for (i = 0; i < n; ++i) {
- (void) get_unt(4);
- }
- for (i = 0; i < n; ++i) {
- (void) get_int(4);
-} }
-
-}
-
-}
-
-
- break;
- case
-#line 17501 "./tex4ht-c.tex"
-
-254
-
-:
-
-#line 9006 "./tex4ht-c.tex"
-
-{
- int i, glyphCount;
- (void) get_unt(4);
- glyphCount = (INTEGER) get_unt(2);
- for( i = 0; i < glyphCount; ++i ){
- (void) get_int(4);
- }
- for (i = 0; i < glyphCount; ++i){
- (void) get_unt(2);
- }
-}
-
-
- break;
- default:
- printf(" ===> ---------- xdv's idv ------------ <==== %d\n" , ch);
-}
-
-
- } else { err_i(23); }
- }
- else { idv_char( ch ); file_n++;
- cur_font[0] = 1; cur_font[1] = ch; }
- break;
-}
-
- }
-
- }
-
-#line 5420 "./tex4ht-c.tex"
-
-if( errCode > 0 ){
- (IGNORED) fprintf(log_file, "tex4ht.c error: %d\n", errCode);
-}
-
-
-
-#line 5913 "./tex4ht-c.tex"
-
-{ int ch, i, mag;
- U_CHAR str[256];
- (IGNORED) fprintf(log_file, "%s", begin_char_gif);
- dvi_flag = TRUE;
- for( cur_fnt = font_tbl_size; cur_fnt--; ){
-
-#line 8815 "./tex4ht-c.tex"
-
-(IGNORED) fprintf(log_file, lg_font_fmt,
- font_tbl[cur_fnt].family_name,
- font_tbl[cur_fnt].font_size,
- (int)( font_tbl[cur_fnt].design_sz * 100 / 655360 / 10),
- font_tbl[cur_fnt].mag);
-
-
- for( i = font_tbl[cur_fnt].char_l - font_tbl[cur_fnt].char_f + 1;
- i--; )
- if( get_bit( font_tbl[cur_fnt].gif_on, i) ){
- bop_addr = advance_idv_page( bop_addr, cur_font );
- set_loc(
-#line 17332 "./tex4ht-c.tex"
-
-143
-, (long int) mid_page_x );
- set_loc(
-#line 17374 "./tex4ht-c.tex"
-
-157
-, (long int) mid_page_y );
-
-#line 5983 "./tex4ht-c.tex"
-
-{ INTEGER num;
- num = font_tbl[cur_fnt].num;
- if( num <=
-#line 17426 "./tex4ht-c.tex"
-
-63
- )
- cond_idv_char( (int) (num +
-#line 17417 "./tex4ht-c.tex"
-
-171
-) );
- else if( dvi_flag ){
- if( (num < 0) || (num > 16777215L) ) idv_int(
-#line 17438 "./tex4ht-c.tex"
-
-238
-);
- else if( num < 256 ) { idv_char(
-#line 17429 "./tex4ht-c.tex"
-
-235
-); file_n++; }
- else if( num < 65536L ) int_to_dvi((long int)
-#line 17432 "./tex4ht-c.tex"
-
-236
-,2);
- else int_to_dvi((long int)
-#line 17435 "./tex4ht-c.tex"
-
-237
-,3);
- cond_idv_char( (int) num );
-} }
-
-
-
-#line 5941 "./tex4ht-c.tex"
-
-if( (ch = i + font_tbl[cur_fnt].char_f) > 127 ) {
- if( ch < 256 ) cond_idv_char(133); else warn_i(23); }
-cond_idv_char( ch );
-mag = (int) ((double) font_tbl[cur_fnt].scale /
- font_tbl[cur_fnt].design_sz * 10 );
-
-#line 10901 "./tex4ht-c.tex"
-
-if( !dos_file_names ){
- if( mag == 10 ) (IGNORED) sprintf(str, "%s-%x%s",
- font_tbl[cur_fnt].name, ch, gif);
- else (IGNORED) sprintf(str, "%s-%x-%x%s",
- font_tbl[cur_fnt].name, mag, ch, gif);
-}
-
-
-#line 10929 "./tex4ht-c.tex"
-
-
-if( dos_file_names ){
- (IGNORED) strcpy((char *) str, (char *) font_tbl[cur_fnt].name);
- dos_gif_file(str, mag, ch);
- strct(str,gif);
-}
-
-
-
-script(font_gif, job_name ,page_n, str);
-
- }
- }
- (IGNORED) printf("Execute script `%slg'\n",
- job_name);
- (IGNORED) fclose( log_file );
-}
-
-
-
-#line 5494 "./tex4ht-c.tex"
-
-idv_char(
-#line 17329 "./tex4ht-c.tex"
-
-142
-); file_n += 2;
-idv_char(
-#line 17323 "./tex4ht-c.tex"
-
-140
- );
-(IGNORED) fseek(dvi_file, begin_postamble,
-#line 2174 "./tex4ht-c.tex"
-
-0
-);
-begin_postamble = file_n;
-idv_char(
-#line 17466 "./tex4ht-c.tex"
-
-248
- ); file_n += 5;
-idv_int( bop_addr ); (IGNORED) fseek(dvi_file, 5L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-for( i = 20; i; i-- ) idv_copy();
-
-
-#line 5504 "./tex4ht-c.tex"
-
-i = (INTEGER) get_int(2) + 1; idv_char( (int) i >> 8 );
-idv_char( (int) i & 0xFF ); file_n += 2;
-if( !page_n ) page_n++; idv_char( page_n >> 8 );
-idv_char( (int) page_n & 0xFF ); file_n += 2;
-(IGNORED) fseek(dvi_file, 2L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-);
-
-
-#line 5512 "./tex4ht-c.tex"
-
-eof_op_n -= 32;
-while( --eof_op_n ) idv_copy();
-idv_int(begin_postamble);
-(IGNORED) fseek(dvi_file, 4L,
-#line 2177 "./tex4ht-c.tex"
-
-1
-); file_n += 4;
-
-#line 5462 "./tex4ht-c.tex"
-
-ch = get_char();
-if( id_version != -1 ){ ch = id_version; }
-idv_char( ch );
-
-
-for( i = 8 - file_n % 4; i; i-- ) idv_char(
-#line 17420 "./tex4ht-c.tex"
-
-223
- );
-
-
-
- }
-
-
- return 0;
-}
-
-