summaryrefslogtreecommitdiff
path: root/dviware/dvi2tty/dvi2tty.h
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /dviware/dvi2tty/dvi2tty.h
Initial commit
Diffstat (limited to 'dviware/dvi2tty/dvi2tty.h')
-rw-r--r--dviware/dvi2tty/dvi2tty.h172
1 files changed, 172 insertions, 0 deletions
diff --git a/dviware/dvi2tty/dvi2tty.h b/dviware/dvi2tty/dvi2tty.h
new file mode 100644
index 0000000000..c77eaa56c7
--- /dev/null
+++ b/dviware/dvi2tty/dvi2tty.h
@@ -0,0 +1,172 @@
+/*
+ * dvi2tty
+ * Copyright (C) 2003 Marcel J.E. Mol <marcel@mesa.nl>
+ *
+ * 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 VERSION "6.0.0"
+
+#define Progname "dvi2tty"
+#define Copyright "Copyright (C) 1984, 1985, 1986 Svante Lindahl.\n\
+Copyright (C) 1989-2010 M.J.E. Mol, MESA Consulting B.V."
+
+
+#if defined(KPATHSEA)
+# define NO_DEBUG 1
+# include <kpathsea/config.h>
+# include <kpathsea/readable.h>
+#if defined(WIN32)
+# include <kpathsea/variable.h>
+#endif
+# include <sys/types.h>
+# include <sys/stat.h>
+#else
+# define TRUE 1
+# define FALSE 0
+#endif
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+#if defined(MSDOS) || (defined(WIN32) && !defined(__MINGW32__))
+# include <malloc.h>
+#else
+# if !defined(THINK_C)
+# include <unistd.h>
+# endif
+#endif
+
+#define nil NULL
+
+/*
+ * Define the maximum width of the terminal
+ * (this is also used to define the with of the line structure in dvistuff.c)
+ */
+#define MAXTERMWIDTH 332
+
+#include <ptexenc/ptexenc.h>
+#include <ptexenc/unicode.h>
+
+/* internal encoding for NTT JTeX : "euc" */
+#define JTEX_INTERNAL_ENC "euc"
+
+/* internal encoding for ASCII pTeX : "euc" or "sjis" */
+#define PTEX_INTERNAL_ENC "euc"
+
+/* internal encoding for upTeX : "uptex" */
+#define UPTEX_INTERNAL_ENC "uptex"
+
+/*
+ * ERROR CODES , don't start with 0
+ */
+
+#define illop 1 /* illegal op-code */
+#define stkof 2 /* stack over-flow */
+#define stkuf 3 /* stack under-flow */
+#define stkrq 4 /* stack requirement */
+#define lnerq 5 /* line allocation */
+#define badid 6 /* id is not right */
+#define bdsgn 7 /* signature is wrong */
+#define fwsgn 8 /* too few signatures */
+#define nopre 9 /* no pre-amble where expected */
+#define nobop 10 /* no bop-command where expected */
+#define nopp 11 /* no postpost where expected */
+#define bdpre 12 /* unexpected preamble occured */
+#define bdbop 13 /* unexpected bop-command occured */
+#define bdpst 14 /* unexpected post-command occured */
+#define bdpp 15 /* unexpected postpost */
+#define nopst 16 /* no post-amble where expected */
+#define illch 17 /* character code out of range */
+#define filop 18 /* cannot access file */
+#define filcr 19 /* cannot creat file */
+#if !defined(MSDOS)
+#define pipcr 20 /* cannot creat pipe */
+#endif
+
+
+
+/*
+ * Type definitions
+ */
+
+typedef char bool;
+
+typedef struct prlistptr { /* list of pages selected for output */
+ int pag; /* number of pages */
+ bool all; /* pages in interval selected */
+ struct prlistptr *prv; /* previous item in list */
+ struct prlistptr *nxt; /* next item in list */
+} printlisttype;
+
+
+
+/*
+ * Variable definitions
+ */
+
+extern bool outputtofile; /* output to file or stdout(dvi2tty.c)*/
+extern bool pageswitchon; /* user-set pages to print(dvistuff.c)*/
+extern bool sequenceon; /* not TeX pagenrs (dvistuff.c) */
+extern bool scascii; /* Scand. nat. chars (dvistuff.c) */
+extern bool latin1; /* latin1 chars (dvistuff.c) */
+extern bool utf8; /* print by utf8 encoding (dvistuff.c) */
+extern bool noligaturefi; /* do not use ligature for ff,fi,fl,ffi,ffl (dvistuff.c) */
+extern bool accent; /* Output accent stuff(dvistuff.c) */
+extern bool ttfont; /* tt font assumed (dvistuff.c) */
+extern bool jautodetect; /* Autodetect NTT jTeX, ASCII pTeX and upTeX (dvistuff.c) */
+extern bool nttj; /* NTT jTeX font support (dvistuff.c) */
+extern bool asciip; /* ASCII pTeX font support (dvistuff.c) */
+extern bool uptex; /* upTeX font support (dvistuff.c) */
+extern bool japan; /* japanized TeX font support (dvistuff.c) */
+extern bool noffd; /* output ^L or formfeed (dvistuff.c) */
+extern bool printfont; /* include font switches (dvistuff.c) */
+extern bool compose; /* try to compose a combining character sequence (dvistuff.c) */
+extern bool allchar; /* output all characters (dvistuff.c) */
+
+extern printlisttype *currentpage; /* current page to print (dvi2tty.c) */
+extern printlisttype *firstpage; /* first page selected (dvi2tty.c) */
+extern printlisttype *lastpage; /* last page selected (dvi2tty.c) */
+
+extern int ttywidth; /* screen width (dvi2tty.c) */
+extern int espace; /* extra screen width (dvi2tty.c) */
+extern long foo; /* temporary 'register' (dvi2tty.c) */
+extern long lineheight; /* height of a line (dvistuff.c) */
+extern int opcode; /* dvi opcode (dvistuff.c) */
+extern const char * delim; /* printer font delim (dvistuff.c) */
+
+extern FILE *DVIfile; /* dvi file (dvi2tty.c) */
+extern FILE *output; /* output file (dvi2tty.c) */
+
+
+
+/*
+ * Funtion declarations
+ */
+
+/* dvi2tty.c */
+#if defined(MSDOS)
+void errorexit(int);
+#else
+void errorexit(int errorcode);
+#endif
+
+/* dvistuff.c */
+#if defined(MSDOS)
+void dvimain(void);
+#else
+void dvimain(void);
+#endif