Prof scusa se ti rompo le scatole amche di domenica,
dato
` \define@key[]{ }{ }[ ]{ }` Ho provato a scrivere
`\define@key{scatola}{rulecolor}[black]{\def\scatola@rulecolor{\color{#1}}}
\define@key{scatola}{textcolor}[black]{\def\scatola@textcolor{\color{#1}}}`al posto di
`\define@key{scatola}{rulecolor}{\def\scatola@rulecolor{\color{#1}}}
\define@key{scatola}{textcolor}{\def\scatola@textcolor{\color{#1}}}
\setkeys{scatola}{textcolor=black,rulecolor=black}%al posto delle due successive
%\def\scatola@rulecolor{\color{black}}
%\def\scatola@textcolor{\color{black}}`ma dà errore. Quale è il ruolo di [
]? Serve a tutt’altro?
Serve ad assegnare un valore se si specifica solo la chiave senza il valore. Di solito si usa con true e false, ma non solo. Quindi puoi scrivere
`\newenvironment{scatola}[1][]
{\setkeys{scatola}{textcolor,rulecolor,#1}%
\par\scatola@rulecolor%
\hrule\vskip3pt\begingroup\scatola@textcolor}
{\endgroup\vskip3pt\hrule}
\define@key{scatola}{rulecolor}[black]{\def\scatola@rulecolor{\color{#1}}}
\define@key{scatola}{textcolor}[black]{\def\scatola@textcolor{\color{#1}}}`
che ti dà il vantaggio di avere il default in un posto ben determinato.
Ciao
Enrico