cambiar el formato \eqref con \RenewDocumentCommand (u otra forma)

cambiar el formato \eqref con \RenewDocumentCommand (u otra forma)

Este es un seguimiento de una respuesta en: ¿Cuál es la forma correcta de escribir "Ver Ec. (n)"

\documentclass[12pt]{report}   

\usepackage[UKenglish]{babel}
\usepackage{graphicx} 
\usepackage{epstopdf}    
\usepackage{gensymb}
\usepackage{amssymb}
\usepackage{stmaryrd}
\usepackage{amsmath}  
\usepackage{siunitx}
\usepackage{placeins}
\usepackage{letltxmacro}


\LetLtxMacro{\oldeqref}{\eqref}
\RenewDocumentCommand\eqref{D<>{Equation}om}{%
\IfNoValueTF{#2}
{#1~\oldeqref{#3}}
{(#2 #1~\textup{\ref{#3}})}%
}

\begin{document}

\begin{equation}
\label{eq:test}
x=2y;
\end{equation}%

what this looks like:

this is Equation~\eqref{eq:test}

this is \eqref[Equation]{eq:test}

%this is \eqref[Equation][: terms 1 and 2]{eq:test}



\end{document}

Esta respuesta hace la mayor parte de lo que quiero hacer, pero me gustaría cambiarla para que

 \eqref[]{eqlable} 

también puede tomar la forma

\eqref[][]{eqlabel} 

para que se pueda agregar escritura tanto antes como después del número de ecuación dentro de los corchetes. Además, me gustaría no tener la "Ecuación" allí, ya que ya la escribí en todo mi documento (cuando no necesito corchetes) y agregar esto la duplica. Si elimino esto de lo anterior, termino con un espacio extraño.

Definir un nuevo comando también funcionaría, y he visto otras respuestas basadas en esto, pero no sé cómo editar ninguna de ellas para que funcione el texto de antes y después.

editar: Me gustaría que la segunda opción se viera así

   \eqref[Equation][: terms 1 and 2]{eqlabel}

y producir (Ecuación 1.1: términos 1 y 2). Los corchetes ya se agregan automáticamente cuando escribo [] como opción.

y para

Equation~\eqref{eqlabel} 

para producir la Ecuación (1.1). esto ya funciona

cualquier forma de obtener los términos: 1 y 2 después del número entre paréntesis estaría bien. Puedo cambiar la forma en que escribo la ecuación para que coincida con lo que funcione

Respuesta1

Creo que está funcionando como quieres :)

ingrese la descripción de la imagen aquí

\documentclass[12pt]{report}   

\usepackage[UKenglish]{babel}
\usepackage{graphicx} 
\usepackage{epstopdf}    
\usepackage{gensymb}
\usepackage{amssymb}
\usepackage{stmaryrd}
\usepackage{amsmath}  
\usepackage{siunitx}
\usepackage{placeins}
\usepackage{letltxmacro}


%\LetLtxMacro{\oldeqref}{\eqref}
% As Christian Hupfer noted, there is no need to use \LetLtxMacro here. Although there is no harm is using it (https://tex.stackexchange.com/questions/88001/when-to-use-letltxmacro)
\let\oldeqref\eqref
\RenewDocumentCommand\eqref{oom}{%
\IfNoValueTF{#2}{\def\eqafter{}}{\def\eqafter{#2}}%
\IfNoValueTF{#1}
{\oldeqref{#3}}
{(#1 \textup{\ref{#3}}\eqafter)}%
}

\begin{document}

\begin{equation}
\label{eq:test}
x=2y;
\end{equation}%

what this looks like:

this is Equation~\eqref{eq:test}

this is \eqref[Equation]{eq:test}

this is \eqref[Equation][: terms 1 and 2]{eq:test}

\end{document}

información relacionada