File: constant.h

package info (click to toggle)
udo 6.4.1-9
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,680 kB
  • sloc: ansic: 42,702; makefile: 81; cpp: 19
file content (433 lines) | stat: -rw-r--r-- 13,437 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
#ifndef CONSTANT_H
#define CONSTANT_H

/*	############################################################
	# @(#) constant.h
	# @(#)
	# @(#) Copyright (c) 1995-2001 by Dirk Hagedorn
	# @(#) Dirk Hagedorn (udo@dirk-hagedorn.de)
	#
	# This program is free software; you can redistribute it and/or
	# modify it under the terms of the GNU General Public License
	# as published by the Free Software Foundation; either version 2
	# of the License, or (at your option) any later version.
	# 
	# This program is distributed in the hope that it will be useful,
	# but WITHOUT ANY WARRANTY; without even the implied warranty of
	# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	# GNU General Public License for more details.
	# 
	# You should have received a copy of the GNU General Public License
	# along with this program; if not, write to the Free Software
	# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
	# 
	############################################################	*/

#define	TOASC			0		/* ASCII					*/
#define	TOMAN			1		/* ASCII (formatiert)		*/
#define	TOSTG			2		/* ST-Guide-Quelltext		*/
#define	TOTEX			3		/* LaTeX					*/
#define	TORTF			4		/* RTF						*/
#define	TOPCH			5		/* PC-HELP					*/
#define	TOHTM			6		/* HTML (World Wide Web)	*/
#define	TOWIN			7		/* Windows-Hilfe			*/
#define	TOINF			8		/* GNU-Texinfo				*/
#define	TOTVH			9		/* Turbo-Vision-Help		*/
#define	TOLDS			10		/* Linuxdoc-SGML			*/
#define	TOAQV			11		/* Apple-QuickView			*/	/* PL6    */
#define	TOHPH			12		/* HP Helptag SGML			*/	/* PL10   */
#define	TOLYX			13		/* LyX						*/	/* PL13   */
#define	TONRO			14		/* nroff, was auch immer	*/	/* PL15   */
#define	TOSRC			15		/* C-Sourcecode				*/	/* PL16   */
#define	TOSRP			16		/* Pascal-Sourcecode		*/	/* Pl16   */
#define	TOIPF			17		/* OS/2-IPF-Format			*/	/* r6pl2  */
#define	TODRC			18		/* Dave's Readme Compiler	*/	/* r6pl2  */
#define	TOMHH			19		/* HTMLHelp					*/	/* r6pl2  */
#define	TOPDL			20		/* PDFLaTeX					*/	/* r6pl8  */
#define	TOWH4			21		/* WinHelp4					*/	/* r6pl8  */
#define	TOUDO			22		/* UDO-Format				*/	/* r6pl9  */
#define	TOKPS			23		/* Krueger's PostScript		*/	/* r6pl11 */
#define	TOAMG			24		/* AmigaGuide				*/	/* r6pl12 */
#define	MAXDESTTYPE		25		/* Anzahl Ausgabeformate	*/

#define	TOGER			0		/* Deutsch					*/
#define	TOENG			1		/* Englisch					*/
#define	TOFRA			2		/* Franzoesisch				*/
#define	TOITA			3		/* Italienisch				*/
#define	TOSPA			4		/* Spanisch					*/
#define	TOSWE			5		/* Schwedisch				*/
#define	TOPOR			6		/* Portugiesisch			*/
#define	TODUT			7		/* Hollaendisch				*/
#define	TODAN			8		/* Daenisch					*/
#define	TONOR			9		/* Norwegisch				*/
#define	TOFIN			10		/* Finnisch					*/

#define	MAXDESTLANG		7		/* Anzahl Ausgabesprachen	*/


/*	############################################################
	# Konstanten fuer Dateitypen, die in myFwopen() und myFwbopen()
	# aus file.h verwendet werden.
	############################################################	*/

#define	FTGIF			32		/* Filetype GIF					*/	/* fuer myFwopen() */
#define	FTIMG			33		/* Filetype GEM-Image			*/
#define	FTEPS			34		/* Filetype EPS					*/
#define	FTJPG			35		/* Filetype JPEG				*/
#define	FTBMP			36		/* Filetype Windows-Bitmap		*/
#define	FTHPJ			37		/* Filetype WinHelp-Project		(ASCII)	*/
#define	FTHHP			38		/* Filetype HTML-Help-Project	(ASCII)	*/
#define	FTHHK			39		/* Filetype HTML-Help-Index		(HTML)	*/
#define	FTHHC			40		/* Filetype HTML-Help-Contents	(HTML)	*/
#define	FTCNT			41		/* Filetype WinHelp-Contents	(ASCII)	*/


/*	############################################################
	#	Umgebungen
	############################################################	*/

#define	MAXENVLEVEL		10		/* max. Umgebungstiefe	*/


#define	ENV_NONE			0x00	/* keine Umgebung		*/	/*r6pl2*/
#define	ENV_ITEM			0x01	/* itemize				*/
#define	ENV_ENUM			0x02	/* enumerate			*/
#define	ENV_DESC			0x03	/* description			*/
#define	ENV_LIST			0x04	/* ?list				*/
#define	ENV_CENT			0x05	/* center				*/
#define	ENV_QUOT			0x06	/* quote				*/
#define	ENV_RIGH			0x07	/* flushright			*/
#define	ENV_LEFT			0x08	/* flushleft			*/
									/* Platz fuer neue		*/
#define	ENV_VERBATIM		0x10	/* verbatim				*/	/*r6pl2*/
#define	ENV_RAW				0x11	/* raw					*/	/*r6pl2*/
#define	ENV_TABLE			0x12	/* table				*/	/*r6pl2*/
#define	ENV_SOURCECODE		0x13	/* sourcecode			*/	/*r6pl2*/
#define	ENV_COMMENT			0x14	/* comment				*/	/*r6pl2*/
#define	ENV_LINEDRAW		0x15	/* linedraw				*/	/*r6pl5*/
#define	ENV_PREFORMATTED	0x16	/* wie verbatim			*/	/*r6pl5*/

#define	LIST_NORMAL		0		/* Listen-Typ			*/
#define	LIST_BOLD		1
#define	LIST_ITALIC		2
#define	LIST_TYPEWRITER	3

#define	TEX_NONE		0		/* default				*/
#define	TEX_LINDNER		1		/* Lindner-TeX (Atari)	*/
#define	TEX_STRUNK		2		/* CS-TeX (Atari)		*/
#define	TEX_EMTEX		3		/* emTeX (DOS, OS/2)	*/
#define	TEX_MIKTEX		4		/* MikTeX (Win32)		*/
#define	TEX_TETEX		5		/* teTeX (UN*X)			*/

#define	ALIGN_CENT		0		/* alignment-Befehle	*/
#define	ALIGN_LEFT		1
#define	ALIGN_RIGH		2

#define	POS_LEFT		0		/* Frames-Positionen	*/
#define	POS_RIGHT		1
#define	POS_TOP			2
#define	POS_BOTTOM		3

#define	PASS1			0
#define	PASS2			1
#define	PASSU			2

#define	LINELEN			4092	/* max. Zeilenlaenge */
#define	MAX_TOKEN_LEN	199		/* max. Tokenlaenge, v6.3.9: 199 (alt: 128) */
#define	MAX_TOKENS		800		/* max. Worte in einem Absatz */

#define	CNNS_LEN		LINELEN /* 6.3.11 [vj] needed for current_node_name_sys (see toc.h) */

#define	MAXZEILE		70		/* max. Laenge einer Ausgabezeile */
#define	SHORTZEILE		64		/* meckern bei weniger Zeichen */

#define	MAXFILECOUNTER	16		/* max. gleichzeitig geoeffnete Files */


#ifdef __TOS__
#define	MAXTOCS			16383	/* max. Eintraege im Inhaltsverzeichnis r6pl13: vorher 4096 */
#define	MAXLABELS		32767	/* max. Labels (!label) r6pl13: vorher 8192*/
#else
#define	MAXTOCS			32768	/* max. Eintraege im Inhaltsverzeichnis r6pl13: vorher 4096 */
#define	MAXLABELS		65536	/* max. Labels (!label) r6pl13: vorher 8192*/
#endif
								
#define	MAXHYPHEN		4096	/* max. Trennregeln mit !hyphen */	/* PL6 */

#if 0
#define	MAXMACROS		130		/* max. Makros (!macro) */
#define	MAXDEFS			130		/* max. Makros (!define) */
#else
#define	MAXMACROS		1024	/* max. Makros (!macro) */
#define	MAXDEFS			1024	/* max. Makros (!define) */
#endif

#define MAX_UDOSYMBOLS		128		/* r6pl5: vorher 32 */
#define	MAX_UDOSYMBOL_LEN	32		/* PL10 */


#define	OFFSET_PHOLD	33		/* ESC/Magic/#+offset/ESC	*/
#define	MAXPHOLDS		300		/* max. Platzhalter pro Absatz r6.3.16[vj]: changed from 200 to 300 */

#define	OFFSET_SPECCMD	33		/* ESC/Magic/#+offset/ESC	*/
#define	MAXSPECCMDS		200		/* max. Platzhalter pro Absatz */

#define	OFFSET_REF		33		/* ESC/Magic/#+offset/ESC	*/
#define	MAXREFERENCES	200		/* maximal soviel Referenzen pro Absatz */

#define	MAXSILBEN		32		/* max. Silben in einem Wort */


/*	############################################################
	# Ein paar aussagekraeftigere Makros
	############################################################	*/

#define	NODE_NORMAL		FALSE
#define	NODE_POPUP		TRUE

#define	NODE_VISIBLE	FALSE
#define	NODE_INVISIBLE	TRUE

#define	VERB_NORMAL		0
#define	VERB_SMALL		1
#define	VERB_TINY		2
#define	VERB_LARGE		3
#define	VERB_HUGE		4

/*	############################################################
	# Index-Konstanten
	############################################################	*/
#define	GIF_HM_INDEX	0
#define	GIF_UP_INDEX	1
#define	GIF_RG_INDEX	2
#define	GIF_LF_INDEX	3
#define	GIF_NOHM_INDEX	4
#define	GIF_NOUP_INDEX	5
#define	GIF_NORG_INDEX	6
#define	GIF_NOLF_INDEX	7
#define	GIF_GER_INDEX	8
#define	GIF_ENG_INDEX	9

#define	HTML_COLOR_BACK				0
#define	HTML_COLOR_TEXT				1
#define	HTML_COLOR_LINK				2
#define	HTML_COLOR_VLINK			3
#define	HTML_COLOR_ALINK			4
#define	HTML_MODERN_COLOR_BACK		5
#define	HTML_MODERN_COLOR_TEXT		6
#define	HTML_MODERN_COLOR_LINK		7
#define	HTML_MODERN_COLOR_VLINK		8
#define	HTML_MODERN_COLOR_ALINK		9

/* New in r6pl16 [NHz] */
#define HTML_OLD	0
#define HTML_STRICT	1
#define HTML_TRANS	2
#define HTML_FRAME	3
#define XHTML_STRICT	4
#define XHTML_TRANS	5
#define XHTML_FRAME	6

/*	############################################################
	# Dateinamen und Sonstiges
	############################################################	*/
#define	GIF_HM_NAME		"udo_hm.gif"
#define	GIF_UP_NAME		"udo_up.gif"
#define	GIF_LF_NAME		"udo_lf.gif"
#define	GIF_RG_NAME		"udo_rg.gif"
#define	GIF_NOHM_NAME	"udo_nohm.gif"
#define	GIF_NOUP_NAME	"udo_noup.gif"
#define	GIF_NOLF_NAME	"udo_nolf.gif"
#define	GIF_NORG_NAME	"udo_norg.gif"
#define	GIF_TP_NAME		"udo_tp.gif"
#define	GIF_FC_NAME		"udo_fc.gif"
#define	GIF_FO_NAME		"udo_fo.gif"
#define	GIF_FS_NAME		"udo_fs.gif"
#define	GIF_MW_NAME		"udo_mw.gif"
#define	GIF_GER_NAME	"udo_ger.gif"
#define	GIF_ENG_NAME	"udo_eng.gif"

#define	BMP_FC_NAME		"udo_fc.bmp"
#define	BMP_FO_NAME		"udo_fo.bmp"
#define	BMP_MW_NAME		"udo_mw.bmp"
#define	IMG_FC_NAME		"udo_fc.img"
#define	IMG_FO_NAME		"udo_fo.img"
#define	IMG_MW_NAME		"udo_mw.img"

#define	WIN_TITLE_NODE_NAME	"UDON0000"	/* vgl. chr.c: node2NrWinhelp() */
#define	WIN_UDO_NODE_NAME	"UDONFFFF"	/* vgl. chr.c: node2NrWinhelp() */


/*	############################################################
	# Hintergrundfarben
	############################################################	*/
#define	BC_BLACK	0
#define	BC_GRAY		1
#define	BC_SILVER	2
#define	BC_WHITE	3
#define	BC_MAROON	4
#define	BC_RED		5
#define	BC_PURPLE	6
#define	BC_FUCHSIA	7
#define	BC_GREEN	8
#define	BC_LIME		9
#define	BC_OLIVE	10
#define	BC_YELLOW	11
#define	BC_NAVY		12
#define	BC_BLUE		13
#define	BC_TEAL		14
#define	BC_AQUA		15
#define	BC_NONE		16



/*	############################################################
	# Sonderzeichen
	############################################################	*/
#define	META_C		'!'			/* Metazeichen					*/
#define	META_S		"!"

#define	QUOTE_C		'/'			/* Quotezeichen					*/
#define	QUOTE_S		"/"

#define	VERB_S		"+"			/* Default-Zeichen fuer \verb...*/
#define	VERB_C		'+'			/* Default-Zeichen fuer \verb...*/


/*	############################################################
	# Interne ESC-Sequenzen
	#
	# markiert werden Schriftstile, Referenzen, Platzhalter,
	# Trennzeichen, feste Leerzeichen
	#
	############################################################	*/

#define	C_STYLE_MAGIC		'\001'
#define	ESC_STYLE_MAGIC		"\033\001"

#define	C_REF_MAGIC			'\002'
#define	ESC_REF_MAGIC		"\033\002"

#define	C_PHOLD_MAGIC		'\003'
#define	ESC_PHOLD_MAGIC		"\033\003"

#define	C_SPECCMD_MAGIC		'\004'
#define	ESC_SPECCMD_MAGIC	"\033\004"

#define	C_COLOR_ON_MAGIC	'\005'
#define	ESC_COLOR_ON_MAGIC	"\033\005"

#define	C_COLOR_OFF_MAGIC	'\006'
#define	ESC_COLOR_OFF_MAGIC	"\033\006"

#define	TEMPO_S			"\033\007\001\033"		/* temporaere Zeichen	*/
#define	TEMPO_S2		"\033\007\002\033"		/* temporaere Zeichen	*/
#define	TEMPO_S_LEN		4
#define	TEMPO_S2_LEN	4

/* New in V6.4.1 [NHz] */
#define KPSPO_S		"\033\007\003\033"		/* Parenthis for Postscript */
#define KPSPO_S_LEN		4
#define KPSPC_S		"\033\007\004\033"
#define KPSPC_S_LEN		4
#define KPSEO_S		"\033\007\005\033"
#define KPSEO_S_LEN		4
#define KPSEC_S		"\033\007\006\033"
#define KPSEC_S_LEN		4

#define	NBSP_C			'\027'		/* internes festes Leerzeichen	*/
#define	NBSP_S			"\027"
#define	NBSP_S_LEN		1

#define	TILDE_C			'\030'		/* interne Tilde				*/
#define	TILDE_S			"\030"
#define	TILDE_S_LEN		1

#define	INDENT_C		'\031'		/* internes festes Leerzeichen	*/
#define	INDENT_S		"\031"		/* fuer Einrueckungen			*/
#define	INDENT_S_LEN	1

#define	DIVIS_C			'\032'		/* internes Trennzeichen		*/
#define	DIVIS_S			"\032"
#define	DIVIS_S_LEN		1


#define	ESC_C			'\033'		/* Escape-Zeichen = \e			*/
#define	ESC_S			"\033"


/*	############################################################
	# Umlaute
	############################################################	*/

#ifdef __TOS__
	#define	BETA_C		'\341'		/* IBM-SZ (Beta) */
	#define	BETA_S		"\341"
	#define	BETA_S_LEN	1
	#define	ALPHA_S		"\340"
	#define	ALPHA_S_LEN	1
	#define COPY_S		"\275"
	#define	COPY_S_LEN	1
#endif	/* __TOS__ */


#ifdef __MSDOS__
	#define	BETA_C		'\341'		/* IBM-SZ (Beta) */
	#define	BETA_S		"\341"
	#define	BETA_S_LEN	1
	#define	ALPHA_S		"\340"
	#define	ALPHA_S_LEN	1
	#define COPY_S		"\275"
	#define	COPY_S_LEN	1
#endif	/* __MSDOS__ */


#ifdef __HPUX_ROMAN8__
	#define	BETA_C		'\336'
	#define	BETA_S		"beta"
	#define	BETA_S_LEN	4
	#define	ALPHA_S		"alpha"
	#define	ALPHA_S_LEN	5
	#define	COPY_S		"(c)"
	#define	COPY_S_LEN	3
#endif	/* __HPUX_ROMAN8__ */


#ifdef __NEXTSTEP__
	#define	BETA_C		'\373'	/* kein Beta, daher sz nehmen */
	#define	BETA_S		"\373"
	#define	BETA_S_LEN	1
	#define	ALPHA_S		"alpha"
	#define	ALPHA_S_LEN	5
	#define COPY_S		"\240"
	#define	COPY_S_LEN	1
#endif	/* __MSDOS__ */


#if defined(__MACOS__) || defined(__MACOSX__) || defined(__BEOS__)
	#define	BETA_C		'\247'		/* kein Beta, daher sz nehmen */
	#define	BETA_S		"\247"
	#define	BETA_S_LEN	1
	#define	ALPHA_S		"alpha"		/* kein Alpha */
	#define	ALPHA_S_LEN	5
	#define	COPY_S		"\251"
	#define	COPY_S_LEN	1
#endif	/* __MACOS__ */


#if USE_LATIN1_CHARSET
	#define	BETA_C		'\337'
	#define	BETA_S		"beta"
	#define	BETA_S_LEN	4
	#define	ALPHA_S		"alpha"
	#define	ALPHA_S_LEN	5
	#define	COPY_S		"(c)"
	#define	COPY_S_LEN	3
#endif	/* USE_LATIN1_CHARSET */


/*	############################################################
	# constant.h
	############################################################	*/

#endif /* CONSTANT_H */