1 #ifndef _MAIN_H_INCLUDED 2 #define _MAIN_H_INCLUDED 1 3 4 #if defined(UNIX) 5 #define ENVSEP ':' 6 #define PATHSEP '/' 7 #define HAS_STRDUP 8 #endif 9 10 #if defined(MSDOS) || defined(OS2) 11 #define ENVSEP ';' 12 #define PATHSEP '\\' 13 #endif 14 15 #if defined(VMS) 16 #define ENVSEP ',' 17 #define PATHSEP '' 18 #endif 19 20 #ifdef HAS_STRDUP 21 #else 22 #define strdup my_strdup 23 #endif 24 25 #ifndef SEEK_SET 26 #define SEEK_SET 0 27 #define SEEK_CUR 1 28 #endif 29 30 #define ERROR 0 31 #define WARNING 1 32 33 #define MAXCOMMANDLEN 100 34 35 /* available values for alignment */ 36 #define LEFT 'l' 37 #define RIGHT 'r' 38 #define CENTERED 'c' 39 #define JUSTIFIED 'j' 40 41 #define PATHMAX 255 42 43 /*** error constants ***/ 44 #include <assert.h> 45 #include <stdio.h> 46 #include <stdint.h> 47 48 /*** handy boolean type definition ***/ 49 #ifndef TRUE 50 typedef enum { FALSE = 0, 51 TRUE } boolean; 52 #endif 53 54 /*** interpret comment lines that follow the '%' with this string ***/ 55 extern const char * InterpretCommentString; 56 57 void diagnostics(int level, char *format,...); 58 59 extern char *g_aux_name; 60 extern char *g_toc_name; 61 extern char *g_lof_name; 62 extern char *g_lot_name; 63 extern char *g_bbl_name; 64 extern char *g_home_dir; 65 extern char *progname; /* name of the executable file */ 66 67 extern int GermanMode; 68 extern int FrenchMode; 69 extern int RussianMode; 70 extern int CzechMode; 71 extern int pagenumbering; 72 extern int headings; 73 74 extern int g_verbosity_level; 75 extern int RecursionLevel; 76 77 /* table & tabbing variables */ 78 extern long pos_begin_kill; 79 extern int g_tab_counter; 80 extern int g_equation_column; 81 82 extern int twocolumn; 83 extern int titlepage; 84 85 extern int g_processing_equation; 86 extern int g_processing_preamble; 87 extern int g_processing_figure; 88 extern int g_processing_table; 89 extern int g_processing_tabbing; 90 extern int g_processing_tabular; 91 extern int g_processing_eqnarray; 92 extern int g_processing_arrays; 93 extern uint16_t g_dots_per_inch; 94 95 extern int g_document_type; 96 extern int g_document_bibstyle; 97 98 extern int g_equation_number; 99 extern int g_escape_parens; 100 extern int g_show_equation_number; 101 extern int g_enumerate_depth; 102 extern int g_suppress_equation_number; 103 extern int g_aux_file_missing; 104 extern int g_bbl_file_missing; 105 extern int g_graphics_package; 106 extern int g_amsmath_package; 107 108 extern char *g_figure_label; 109 extern char *g_table_label; 110 extern char *g_equation_label; 111 extern char *g_section_label; 112 extern char *g_config_path; 113 extern char *g_script_dir; 114 extern char g_field_separator; 115 extern char *g_preamble; 116 117 extern double g_png_equation_scale; 118 extern double g_png_figure_scale; 119 extern int g_latex_figures; 120 extern int g_endfloat_figures; 121 extern int g_endfloat_tables; 122 extern int g_endfloat_markers; 123 124 extern int g_equation_inline_rtf; 125 extern int g_equation_display_rtf; 126 extern int g_equation_inline_bitmap; 127 extern int g_equation_display_bitmap; 128 extern int g_equation_comment; 129 extern int g_equation_raw_latex; 130 extern int g_equation_inline_eps; 131 extern int g_equation_display_eps; 132 extern int g_equation_mtef; 133 134 extern int g_figure_include_direct; 135 extern int g_figure_include_converted; 136 extern int g_figure_comment_direct; 137 extern int g_figure_comment_converted; 138 139 extern int g_tabular_display_rtf; 140 extern int g_tabular_display_bitmap; 141 142 extern int g_little_endian; 143 extern int g_tableofcontents; 144 145 void fprintRTF(char *format, ...); 146 void putRtfCharEscaped(char cThis); 147 void putRtfStrEscaped(const char * string); 148 char *getTmpPath(void); 149 char *my_strdup(const char *str); 150 FILE *my_fopen(char *path, char *mode); 151 152 void debug_malloc(void); 153 154 #endif 155