On Wednesday 04 January 2006 19:26, Uwe Stöhr wrote: > Angus Leeming wrote: > >> - I found also incompatibilities in the programs dt2dv and dv2dt, > >> that are used by LyX for the DVI-output. > > > > Could you expand? > > TeXLive has its own dt2dv versions, I expect old ones. The are called > when I want to generate a DVI and give me spurious error messages. I > deleted the dv2dt files from LyX's install directory but got the same > errors. When I replace TeXLive's dt2dv files by the ones from LyX it > also don't work (other error messages). I currently don't have TeXLive > installed to send you exactly the error messages.
Herbert, do you know where I should post fixes to these files? (See attached) Angus
diff -p -N -r -U 4 dtl/dt2dv.c dtl_orig/dt2dv.c --- dtl/dt2dv.c 2005-07-27 11:19:58.000000000 +0100 +++ dtl_orig/dt2dv.c 1995-03-08 22:00:00.000000000 +0000 @@ -1,12 +1,10 @@ /* dt2dv - convert human-readable "DTL" file to DVI format - this is intended to invert dv2dt version 0.6.0 - - version 0.6.2 - 27 July 2005 + - version 0.6.1 - 14:38 GMT +11 Thu 9 March 1995 - Geoffrey Tobin [EMAIL PROTECTED] - fixes: Michal Tomczak-Jaegermann [EMAIL PROTECTED] Nelson H. F. Beebe [EMAIL PROTECTED] - Angus Leeming [EMAIL PROTECTED]: Enable dt2dv to handle - .dvi files containing strings longer than 1024 chars. - Reference: "The DVI Driver Standard, Level 0", by The TUG DVI Driver Standards Committee. Appendix A, "Device-Independent File Format". */ @@ -2224,24 +2222,23 @@ xfer_len_string #endif /* transfer (length and) quoted string from dtl to dvi file, */ /* return number of bytes written to dvi file. */ { - U4 k, k2, lstr_maxsize; + U4 k, k2; Lstring lstr; if (debug) { PRINT_PROGNAME; fprintf (stderr, "(xfer_len_string) : entering xfer_len_string.\n"); } + init_Lstring (&lstr, LSIZE); + /* k[n] : length of special string */ k = get_unsigned (dtl); - lstr_maxsize = (k > LSIZE) ? k : LSIZE; - init_Lstring (&lstr, lstr_maxsize); - if (debug) { PRINT_PROGNAME; fprintf (stderr, "(xfer_len_string) : string's nominal length k = "); @@ -2569,9 +2566,9 @@ fontdef #ifdef HEX_CHECKSUM /* c[4] : (hexadecimal) checksum : I (gt) would prefer this */ xfer_hex (4, dtl, dvi); -#else /*NOT HEX_CHECKSUM */ +#else /NOT HEX_CHECKSUM */ /* c[4] : checksum (octal, for comparison with tftopl's .pl file) */ xfer_oct (4, dtl, dvi); #endif diff -p -N -r -U 4 dtl/dtl.doc dtl_orig/dtl.doc --- dtl/dtl.doc 2005-06-09 11:04:29.000000000 +0100 +++ dtl_orig/dtl.doc 1995-03-08 17:50:00.000000000 +0000 @@ -12,17 +12,17 @@ Note: `DTL' stands for `Device-Independ ASCII text representation of a DVI file. References for DVI file structure: ---------------------------------- - + In this distribution: dvi.doc In the TeX archives: CTAN: dviware/driv-standard/level-0/dvistd0.tex - + "The DVI Driver Standard, Level 0", by The TUG DVI Driver Standards Committee (now defunct) chaired by Joachim Schrod. Appendix A, "Device-Independent File Format", @@ -38,9 +38,9 @@ Naturally, `variety' has no DVI equivale The other DTL commands correspond one-to-one with DVI commands, but I have used briefer names (except for `special') than those used in the DVI standards document. - DTL : DVI + DTL : DVI (text) : series of set_char commands, for printable ASCII text \( : literal ASCII left parenthesis in (text) \) : literal ASCII right parenthesis in (text) diff -p -N -r -U 4 dtl/dvi.doc dtl_orig/dvi.doc --- dtl/dvi.doc 2005-06-09 11:04:36.000000000 +0100 +++ dtl_orig/dvi.doc 1995-03-01 03:38:00.000000000 +0000 @@ -21,9 +21,9 @@ DVI Commands ------------ Listed in the free format: "Opcode Symbol Parameter[Signed? Bytes] ... Action". - + 0 set_char_0 - set character 0 from current font ... 127 set_char_127 - set character 127 from current font diff -p -N -r -U 4 dtl/Makefile dtl_orig/Makefile --- dtl/Makefile 2005-07-27 19:06:45.000000000 +0100 +++ dtl_orig/Makefile 1995-03-08 22:00:00.000000000 +0000 @@ -2,16 +2,8 @@ # Version 0.6.1 # Thu 9 March 1995 # Geoffrey Tobin # Nelson H. F. Beebe -# -# Changes 27 July 2005 by Angus Leeming to enable the Makefile to -# work out of the box on both *nix and Windows machines under -# the MinSYS environment. -# -# The Makefile can also be used unaltered to build a Windows executable -# from a Linux box if make is invoked as: -# $ make EXEEXT='.exe' CC='i386-mingw32-gcc' #======================================================================= BINDIR = /usr/local/bin CATDIR = $(MANDIR)/../cat$(MANEXT) @@ -23,24 +15,12 @@ CHMOD = /bin/chmod COL = col -b CP = /bin/cp DITROFF = ditroff DITROFF = groff - -# This is a GNU make extension. -# If you're flavour of make refuses to accept it, -# then simply hardcode EXEEXT. -ifeq ($(WINDIR),) - EXEEXT = -else - EXEEXT = .exe -endif - -DT2DV = dt2dv$(EXEEXT) -DV2DT = dv2dt$(EXEEXT) -EXES = $(DT2DV) $(DV2DT) +EXES = dt2dv dv2dt LDFLAGS = -s LDFLAGS = -MAN2PS = sh ./man2ps +MAN2PS = ./man2ps MANDIR = /usr/local/man/man$(MANEXT) MANEXT = 1 OBJS = dt2dv.o dv2dt.o RM = /bin/rm -f @@ -63,69 +43,68 @@ DTL_DBN = $(DOCS) $(SRC) $(TESTS) $(MAN2PS) < $< > $@ #======================================================================= -#all: dtl check doc -all: dtl check +all: dtl check doc doc: dt2dv.hlp dv2dt.hlp dt2dv.ps dv2dt.ps -dtl: dv2dt dt2dv +dtl: $(EXES) check tests: hello example tripvdu edited dv2dt: dv2dt.o dtl.h - $(CC) $(CFLAGS) $(LDFLAGS) -o $(DV2DT) dv2dt.o + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ [EMAIL PROTECTED] dt2dv: dt2dv.o dtl.h - $(CC) $(CFLAGS) $(LDFLAGS) -o $(DT2DV) dt2dv.o + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ [EMAIL PROTECTED] -hello: hello.dtl dv2dt dt2dv - ./$(DT2DV) hello.dtl hello2.dvi - ./$(DV2DT) hello2.dvi hello2.dtl +hello: hello.dtl $(EXES) + dt2dv hello.dtl hello2.dvi + dv2dt hello2.dvi hello2.dtl [EMAIL PROTECTED] hello.dtl hello2.dtl > hello.dif @if [ -s hello.dif ] ; \ then echo ERROR: differences in hello.dif ; \ else $(RM) hello.dif ; \ fi hello.dtl: hello.tex tex hello - ./$(DV2DT) hello.dvi hello.dtl + dv2dt hello.dvi hello.dtl -example: example.dtl dv2dt dt2dv - ./$(DT2DV) example.dtl example2.dvi - ./$(DV2DT) example2.dvi example2.dtl +example: example.dtl $(EXES) + dt2dv example.dtl example2.dvi + dv2dt example2.dvi example2.dtl [EMAIL PROTECTED] example.dtl example2.dtl > example.dif @if [ -s example.dif ] ; \ then echo ERROR: differences in example.dif ; \ else $(RM) example.dif ; \ fi example.dtl: example.tex tex example - ./$(DV2DT) example.dvi example.dtl + dv2dt example.dvi example.dtl -tripvdu: tripvdu.dtl dv2dt dt2dv - ./$(DT2DV) tripvdu.dtl tripvdu2.dvi - ./$(DV2DT) tripvdu2.dvi tripvdu2.dtl +tripvdu: tripvdu.dtl $(EXES) + dt2dv tripvdu.dtl tripvdu2.dvi + dv2dt tripvdu2.dvi tripvdu2.dtl [EMAIL PROTECTED] tripvdu.dtl tripvdu2.dtl > tripvdu.dif @if [ -s tripvdu.dif ] ; \ then echo ERROR: differences in tripvdu.dif ; \ else $(RM) tripvdu.dif ; \ fi tripvdu.dtl: tripvdu.tex tex tripvdu - ./$(DV2DT) tripvdu.dvi tripvdu.dtl + dv2dt tripvdu.dvi tripvdu.dtl # edited.txt is already a dtl file. -edited: edited.txt dv2dt dt2dv - ./$(DT2DV) edited.txt edited.dvi - ./$(DV2DT) edited.dvi edited2.dtl - ./$(DT2DV) edited2.dtl edited2.dvi - ./$(DV2DT) edited2.dvi edited3.dtl +edited: edited.txt $(EXES) + dt2dv edited.txt edited.dvi + dv2dt edited.dvi edited2.dtl + dt2dv edited2.dtl edited2.dvi + dv2dt edited2.dvi edited3.dtl @if [ -s edited.dif ] ; \ then echo ERROR : differences in edited.dif ; \ else $(RM) edited.dif ; \ fi