[tex4ht-commits] [SCM] tex4ht updated: r1034 - trunk/lit

Michal Hoftich INVALID.NOREPLY at gnu.org.ua
Sun Dec 19 14:53:20 CET 2021


Author: michal_h21
Date: 2021-12-19 13:53:20 +0000 (Sun, 19 Dec 2021)
New Revision: 1034

Modified:
   trunk/lit/ChangeLog
   trunk/lit/mktex4ht-cnf.tex
   trunk/lit/tex4ht-4ht.tex
Log:
Added support for the backref package

Modified: trunk/lit/ChangeLog
===================================================================
--- trunk/lit/ChangeLog	2021-12-17 14:34:50 UTC (rev 1033)
+++ trunk/lit/ChangeLog	2021-12-19 13:53:20 UTC (rev 1034)
@@ -1,3 +1,8 @@
+2021-12-19  Michal Hoftich  <michal.h21 at gmail.com>
+
+	* tex4ht-4ht.tex (backref.4ht): added support for the Backref package.
+	https://github.com/michal-h21/tex4ebook/issues/64
+
 2021-12-17  Michal Hoftich  <michal.h21 at gmail.com>
 
 	* tex4ht-ooffice.tex (ooffice.4ht): use \ShowPar in \:DefineParagraph,

Modified: trunk/lit/mktex4ht-cnf.tex
===================================================================
--- trunk/lit/mktex4ht-cnf.tex	2021-12-17 14:34:50 UTC (rev 1033)
+++ trunk/lit/mktex4ht-cnf.tex	2021-12-19 13:53:20 UTC (rev 1034)
@@ -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}

Modified: trunk/lit/tex4ht-4ht.tex
===================================================================
--- trunk/lit/tex4ht-4ht.tex	2021-12-17 14:34:50 UTC (rev 1033)
+++ trunk/lit/tex4ht-4ht.tex	2021-12-19 13:53:20 UTC (rev 1034)
@@ -2754,6 +2754,50 @@
 >>>
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
+\SubSection{backref.4ht}
+
+\<backref.4ht\><<< 
+% backref.4ht (|version), generated from |jobname.tex 
+% Copyright 2021 TeX Users Group 
+|<TeX4ht license text|> 
+|<backref definitions|>
+\Hinput{backref} 
+\endinput 
+>>> \AddFile{9}{backref}
+
+\<backref definitions\><<<
+% patch command that inserts backlink destinations
+\pend:defI\Hy at backout{%
+  % prevent duplicate backlink on the same page
+  \ifcsname bk##1\thepage\endcsname\else%
+    % insert link to the page
+    \html:addr\Link-{}{|<haddr prefix|>\last:haddr}\EndLink%
+    % save link to the .xref file
+    \Tag{)Q##1\thepage}{|<haddr prefix|>\last:haddr}%
+    % we need to save the link destination in .xref file
+    % too, otherwise \Link command would issue warning
+    \Tag{)Q|<haddr prefix|>\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 at backref{\def\current:back:desc{##1}}
+>>>
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
 \SubSection{reading.4ht}
 
 \<reading.4ht\><<<



More information about the tex4ht-commits mailing list.