Redefinir el comando dentro del encabezado de la página

Redefinir el comando dentro del encabezado de la página

Me gustaría redefinir un comando dentro de un encabezado de página que se genera usando scrheading. La razón de esto es que el encabezado de la página debe estar en mayúsculas; sin embargo, el encabezado del capítulo contiene un comando personalizado que cambia eltamaño de fuente. Necesito deshacer este cambio de tamaño de fuente únicamente dentro del encabezado.

Aquí hay un MWE:

\documentclass{scrreprt}

\usepackage[markcase=lower]{scrlayer-scrpage}
\usepackage{graphics}
\usepackage{hyperref}

\newcommand*\lowsc[1]{\texorpdfstring{\protect\scalebox{0.8}{#1}}{#1}}

\pagestyle{scrheadings}
\automark[chapter]{chapter}
\renewcommand*\headfont{%
    \scshape%
    \renewcommand*\lowsc[1]{##1}}

\newcommand\itex{\lowsc{i}\textsc{tex}}

\begin{document}
\chapter{\itex{} test}

\clearpage
Some text. \itex{}.
\end{document}

El resultado esperado aquí sería que el encabezado de la página 2 se vea así:

esperado

En cambio, se ve así:

actual

Como \itexmuestra el ejemplo, la \lowscmacro se utiliza junto con \textscel estilo de una abreviatura en versalitas, pero con letras minúsculas intermitentes. Sin la \lowscmacro, estos se verían demasiado grandes al lado de las letras minúsculas.

El \renewcommand*\lowscinterior \headfontparece no tener ningún efecto. Si uso \gdef(o alguna \grenewcommandmacro personalizada) en su lugar, funciona. Sin embargo, eso redefine el comando.globalmente, de modo que los usos posteriores en el texto principal también cambien, lo cual no debería ser así. Esto me parece un problema de alcance, pero honestamente no sé por qué no se aplica mi macro redefinida (no globalmente).

Respuesta1

Debido a cómo lo definiste \lowsc, la redefinición en el encabezado no se aplica a nada, porque lo que TeX ve en ese punto \lowscya no es, sino \scalebox{0.8}{i}.

Usar \DeclareRobustCommandfor \lowscresuelve el problema. Sin embargo, usaría un condicional.

\documentclass{scrreprt}

\usepackage[markcase=lower]{scrlayer-scrpage}
\usepackage{graphics}
\usepackage{hyperref}

\newif\ifinheader
\DeclareRobustCommand\lowsc[1]{%
  \ifinheader
    #1%
  \else
    \texorpdfstring{\scalebox{0.8}{#1}}{#1}%
  \fi
}

\pagestyle{scrheadings}
\automark[chapter]{chapter}
\renewcommand*\headfont{%
    \scshape\inheadertrue
}

\newcommand\itex{\lowsc{i}\textsc{tex}}

\begin{document}
\chapter{\itex{} test}

\clearpage
Some text. \itex{}.
\end{document}

ingrese la descripción de la imagen aquí

información relacionada