diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2013-02-11 14:27:39 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2013-02-11 14:27:39 +0000 |
commit | b99bfa8c4694d5cf7526c7100cccc44530c1b079 (patch) | |
tree | 8e4d5d1048d6371b078ca8baf6a387f819614247 | |
parent | a08b7d56d4eacb16af34f3ca36ac14cab371125c (diff) |
Simplify SyncTeX change files
git-svn-id: svn://tug.org/texlive/trunk@29080 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Build/source/texk/web2c/Makefile.in | 39 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/ChangeLog | 12 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/am/synctex.am | 34 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-def.ch0 (renamed from Build/source/texk/web2c/synctexdir/synctex-mem.ch1) | 14 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-e-rec.ch0 | 2 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-e-rec.ch1 | 56 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-mem.ch0 | 6 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-rec.ch0 | 14 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-rec.ch1 | 33 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-xe-def.ch0 (renamed from Build/source/texk/web2c/synctexdir/synctex-xe-mem.ch2) | 18 | ||||
-rw-r--r-- | Build/source/texk/web2c/synctexdir/synctex-xe-rec.ch2 | 92 |
11 files changed, 72 insertions, 248 deletions
diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 87910531367..a3f99e46324 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -1933,17 +1933,15 @@ EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ synctexdir/synctex_parser_version.txt synctexdir/tests \ synctexdir/synctex-common.h synctexdir/synctex.c \ synctexdir/synctex.defines synctexdir/synctex.h \ - synctexdir/synctex-mem.ch0 synctexdir/synctex-mem.ch1 \ + synctexdir/synctex-def.ch0 synctexdir/synctex-mem.ch0 \ synctexdir/synctex-mem.ch2 synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 synctexdir/synctex-rec.ch2 \ synctexdir/synctex-e-mem.ch0 synctexdir/synctex-e-mem.ch1 \ - synctexdir/synctex-e-rec.ch0 synctexdir/synctex-e-rec.ch1 \ - synctexdir/synctex-p-mem.ch0 synctexdir/synctex-p-mem.ch1 \ - synctexdir/synctex-p-rec.ch0 synctexdir/synctex-p-rec.ch1 \ - synctexdir/synctex-ep-mem.ch0 synctexdir/synctex-ep-mem.ch1 \ - synctexdir/synctex-pdf-rec.ch2 synctexdir/synctex-xe-mem.ch2 \ - synctexdir/synctex-xe-rec.ch2 synctexdir/synctex-xe-rec.ch3 \ - libmd5/md5.test + synctexdir/synctex-e-rec.ch0 synctexdir/synctex-p-mem.ch0 \ + synctexdir/synctex-p-mem.ch1 synctexdir/synctex-p-rec.ch0 \ + synctexdir/synctex-p-rec.ch1 synctexdir/synctex-ep-mem.ch0 \ + synctexdir/synctex-ep-mem.ch1 synctexdir/synctex-pdf-rec.ch2 \ + synctexdir/synctex-xe-rec.ch3 libmd5/md5.test DISTCLEANFILES = $(EXTRA_LIBRARIES) CXXLD.sh tangle.c tangle.h \ tangle.p tangle-web2c tangleboot.c tangleboot.h tangleboot.p \ tangleboot-web2c ctangle.c cweb.c cweb.h common-ctangle \ @@ -3056,27 +3054,26 @@ synctex_SOURCES = \ synctex_CPPFLAGS = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES) -DSYNCTEX_USE_LOCAL_HEADER synctex_LDADD = $(ZLIB_LIBS) @TEX_SYNCTEX_TRUE@tex_ch_synctex = \ +@TEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@TEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch2 \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch1 \ @TEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch2 @ETEX_SYNCTEX_TRUE@etex_ch_synctex = \ +@ETEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@ETEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch0 \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch1 \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @ETEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch1 \ -@ETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 \ -@ETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch1 +@ETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 @PTEX_SYNCTEX_TRUE@ptex_ch_synctex = \ +@PTEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-mem.ch0 \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@PTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-mem.ch1 \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch0 \ @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @@ -3085,9 +3082,9 @@ synctex_LDADD = $(ZLIB_LIBS) @PTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch1 @UPTEX_SYNCTEX_TRUE@uptex_ch_synctex = \ +@UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-mem.ch0 \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-mem.ch1 \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch0 \ @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @@ -3096,50 +3093,46 @@ synctex_LDADD = $(ZLIB_LIBS) @UPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch1 @EPTEX_SYNCTEX_TRUE@eptex_ch_synctex = \ +@EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-ep-mem.ch0 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch0 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-ep-mem.ch1 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch0 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch1 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 \ -@EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch1 \ @EPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch1 @EUPTEX_SYNCTEX_TRUE@euptex_ch_synctex = \ +@EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-ep-mem.ch0 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch0 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-ep-mem.ch1 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch0 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch1 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 \ -@EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch1 \ @EUPTEX_SYNCTEX_TRUE@ synctexdir/synctex-p-rec.ch1 @PDFTEX_SYNCTEX_TRUE@pdftex_ch_synctex = \ +@PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-def.ch0 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ -@PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch1 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch0 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch1 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch1 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 \ -@PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch1 \ @PDFTEX_SYNCTEX_TRUE@ synctexdir/synctex-pdf-rec.ch2 @XETEX_SYNCTEX_TRUE@xetex_ch_synctex = \ +@XETEX_SYNCTEX_TRUE@ synctexdir/synctex-xe-def.ch0 \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-mem.ch0 \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch0 \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-mem.ch1 \ -@XETEX_SYNCTEX_TRUE@ synctexdir/synctex-xe-mem.ch2 \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-rec.ch0 \ -@XETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 \ -@XETEX_SYNCTEX_TRUE@ synctexdir/synctex-xe-rec.ch2 +@XETEX_SYNCTEX_TRUE@ synctexdir/synctex-e-rec.ch0 @XETEX_SYNCTEX_TRUE@xetex_post_ch_synctex = \ @XETEX_SYNCTEX_TRUE@ synctexdir/synctex-xe-rec.ch3 diff --git a/Build/source/texk/web2c/synctexdir/ChangeLog b/Build/source/texk/web2c/synctexdir/ChangeLog index 3453c0aa594..eb18a8ae5a2 100644 --- a/Build/source/texk/web2c/synctexdir/ChangeLog +++ b/Build/source/texk/web2c/synctexdir/ChangeLog @@ -1,3 +1,15 @@ +2013-02-11 Peter Breitenlohner <peb@mppmu.mpg.de> + + Simplify SyncTeX change files. + * synctex-def.ch0, synctex-xe-def.ch0: New files defining + synctex_field_size (1 or 2) and field access macros. + * synctex-mem.ch0: Drop synctex_field_size. + * synctex-rec.ch0, synctex-e-rec.ch0: Use field access macros. + * synctex-rec.ch1: Drop obsolete explicit field access. + * synctex-mem.ch1, synctex-xe-rec.ch2, synctex-xe-mem.ch2, + synctex-e-rec.ch1 (removed): Now obsolete. + * am/synctex.am: Adapted. + 2012-11-10 Peter Breitenlohner <peb@mppmu.mpg.de> * synctex-rec.ch0: Avoid conflict with xetexdir/xetex.web. diff --git a/Build/source/texk/web2c/synctexdir/am/synctex.am b/Build/source/texk/web2c/synctexdir/am/synctex.am index 8eea18c6531..1ceb750a504 100644 --- a/Build/source/texk/web2c/synctexdir/am/synctex.am +++ b/Build/source/texk/web2c/synctexdir/am/synctex.am @@ -1,6 +1,6 @@ ## texk/web2c/synctexdir/am/synctex.am: Makefile fragment for SyncTeX. ## -## Copyright (C) 2009-2011 Peter Breitenlohner <tex-live@tug.org> +## Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org> ## You may freely use, modify and/or distribute this file. ## The SyncTeX tool @@ -48,8 +48,8 @@ tex_LDADD += $(ZLIB_LIBS) tex_prereq += $(ZLIB_DEPEND) tex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-mem.ch2 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ @@ -66,8 +66,8 @@ tex_CPPFLAGS += -D__SyncTeX__ -DSYNCTEX_ENGINE_H=\"synctex-tex.h\" endif TEX_SYNCTEX EXTRA_DIST += \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-mem.ch2 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ @@ -83,14 +83,13 @@ etex_LDADD += $(ZLIB_LIBS) etex_prereq += $(ZLIB_DEPEND) etex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-e-mem.ch1 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ - synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-e-rec.ch1 + synctexdir/synctex-e-rec.ch0 dist_etex_SOURCES += \ synctexdir/synctex.c \ @@ -105,8 +104,7 @@ endif ETEX_SYNCTEX EXTRA_DIST += \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-e-mem.ch1 \ - synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-e-rec.ch1 + synctexdir/synctex-e-rec.ch0 ## SyncTeX infrastructure: pTeX @@ -118,9 +116,9 @@ ptex_LDADD += $(ZLIB_LIBS) ptex_prereq += $(ZLIB_DEPEND) ptex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-p-mem.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-p-mem.ch1 \ synctexdir/synctex-p-rec.ch0 \ synctexdir/synctex-rec.ch0 \ @@ -154,9 +152,9 @@ uptex_LDADD += $(ZLIB_LIBS) uptex_prereq += $(ZLIB_DEPEND) uptex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-p-mem.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-p-mem.ch1 \ synctexdir/synctex-p-rec.ch0 \ synctexdir/synctex-rec.ch0 \ @@ -184,16 +182,15 @@ eptex_LDADD += $(ZLIB_LIBS) eptex_prereq += $(ZLIB_DEPEND) eptex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-ep-mem.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-ep-mem.ch1 \ synctexdir/synctex-p-rec.ch0 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-e-rec.ch1 \ synctexdir/synctex-p-rec.ch1 dist_eptex_SOURCES += \ @@ -220,16 +217,15 @@ euptex_LDADD += $(ZLIB_LIBS) euptex_prereq += $(ZLIB_DEPEND) euptex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-ep-mem.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-ep-mem.ch1 \ synctexdir/synctex-p-rec.ch0 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-e-rec.ch1 \ synctexdir/synctex-p-rec.ch1 dist_euptex_SOURCES += \ @@ -249,14 +245,13 @@ if PDFTEX_SYNCTEX pdftex_CPPFLAGS += -I$(srcdir)/synctexdir pdftex_ch_synctex = \ + synctexdir/synctex-def.ch0 \ synctexdir/synctex-mem.ch0 \ - synctexdir/synctex-mem.ch1 \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-e-mem.ch1 \ synctexdir/synctex-rec.ch0 \ synctexdir/synctex-rec.ch1 \ synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-e-rec.ch1 \ synctexdir/synctex-pdf-rec.ch2 dist_pdftex_SOURCES += \ @@ -279,13 +274,12 @@ if XETEX_SYNCTEX xetex_CPPFLAGS += -I$(srcdir)/synctexdir xetex_ch_synctex = \ + synctexdir/synctex-xe-def.ch0 \ synctexdir/synctex-mem.ch0 \ synctexdir/synctex-e-mem.ch0 \ synctexdir/synctex-e-mem.ch1 \ - synctexdir/synctex-xe-mem.ch2 \ synctexdir/synctex-rec.ch0 \ - synctexdir/synctex-e-rec.ch0 \ - synctexdir/synctex-xe-rec.ch2 + synctexdir/synctex-e-rec.ch0 xetex_post_ch_synctex = \ synctexdir/synctex-xe-rec.ch3 @@ -301,7 +295,5 @@ xetex_CPPFLAGS += -D__SyncTeX__ -DSYNCTEX_ENGINE_H=\"synctex-xetex.h\" endif XETEX_SYNCTEX EXTRA_DIST += \ - synctexdir/synctex-xe-mem.ch2 \ - synctexdir/synctex-xe-rec.ch2 \ synctexdir/synctex-xe-rec.ch3 diff --git a/Build/source/texk/web2c/synctexdir/synctex-mem.ch1 b/Build/source/texk/web2c/synctexdir/synctex-def.ch0 index cabaa1084ff..7b9828dfbc7 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-mem.ch1 +++ b/Build/source/texk/web2c/synctexdir/synctex-def.ch0 @@ -1,4 +1,4 @@ -Copyright (c) 2008, 2009 jerome DOT laurens AT u-bourgogne DOT fr +Copyright (c) 2013 jerome DOT laurens AT u-bourgogne DOT fr This file is part of the SyncTeX package. @@ -48,12 +48,16 @@ Thu Jun 19 09:39:21 UTC 2008 Notice: ------- This file contains TeX changes for synctex support. -It implements the memory management for TeX like engines. -It must apply after synctex-mem.ch0 +It defines the SyncTeX fields for TeX like engines. +It must apply first -@x tex.web l.2897 + synctex-mem.ch0 -@d synctex_field_size=MISSING IMPLEMENTATION +@x tex.web l.2897 +@d hlist_node=0 {|type| of hlist nodes} @y @d synctex_field_size=2 {Declare the {\sl Sync\TeX} field size to store the {\sl Sync\TeX} information: 2 integers for file tag and line} +@d sync_tag(#) == mem[#-synctex_field_size].int {The tag subfield} +@d sync_line(#) == mem[#-synctex_field_size+1].int {The line subfield} +@# +@d hlist_node=0 {|type| of hlist nodes} @z diff --git a/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch0 b/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch0 index d0553ccbbaf..1ff6f1ae953 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch0 +++ b/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch0 @@ -78,7 +78,7 @@ begin save_h:=cur_h; temp_ptr:=p; p:=new_kern(0); link(prev_p):=p; @y @<Reverse the complete hlist...@>= begin save_h:=cur_h; temp_ptr:=p; p:=new_kern(0); -MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[p] +sync_tag(p+medium_node_size):=0; {{\sl Sync\TeX}: do nothing, it is too late} link(prev_p):=p; @z diff --git a/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch1 b/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch1 deleted file mode 100644 index f975d4f490e..00000000000 --- a/Build/source/texk/web2c/synctexdir/synctex-e-rec.ch1 +++ /dev/null @@ -1,56 +0,0 @@ -Copyright (c) 2008, 2009 jerome DOT laurens AT u-bourgogne DOT fr - -This file is part of the SyncTeX package. - -Latest Revision: Wed Jul 1 11:17:34 UTC 2009 - -License: --------- -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE - -Except as contained in this notice, the name of the copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in this Software without prior written -authorization from the copyright holder. - -Acknowledgments: ----------------- -The author received useful remarks from the pdfTeX developers, especially Hahn The Thanh, -and significant help from XeTeX developer Jonathan Kew - -Nota Bene: ----------- -If you include or use a significant part of the synctex package into a software, -I would appreciate to be listed as contributor and see "SyncTeX" highlighted. - -Version 1 -Thu Jun 19 09:39:21 UTC 2008 - -Notice: -------- -This file contains TeX changes for core synctex support. - -@x -MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[p] -@y -mem[p+medium_node_size-synctex_field_size].int:=0; {{\sl Sync\TeX}: do nothing, it is too late} -@z diff --git a/Build/source/texk/web2c/synctexdir/synctex-mem.ch0 b/Build/source/texk/web2c/synctexdir/synctex-mem.ch0 index bdb585bee7a..02eb659d651 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-mem.ch0 +++ b/Build/source/texk/web2c/synctexdir/synctex-mem.ch0 @@ -51,13 +51,9 @@ Notice: The |synctex_field_size| depends on the TeX implementation. pdfTeX uses 2 additional words whereas XeTeX will only use one, because it naturally has bigger words of memory. -@x tex.web l.2897 -@d hlist_node=0 {|type| of hlist nodes} +@x tex.web l.2898 @d box_node_size=7 {number of words to allocate for a box node} @y -@d synctex_field_size=MISSING IMPLEMENTATION - -@d hlist_node=0 {|type| of hlist nodes} @d box_node_size=7+synctex_field_size {number of words to allocate for a box node} @z diff --git a/Build/source/texk/web2c/synctexdir/synctex-rec.ch0 b/Build/source/texk/web2c/synctexdir/synctex-rec.ch0 index 1ab4f1afa80..c2730fab349 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-rec.ch0 +++ b/Build/source/texk/web2c/synctexdir/synctex-rec.ch0 @@ -229,7 +229,7 @@ if w<>0 then @y if w<>0 then begin link(t):=new_kern(w); t:=link(t); w:=0; - MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[t] + sync_tag(t+medium_node_size):=0; {{\sl Sync\TeX}: do nothing, it is too late} @z @x tex.web l.19335 @@ -324,7 +324,8 @@ And finally, initializing the node at only one place is less error prone. @ @<Initialize bigger nodes with {\sl Sync\TeX} information@>= if s>=medium_node_size then begin - MISSING IMPLEMENTATION: update the synctex information for node at mem[r] with size s + sync_tag(r+s):=synctex_tag; + sync_line(r+s):=line; end; @ Instead of storing the input file name, it is better to store just an identifier. @@ -402,13 +403,16 @@ but not for a |math_node| nor a |kern_node|. These last two nodes always keep the {\sl Sync\TeX} information they received at creation time. @ @<Copy the box {\sl Sync\TeX} information@>= -MISSING IMPLEMENTATION: copy the synctex information for box node at mem[r] from node at mem[p] +sync_tag(r+box_node_size):=sync_tag(p+box_node_size); +sync_line(r+box_node_size):=sync_line(p+box_node_size); @ @<Copy the rule {\sl Sync\TeX} information@>= -MISSING IMPLEMENTATION: copy the synctex information for rule node at mem[r] from node at mem[p] +{sync_tag(r+rule_node_size):=sync_tag(p+rule_node_size); +sync_line(r+rule_node_size):=sync_line(p+rule_node_size);} @ @<Copy the medium sized node {\sl Sync\TeX} information@>= -MISSING IMPLEMENTATION: copy the synctex information for medium sized node at mem[r] from node at mem[p] +sync_tag(r+medium_node_size):=sync_tag(p+medium_node_size); +sync_line(r+medium_node_size):=sync_line(p+medium_node_size); @ {\sl Nota Bene:} The {\sl Sync\TeX} code is very close to the memory model. diff --git a/Build/source/texk/web2c/synctexdir/synctex-rec.ch1 b/Build/source/texk/web2c/synctexdir/synctex-rec.ch1 index 929e32d9ff4..2f9c6b0b327 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-rec.ch1 +++ b/Build/source/texk/web2c/synctexdir/synctex-rec.ch1 @@ -79,36 +79,3 @@ if list_ptr(p)=null then begin end @z -@x - MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[t] -@y - mem[t+medium_node_size-synctex_field_size].int:=0; {{\sl Sync\TeX}: do nothing, it is too late} -@z - -@x - MISSING IMPLEMENTATION: update the synctex information for node at mem[r] with size s -@y - mem[r+s-synctex_field_size].int:=synctex_tag; - mem[r+s-synctex_field_size+1].int:=line; -@z - -@x It is not always a good idea to blindly copy the synctex information -MISSING IMPLEMENTATION: copy the synctex information for box node at mem[r] from node at mem[p] -@y -mem[r+box_node_size-synctex_field_size].int:=mem[p+box_node_size-synctex_field_size].int; -mem[r+box_node_size-synctex_field_size+1].int:=mem[p+box_node_size-synctex_field_size+1].int; -@z - -@x -MISSING IMPLEMENTATION: copy the synctex information for rule node at mem[r] from node at mem[p] -@y -{mem[r+rule_node_size-synctex_field_size].int:=mem[p+rule_node_size-synctex_field_size].int; -mem[r+rule_node_size-synctex_field_size+1].int:=mem[p+rule_node_size-synctex_field_size+1].int;} -@z - -@x -MISSING IMPLEMENTATION: copy the synctex information for medium sized node at mem[r] from node at mem[p] -@y -mem[r+medium_node_size-synctex_field_size].int:=mem[p+medium_node_size-synctex_field_size].int; -mem[r+medium_node_size-synctex_field_size+1].int:=mem[p+medium_node_size-synctex_field_size+1].int; -@z diff --git a/Build/source/texk/web2c/synctexdir/synctex-xe-mem.ch2 b/Build/source/texk/web2c/synctexdir/synctex-xe-def.ch0 index 4bd858c9edc..667070dc43e 100644 --- a/Build/source/texk/web2c/synctexdir/synctex-xe-mem.ch2 +++ b/Build/source/texk/web2c/synctexdir/synctex-xe-def.ch0 @@ -1,8 +1,8 @@ -Copyright (c) 2008, 2009 jerome DOT laurens AT u-bourgogne DOT fr +Copyright (c) 2013 jerome DOT laurens AT u-bourgogne DOT fr This file is part of the SyncTeX package. -Latest Revision: Wed Jul 1 11:17:08 UTC 2009 +Latest Revision: Wed Jul 1 11:16:57 UTC 2009 License: -------- @@ -47,13 +47,17 @@ Thu Jun 19 09:39:21 UTC 2008 Notice: ------- -This file contains TeX changes for SyncTeX support. -It implements the memory management for XeTeX like engines. -It must apply after synctex.ch0 and synctex-e.ch1 +This file contains TeX changes for synctex support. +It defines the SyncTeX fields for the XeTeX engine. +It must apply first -@x -@d synctex_field_size=MISSING IMPLEMENTATION +@x tex.web l.2897 +@d hlist_node=0 {|type| of hlist nodes} @y @d synctex_field_size=1 {Declare the {\sl Sync\TeX} field size to store the {\sl Sync\TeX} information: we will put file tag and line into lh and rh fields of one word} +@d sync_tag(#) == mem[#-synctex_field_size].hh.lh {The tag subfield} +@d sync_line(#) == mem[#-synctex_field_size].hh.rh {The line subfield} +@# +@d hlist_node=0 {|type| of hlist nodes} @z diff --git a/Build/source/texk/web2c/synctexdir/synctex-xe-rec.ch2 b/Build/source/texk/web2c/synctexdir/synctex-xe-rec.ch2 deleted file mode 100644 index a8b5830312d..00000000000 --- a/Build/source/texk/web2c/synctexdir/synctex-xe-rec.ch2 +++ /dev/null @@ -1,92 +0,0 @@ -Copyright (c) 2008, 2009 jerome DOT laurens AT u-bourgogne DOT fr - -This file is part of the SyncTeX package. - -Latest Revision: Wed Jul 1 11:17:13 UTC 2009 - -License: --------- -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE - -Except as contained in this notice, the name of the copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in this Software without prior written -authorization from the copyright holder. - -Acknowledgments: ----------------- -The author received useful remarks from the pdfTeX developers, especially Hahn The Thanh, -and significant help from XeTeX developer Jonathan Kew - -Nota Bene: ----------- -If you include or use a significant part of the synctex package into a software, -I would appreciate to be listed as contributor and see "SyncTeX" highlighted. - -Version 1 -Thu Jun 19 09:39:21 UTC 2008 - -Notice: -------- -This file contains TeX changes for SyncTeX support. -It implements the memory management for XeTeX like engines. -It must apply after synctex.ch0 and synctex-e.ch1 - -@x - MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[t] -@y - mem[t+medium_node_size-synctex_field_size].hh.lh:=0; {{\sl Sync\TeX}: do nothing, it is too late} -@z - -@x -MISSING IMPLEMENTATION: 0 synctag for medium sized node at mem[p] -@y -mem[p+medium_node_size-synctex_field_size].hh.lh:=0; {{\sl Sync\TeX}: do nothing, it is too late} -@z - -@x - MISSING IMPLEMENTATION: update the synctex information for node at mem[r] with size s -@y - mem[r+s-synctex_field_size].hh.lh := synctex_tag; - mem[r+s-synctex_field_size].hh.rh := line; -@z - -@x -MISSING IMPLEMENTATION: copy the synctex information for box node at mem[r] from node at mem[p] -@y -mem[r+box_node_size-synctex_field_size].hh.lh:=mem[p+box_node_size-synctex_field_size].hh.lh; -mem[r+box_node_size-synctex_field_size].hh.rh:=mem[p+box_node_size-synctex_field_size].hh.rh; -@z - -@x -MISSING IMPLEMENTATION: copy the synctex information for rule node at mem[r] from node at mem[p] -@y -{mem[r+rule_node_size-synctex_field_size].hh.lh:=mem[p+rule_node_size-synctex_field_size].hh.lh; -mem[r+rule_node_size-synctex_field_size].hh.rh:=mem[p+rule_node_size-synctex_field_size].hh.rh;} -@z - -@x -MISSING IMPLEMENTATION: copy the synctex information for medium sized node at mem[r] from node at mem[p] -@y -mem[r+medium_node_size-synctex_field_size].hh.lh:=mem[p+medium_node_size-synctex_field_size].hh.lh; -mem[r+medium_node_size-synctex_field_size].hh.rh:=mem[p+medium_node_size-synctex_field_size].hh.rh; -@z |