From bcdf6c829c6761de02484473ebe43fa3760adcaa Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 12 May 2021 03:01:15 +0000 Subject: CTAN sync 202105120301 --- support/TeX4ht/source/tex4ht-html5.tex | 376 +++++++++++++++++++++++++++++++++ 1 file changed, 376 insertions(+) create mode 100644 support/TeX4ht/source/tex4ht-html5.tex (limited to 'support/TeX4ht/source/tex4ht-html5.tex') diff --git a/support/TeX4ht/source/tex4ht-html5.tex b/support/TeX4ht/source/tex4ht-html5.tex new file mode 100644 index 0000000000..ca0fab53a4 --- /dev/null +++ b/support/TeX4ht/source/tex4ht-html5.tex @@ -0,0 +1,376 @@ +% $Id: tex4ht-html5.tex 905 2021-04-18 15:30:06Z karl $ +% compile 3 times: latex tex4ht-moz +% or xhlatex tex4ht-moz "html,3,sections+" +% +% Copyright 2009-2021 TeX Users Group +% Copyright 2000-2009 Eitan M. Gurari +% Released under LPPL 1.3c+. +% See tex4ht-cpright.tex for license text. + +%%%%%%%%%%%%%%%%%% load style files %%%%%%%%%%%%%%%%%%%%%%%%%% + +\ifx \HTML\UnDef + \def\HTML{html5} + \def\CONFIG{\jobname} + \def\MAKETITLE{\author{Eitan M. Gurari}} + \def\next{\input mktex4ht.4ht \endinput} + \expandafter\next +\fi + +\input{common.tex} +\input{tex4ht-cpright.tex} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Preamble} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\<<< +% html5.4ht (|version), generated from |jobname.tex +% Copyright 2016-2021 TeX Users Group +| +>>> + + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Basic configurations} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{HTML5 structure} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\<<< +| +\Configure{VERSION}{} +\Configure{DOCTYPE}{\HCode{\Hnewline}} +\Configure{HTML}{\HCode{\Hnewline}}{\HCode{\Hnewline}} +\Configure{@HEAD}{} +\Configure{@HEAD}{\HCode{\Hnewline}} +\Configure{@HEAD}{\HCode{\Hnewline}} +\Configure{@HEAD}{\HCode{\Hnewline}} +\Configure{@HEAD}{\HCode{\Hnewline}} +\Configure{@HEAD} + {\HCode{\Hnewline}} +\:CheckOption{timestamp}\if:Option +\Configure{@HEAD} + {\HCode{\Hnewline}} +\else + \Log:Note{To print a timestamp, use the command line option timestamp} +\fi +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Language and charset setting} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Charset can be set using charset=charsetcode option for tex4ht.sty. It is saved in \verb|\a:charset| macro. +If charset oprion isn't used, \verb|\A:charset| is used instead. Bot of these macros store the charset information +in charset=name form. We need to add quotes around name in html5, thus the following macro. + +\<<< + +\def\:charset:quotes#1=#2.{ + #1="#2"% +} +\def\use:charset{% + \expandafter\ifx\csname a:charset\endcsname\relax% + \expandafter\expandafter\expandafter\:charset:quotes\csname A:charset\endcsname. + \else% + \expandafter\expandafter\expandafter\:charset:quotes\csname a:charset\endcsname. + \fi +} +>>> + + +We can interfere the document language from \verb|\bbl@main@language| macro. It +is supported by both Babel and Polyglossia. + +\<<< +\def\Declare:Language#1#2{% +\expandafter\gdef\csname rfclang#1\endcsname{#2}% +} +\def\Get:Language{% +\ifx\bbl@main@language\@undefined en-US% +\else% +\expandafter\ifdefined\csname rfclang\bbl@main@language\endcsname \csname rfclang\bbl@main@language\endcsname\fi% +\fi% +} + +\Declare:Language{UKenglish}{en} +\Declare:Language{USenglish}{en} +\Declare:Language{latex}{en} +\Declare:Language{acadian}{fr} +\Declare:Language{albanian}{sq} +\Declare:Language{american}{en} +\Declare:Language{amharic}{am} +\Declare:Language{arabic}{ar} +\Declare:Language{armenian}{hy} +\Declare:Language{australian}{en} +\Declare:Language{austrian}{de} +\Declare:Language{basque}{eu} +\Declare:Language{bengali}{bn} +\Declare:Language{brazilian}{pt} +\Declare:Language{brazil}{pt} +\Declare:Language{breton}{br} +\Declare:Language{british}{en} +\Declare:Language{bulgarian}{bg} +\Declare:Language{canadian}{en} +\Declare:Language{canadien}{fr} +\Declare:Language{catalan}{ca} +\Declare:Language{croatian}{hr} +\Declare:Language{czech}{cs} +\Declare:Language{danish}{da} +\Declare:Language{divehi}{dv} +\Declare:Language{dutch}{nl} +\Declare:Language{english}{en} +\Declare:Language{esperanto}{eo} +\Declare:Language{estonian}{et} +\Declare:Language{finnish}{f\/i} +\Declare:Language{francais}{fr} +\Declare:Language{french}{fr} +\Declare:Language{galician}{gl} +\Declare:Language{germanb}{de} +\Declare:Language{german}{de} +\Declare:Language{greek}{el} +\Declare:Language{hebrew}{he} +\Declare:Language{hindi}{hi} +\Declare:Language{hungarian}{hu} +\Declare:Language{icelandic}{is} +\Declare:Language{interlingua}{ia} +\Declare:Language{irish}{ga} +\Declare:Language{italian}{it} +\Declare:Language{kannada}{kn} +\Declare:Language{khmer}{km} +\Declare:Language{korean}{ko} +\Declare:Language{lao}{lo} +\Declare:Language{latin}{la} +\Declare:Language{latvian}{lv} +\Declare:Language{lithuanian}{lt} +\Declare:Language{lowersorbian}{dsb} +\Declare:Language{magyar}{hu} +\Declare:Language{malayalam}{ml} +\Declare:Language{marathi}{mr} +\Declare:Language{naustrian}{de} +\Declare:Language{newzealand}{en} +\Declare:Language{ngerman}{de} +\Declare:Language{norsk}{no} +\Declare:Language{norwegiannynorsk}{nn} +\Declare:Language{nynorsk}{no} +\Declare:Language{occitan}{oc} +\Declare:Language{oldchurchslavonic}{cu} +\Declare:Language{persian}{fa} +\Declare:Language{polish}{pl} +\Declare:Language{polutonikogreek}{el} +\Declare:Language{portuges}{pt} +\Declare:Language{portuguese}{pt} +\Declare:Language{romanian}{ro} +\Declare:Language{romansh}{rm} +\Declare:Language{russian}{ru} +\Declare:Language{samin}{se} +\Declare:Language{sanskrit}{sa} +\Declare:Language{scottish}{gd} +\Declare:Language{serbian}{sr} +\Declare:Language{serbo-croatian}{sh} +\Declare:Language{slovak}{sk} +\Declare:Language{slovene}{sl} +\Declare:Language{slovenian}{sl} +\Declare:Language{spanish}{es} +\Declare:Language{swedish}{sv} +\Declare:Language{tamil}{ta} +\Declare:Language{telugu}{te} +\Declare:Language{thai}{th} +\Declare:Language{tibetan}{bo} +\Declare:Language{turkish}{tr} +\Declare:Language{turkmen}{tk} +\Declare:Language{ukrainian}{uk} +\Declare:Language{uppersorbian}{hsb} +\Declare:Language{urdu}{ur} +\Declare:Language{vietnamese}{vi} +\Declare:Language{welsh}{cy} +>>> + +Support for xml name spaces. It must be configured after +\verb|\begin{document}| in the configuration file. + +\<<< +\edef\html:xmlns{} +\NewConfigure{xmlns}[2]{% + \ifx\relax#2\relax% + \edef\html:xmlns{}% + \else% + \edef\html:xmlns{\html:xmlns xmlns\ifx\relax#1\relax\else :#1\fi="#2"}% + \fi% +} +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{LaTeX and classes configurations} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\section{LaTeX} + +\<<< +| +>>> + +\section{Article, book and report classes} +\<<< +| +| +>>> + +\<<< +| +>>> + +\<<< +| +| +>>> + +Shared configurations for base LaTeX classes. + +\<<< +| +>>> + +Configurations that are shared only for article and report + +\<<< +| +>>> + + +\section{Configurations for Koma Script} + +\<<< +| +>>> + +\<<< +| +>>> + +\<<< +| +>>> + +\<<< +| +>>> + +\section{Configurations for AMS classes} + +\<<< +| +>>> + +\<<< +| +>>> + +\<<< +| +>>> + + +\<<< +| +>>> + +\section{Configurations for Memoir} + +\<<< +| +| +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Packages configuration} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Logical structure configurations} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Tables} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +cellspacing and cellpading attributes are prohibited in html5 + +\<<< +\Configure{halignTB<>}{tabular}{\HCode{id="TBL-\TableNo" class="tabular"\Hnewline \GROUPS\Hnewline + }<>\HAlign} +\Css{table.tabular{border-collapse: collapse; border-spacing: 0;}} +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Figures} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Configure HTML5 figures. Floats are converted as captions too. + +\<<< +\Configure{float} + {\ifOption{refcaption}{}{\csname par\endcsname\ShowPar \leavevmode}} + {\:xhtml{\IgnorePar\EndP}\HCode{
}} + {\ifvmode \IgnorePar \fi\EndP + \HCode{
}\csname par\endcsname\ShowPar} + +\ConfigureEnv{figure} +{\:xhtml{\IgnorePar\EndP}\HCode{
\Hnewline}% + \bgroup \Configure{float}{\ShowPar}{}{}% + } + {\egroup + \:xhtml{\IgnorePar\EndP}\HCode{
}|\par} + {}{} + +\Css{figure.float, div.figure {margin-left: auto; margin-right: auto;}} +\Css{figure.float img, figure.figure img {display: block; margin-left: auto; margin-right: auto;}} +\Css{figure.figure {text-align:center;}} + +\Configure{caption}{\:xhtml{\IgnorePar\EndP}\HCode{
}} + {:} {\HCode{}} + {\HCode{
}\HCode{}% +} +\Css{figcaption.caption {text-indent:-2em; margin-left:3em; margin-right:1em; + text-align:center;}} +\Css{figcaption.caption span.id{font-weight: bold; white-space: nowrap; }} +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Abstracts} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +\<<< +\ConfigureEnv{abstract} +{\ifvmode\IgnorePar\fi\EndP\HCode{
\Hnewline}} +{\ifvmode\IgnorePar\fi\EndP\HCode{
}\par}{}{} + +\Css{.abstract{margin:1em;}} +>>> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Utilities} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\<<< +\ShowPar +>>> + +\endinput -- cgit v1.2.3