При написании пакета я начал использовать tcolorbox
его documentation
библиотеку. Я нашел ключи doc head command
и т. д. и начал настраивать. Но есть серьезные ограничения, потому что я в принципе не могу использовать функции enhanced
. Причина (код из пакета):
\newtcolorbox{tcb@doc@head}[1]{blank,colback=white,colframe=white,
code={\tcbdimto\tcb@temp@grow@left{-\kvtcb@doc@indentleft}%
\tcbdimto\tcb@temp@grow@right{-\kvtcb@doc@indentright}},
grow to left by=\tcb@temp@grow@left,%
grow to right by=\tcb@temp@grow@right,
sidebyside,sidebyside align=top,
sidebyside gap=-\tcb@w@upper@real,
phantom=\phantomsection,%
enlarge bottom by=-0.2\baselineskip,#1}
Он содержит опцию blank
, которая отключает все рисование. Для целей настройки я хотел бы удалить ее. Мне действительно нужно переопределять всю команду или есть какой-то простой способ?
МВЭ:
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{documentation}
\tcbset{
doc head command={colback=black} % disable blank here for the fancy stuff
}
\begin{document}
\begin{docCommand}{examplecommand}
Test
\end{docCommand}
\end{document}
решение1
Самый простой способ — сделать это \tcbset{blank/.style={}}
после загрузки documentation
библиотеки, но это может нарушить работу других tcolorbox
сред (их внешний вид изменится, если blank
они используются там).
Другое решение — определить noblank
, что частично отменяет определения blank
(настройки см. в файле tcbskins.code.tex
), к сожалению, некоторые параметры придется копировать и изменять вручную.
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{documentation}
% From tcbskins.code.tex
% blank/.style={enhanced,frame hidden,interior hidden,segmentation hidden,%
% arc=0pt,outer arc=0pt,boxsep=0pt,top=0pt,bottom=0pt,left=0pt,right=0pt,boxrule=0pt,%
% bottomtitle=6pt,middle=3pt}}
\tcbset{
noblank/.style={enhanced,frame style={draw,fill=tcbcol@frame}, interior style={draw,fill=tcbcol@back}, segmentation hidden,sharp corners,
%boxrule=1pt, % Change at will
%boxsep=1pt,
}
}
\tcbset{
doc head command={colback=black,noblank} % disable blank here for the fancy stuff
}
\begin{document}
\begin{docCommand}{examplecommand}{}
Test
\end{docCommand}
\end{document}