From d0d64b0d56bd771d290b0f5abc225508e50ce6f0 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 19 Dec 2021 21:54:10 +0000 Subject: support for backref, tex4ht r1034 git-svn-id: svn://tug.org/texlive/trunk@61348 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/generic/tex4ht/ChangeLog | 5 +++ .../source/generic/tex4ht/mktex4ht-cnf.tex | 5 ++- .../source/generic/tex4ht/tex4ht-4ht.tex | 46 +++++++++++++++++++++- 3 files changed, 54 insertions(+), 2 deletions(-) (limited to 'Master/texmf-dist/source/generic') diff --git a/Master/texmf-dist/source/generic/tex4ht/ChangeLog b/Master/texmf-dist/source/generic/tex4ht/ChangeLog index 6c8345696aa..2320f31c9f4 100644 --- a/Master/texmf-dist/source/generic/tex4ht/ChangeLog +++ b/Master/texmf-dist/source/generic/tex4ht/ChangeLog @@ -1,3 +1,8 @@ +2021-12-19 Michal Hoftich + + * tex4ht-4ht.tex (backref.4ht): added support for the Backref package. + https://github.com/michal-h21/tex4ebook/issues/64 + 2021-12-17 Michal Hoftich * tex4ht-ooffice.tex (ooffice.4ht): use \ShowPar in \:DefineParagraph, diff --git a/Master/texmf-dist/source/generic/tex4ht/mktex4ht-cnf.tex b/Master/texmf-dist/source/generic/tex4ht/mktex4ht-cnf.tex index 765d72d2919..82a970b8393 100644 --- a/Master/texmf-dist/source/generic/tex4ht/mktex4ht-cnf.tex +++ b/Master/texmf-dist/source/generic/tex4ht/mktex4ht-cnf.tex @@ -1,4 +1,4 @@ -% $Id: mktex4ht-cnf.tex 951 2021-06-17 16:29:22Z michal_h21 $ +% $Id: mktex4ht-cnf.tex 1034 2021-12-19 13:53:20Z michal_h21 $ % Manually-maintained file, listing *.4ht files created by tex4ht-4ht.tex. % Read by tex4ht-cond4ht. % @@ -22,6 +22,7 @@ \AddFile{9}{mla} \AddFile{6}{biblatex} \AddFile{6}{biblatex-chicago} +\AddFile{6}{backref} \AddFile{6}{reading} \AddFile{5}{debug} \AddFile{5}{footnote-dw} @@ -222,6 +223,7 @@ \AddFile{9}{subeqnarray} \AddFile{9}{eurosym} \AddFile{9}{SIunits} +\AddFile{9}{siunitx} \AddFile{9}{sistyle} \AddFile{9}{ushort} \AddFile{9}{chapterbib} @@ -284,6 +286,7 @@ \AddFile{9}{2up} \AddFile{9}{web} \AddFile{9}{exerquiz} +\AddFile{9}{hyperxmp} \AddFile{9}{nicefrac} \AddFile{9}{multicol} \AddFile{2}{lettrine} diff --git a/Master/texmf-dist/source/generic/tex4ht/tex4ht-4ht.tex b/Master/texmf-dist/source/generic/tex4ht/tex4ht-4ht.tex index 7389d9d0ecc..6356f9a08e5 100644 --- a/Master/texmf-dist/source/generic/tex4ht/tex4ht-4ht.tex +++ b/Master/texmf-dist/source/generic/tex4ht/tex4ht-4ht.tex @@ -1,4 +1,4 @@ -% $Id: tex4ht-4ht.tex 1031 2021-12-16 15:13:32Z michal_h21 $ +% $Id: tex4ht-4ht.tex 1034 2021-12-19 13:53:20Z michal_h21 $ % tex tex4ht-4ht or ht tex tex4ht-4ht % % Copyright 2009-2021 TeX Users Group @@ -2753,6 +2753,50 @@ they caused compilation error when the AUX file is loaded. {\egroup\EndP\HCode{}} >>> +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\SubSection{backref.4ht} + +\<<< +% backref.4ht (|version), generated from |jobname.tex +% Copyright 2021 TeX Users Group +| +| +\Hinput{backref} +\endinput +>>> \AddFile{9}{backref} + +\<<< +% patch command that inserts backlink destinations +\pend:defI\Hy@backout{% + % prevent duplicate backlink on the same page + \ifcsname bk##1\thepage\endcsname\else% + % insert link to the page + \html:addr\Link-{}{|\last:haddr}\EndLink% + % save link to the .xref file + \Tag{)Q##1\thepage}{|\last:haddr}% + % we need to save the link destination in .xref file + % too, otherwise \Link command would issue warning + \Tag{)Q|\last:haddr}{\FileNumber}% + \fi + % declare this backlink destination as used, so we don't + % declare another one with the same name + \expandafter\def\csname bk##1\thepage\endcsname{}% +} + +% redefine macro that puts out backlinks +\def\:tempa#1#2#3{% + % test if we saved link to the current bibitem and page + \ifTag{)Q\current:back:desc#1}{% + \Link{\LikeRef{)Q\current:back:desc#1}}{}#1\EndLink% + }% + {#1}% print just page number if there is no saved link +}% +\HLet\backrefxxx\:tempa + +% save current bibkey for use in \backrefxxx +\pend:defI\BR@backref{\def\current:back:desc{##1}} +>>> + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \SubSection{reading.4ht} -- cgit v1.2.3