
Pergunta
Se eu tiver um documento com vários índices, posso limitar o escopo de seções de um índice adicionadas e redefinir o índice?
Situação
Tenho um documento composto por 10 idiomas. (usando \input{en}, \input{de}, \input{da}
etc.) Existem 11 índices:
- Diretório de idiomas (composto por cada um
\input
(provavelmente terá que ser apenas uma tabela personalizada contendo ganchos para cada um)\input
. Não sei como implementarei isso ainda. - Índice local para cada idioma específico (10 idiomas)
Código de exemplo
Exemplo de .tex principal
\documentclass{article}
\usepackage{fontspec}
\begin{document}
\maketableofcontents % language directory (list of inputs with language names)
\input{en}
\input{de}
\input{da}
\end{document}
Exemplo de en.tex
\maketableofcontents % local toc
\section{apple}
%\somecommand % TOC scope limit
Exemplo de de.tex
\maketableofcontents % local toc
\section{apfel}
%\somecommand % TOC scope limit
Exemplo de da.tex
\maketableofcontents % local toc
\section{æble}
%\somecommand % TOC scope limit
Responder1
Aqui está uma solução usando etoc
.Observe as limitações do ambiente de conteúdo de arquivo padrão
\begin{filecontents}{en.tex}
\localtableofcontents
\section{apple}
\end{filecontents}
\documentclass{article}
\usepackage{bookmark}
\usepackage{etoc}
% Use this version \newlang{<name>}{<file>}
% to use external files
\newcommand\newlangfile[2]{%
\newlang{#1}%
\input{#2}%
}
\newcommand\newlang[1]{%
\newpage\pdfbookmark{#1}{bkm#1}%
\renewcommand\contentsname{#1 Contents}%
\etoctoccontentsline{part}{#1}%
}
\begin{document}
\setcounter{tocdepth}{0}
\renewcommand\contentsname{Language directory}
\tableofcontents
\setcounter{tocdepth}{3}
%\newlang{english}
%\localtableofcontents
%\section{Apple}
% Or use
\newlangfile{english}{en.tex}
% if you prefer the second macro
\newlang{german}
\localtableofcontents
\section{Apfel}
\newlang{danish}
\localtableofcontents
\section{able}
\end{document}