Criei um novo ambiente usando \newtcolorbox
, com numeração automática e uma entrada de TOC funcionando corretamente e tudo mais. Os itens individuais aparecem exatamente onde deveriam dentro dos capítulos. O que eu gostaria é de exibir todos esses itens novamente, no final de um capítulo ou no final de uma parte, ou em um apêndice ou algo assim. Não quero outro TOC; Quero exibir os itens reais do ambiente, da forma como aparecem no corpo principal do texto, novamente em uma grande coleção. Não tive sorte em procurar uma resposta para isso, então qualquer conselho será muito apreciado.
Responder1
O recording
recurso tcolorbox
simplifica a reexibição do conteúdo. Existem algumas abordagens para usar recording
, apresento aqui apenas uma:
- Defina um
tcolorbox
ambiente, digamosdisplaythis
, que se destina à primeira exibição de conteúdo e armazena o conteúdo em um arquivo chamado\jobname.display\thetcbcounter
, que se expande para\jobname.display1
,\jobname.display2
etc. Dizer
record={\string\redisplaythis[#1]{\jobname.display\thetcbcounter}}
na lista de opções do
displaythis
ambiente, que instruitcolorbox
a gravação\redisplaythis{#1}{\jobname.display\thetcbcounter}
no arquivo de registro.Defina um total
tcolorbox
reddisplaythis
que utilize o argumento obrigatório para carregar o conteúdo já armazenado. (O\NewTotalTColorBox
tem a vantagem de que o conteúdo da caixa também pode ser especificado, ao contrário detcolorbox
)Utilize
\tcbstartrecording[myenvironments.env]
antes do primeiro ambiente a ser salvo e\tcbstoprecording
depois do último.Inscreva-se
\tcbinputrecords[myenvironments.env]
para reexibição finalmente.
\documentclass{book}
\usepackage[most]{tcolorbox}
\usepackage{blindtext}
\makeatletter
\NewTColorBox[auto counter,list type=section,list inside=red]{displaythis}{O{}}{%
enhanced,
sharp corners,
title={My nice Environment \thetcbcounter},
saveto={\jobname.display\thetcbcounter},
record={\string\redisplaythis[#1]{\jobname.display\thetcbcounter}},
#1,
}
\NewTotalTColorBox[auto counter]{\redisplaythis}{O{}m}{
enhanced,
sharp corners,
title={My nice Environment (again) \thetcbcounter},
#1
}{\input{#2}}
\makeatother
\begin{document}
\tcbstartrecording[myenvironments.env]
\tcblistof{red}{List of environments}
\begin{displaythis}
\blindtext
\end{displaythis}
\begin{displaythis}[colback=white!60!yellow]
\blindtext[2]
\end{displaythis}
\tcbstoprecording
\tcbinputrecords[myenvironments.env]
\end{document}