
Primeiro, estou usando o LyX com um preâmbulo bastante longo porque quero coisas bastante específicas, mas quase todo o código do preâmbulo é recortado e colado da 'Net com algumas modificações. Não sou um guru do TeX, mas preciso de um!
Eu tenho tabelas Zebra quase sempre em um ambiente Float Table. Eu também tenho alguns ambientes Float Figure e quero que o efeito zebra esteja desativado para eles, já que não é realmente uma mesa. É difícil de explicar e parece que não consigo anexar um exemplo.
O que eu quero é uma condicional (ERT é bom, mas se eu conseguir encaixá-la no preâmbulo, melhor ainda), que desative as tabelas Zebra quando estiver em um ambiente Float: Figure.
Aqui está o que eu uso para tabelas Zebra (e outras formatações de tabela) ...
%
% Zebra Tables w/footnotes
%
\let\mytoprule\toprule
\renewcommand{\toprule}{\mytoprule[2pt]}
\let\mybottomrule\bottomrule
\renewcommand{\bottomrule}{\mybottomrule[2pt]}
\let\mymidrule\midrule
\renewcommand{\midrule}{\mymidrule[1pt]}
\let\tabulary\tabular
\let\endtabulary\endtabular
\renewenvironment{tabular}{\rowcolors{2}{white}{shadecolor}\tabulary} {\endtabulary}
\usepackage{footnote}
\makesavenoteenv{tabular}
Então, como desativo tudo isso quando \tabular está em um ambiente Float: Figure?
Responder1
Se entendi bem o que você está perguntando, você pode fazer isso com o etoolbox
pacote:
\documentclass[a4paper, 11pf]{article}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[table, x11names]{xcolor}
\usepackage{booktabs, caption}
\colorlet{shadecolor}{LightSteelBlue1}
\let\mytoprule\toprule
\renewcommand{\toprule}{\mytoprule[2pt]}
\let\mybottomrule\bottomrule
\renewcommand{\bottomrule}{\mybottomrule[2pt]}
\let\mymidrule\midrule
\renewcommand{\midrule}{\mymidrule[1pt]}
\let\tabulary\tabular
\let\endtabulary\endtabular
\renewenvironment{tabular}{\ifbool{intableenv}{\rowcolors{2}{white}{shadecolor}}{}\tabulary} {\endtabulary}
\usepackage{etoolbox}
\newbool{intableenv}
\AtBeginEnvironment{table}{\booltrue{intableenv}}%{}{}
\AtEndEnvironment{table}{\boolfalse{intableenv}}{}{}
\begin{document}
\begin{table}[!h]
\centering
\caption{A Zebra Table}
\begin{tabular}{llccc}
\toprule
\multicolumn{2}{c} {}& \textbf{Head 1} & \textbf{Head 2} & \textbf{Head 3} \\
\midrule
A & & & & \\
B & & & & \\
C & & & & \\
D & & & & \\
E & & & & \\
F & & & & \\
G & & & & \\
\bottomrule
\end{tabular}%
\end{table}
\begin{figure}[!h]
\centering
\begin{tabular}{llccc}
\toprule
\multicolumn{2}{c}{} & \textbf{Head 1} & \textbf{Head 2} & \textbf{Head 3} \\
\midrule
A & & & & \\
B & & & & \\
C & & & & \\
D & & & & \\
E & & & & \\
F & & & & \\
G & & & & \\
\bottomrule
\end{tabular}%
\caption{Same table}
\end{figure}
\end{document}