make4ht: peut-il générer une sortie html encadrée?
J'utilise make4htpour générer une sortie HTML pour un article que j'écris et que je publie en ligne. Jusqu'ici tout va bien. Je voudrais savoir s'il serait possible de générer une sortie HTML encadrée de sorte que vous ayez toujours le menu dans le volet gauche, le contenu dans le volet droit et ainsi de suite.
Je pensais que je pourrais créer une page index.html encadrée qui extrait le html principal généré à partir de make4ht(qui est essentiellement le menu) sur la gauche, puis avoir une page de contenu initiale dans le volet droit. Peut modifier la page principale générée à partir make4ht(après coup) pour avoir "_target"mis en place l'autre cadre sur tous les liens (si je me souviens bien comment faire cette chose en html) ... mais ce serait tellement plus agréable de le make4htfaire c'est automatiquement pour moi.
Réponses
Vous pouvez essayer l' framesoption si vous voulez vraiment utiliser des cadres. Comme dans cet exemple:
\documentclass{book}
\usepackage{kantlipsum}
\begin{document}
\chapter{Hello}
\kant[1-3]
\chapter{World}
\section{Section}
\kant[4-5]
\section{Another Section}
\kant[6-7]
\end{document}
Compilez le fichier en utilisant
make4ht filename.tex "3,frames"
Et il produit la page HTML suivante:
Une autre option est d'utiliser la méthode que j'utilise pour le travail en cours de documentation Tex4ht . Voir le dépôt Github pour les configurations que j'ai utilisées.
Contrairement aux cadres, la table des matières est insérée sur chaque page, mais elle contient des liens uniquement vers les niveaux de coupe de niveau supérieur. Seules les sections actuelles du chapitre sont affichées.
En particulier, le code HTML qui insère la table des matières est configuré dans config.cfg :
% Mini TOC
\Configure{crosslinks+}{%
\bgroup
% container for the page toc
\Configure{tableofcontents}{\IgnorePar\EndP\HCode{<nav class="TOC">}\IgnorePar}
{\HCode{\Hnewline}}{\IgnorePar\HCode{</nav>\Hnewline}\ShowPar}{}{}%
\TableOfContents[chapter,section,subsection]% Print table of contents before crosslinks
\egroup
\ifvmode\IgnorePar\fi\EndP%
\HCode{<main class="main-content">\Hnewline<nav class="crosslinks-top">} }
{\HCode{</nav>\Hnewline}}
{\ifvmode\IgnorePar\fi\EndP%
\HCode{<nav class="crosslinks-bottom">}}{\HCode{</nav>}}{}{}
Les commandes de sectionnement incluses dans la table des matières sont sélectionnées à l'aide de la \TableOfContentscommande. L'apparence de la table des matières est stylisée à l'aide de style.css . Le dernier composant de la gestion de la table des matières se trouve dans build.mk4 . Le collapsetocfiltre nettoiera la table des matières et n'affichera que les sections actuelles.
Voici à quoi ça ressemble: