Comportamiento predeterminado cuando falta un argumento en \newcommand

Comportamiento predeterminado cuando falta un argumento en \newcommand

Intentaré ser claro porqueesteno es lo que estoy buscando.

Lo que estoy tratando de hacer es definir un nuevo comando que tome un argumento pero tenga un comportamiento diferente ya sea que ese argumento esté especificado o no.

Esto es lo que tengo hasta ahora:

\newcommand\Nk[1][k]{N_{#1}}

Quiero poder conseguir:

  • nksi entro\Nk
  • nisi entro\Nk{i}

Por ahora, con esa segunda opción solo me sale nik.

Así que aquí está mi pregunta: ¿cómo puedo conseguir el comportamiento que quiero?

Muchas gracias.

Respuesta1

La regla de \newcommandes que los argumentos opcionales se proporcionan entre corchetes []y los argumentos obligatorios se proporcionan entre llaves {}.

Es un error de novato olvidarlo, pero puede resultar frustrante saber cuándo sucede.

\documentclass{article}
\newcommand\Nk[1][k]{N_{#1}}
\begin{document}
    $N_k$ if I enter $\Nk$\par
    $N_i$ if I enter $\Nk[i]$\par
    but not $\Nk{i}$.
\end{document}

ingrese la descripción de la imagen aquí

información relacionada