
I have a command `\putansline{1}{2}` that inserts `1` line of dots and prints the total score as `[2]`. I want to define a new command that if issued, will redefine this command so that it prints only the score. Here's what I have for this new command:

``````\newcommand{\hideanslines}{%
\renewcommand{\putansline}[2]{[#2]}
}%
``````

I get an `illegal parameter number` error for this new command though. How can I define this new command `hideanslines` so that after I issue it, putansline can only print the points and not the lines?

-
The nested-ness of a macro definition increases the number of `#`'s by a factor of 2. See the following UK TeX FAQ entries: Illegal parameter number in definition, followed by Defining LaTeX commands within other commands (for a LaTeX reference) and Defining macros within macros (for a TeX reference). – Werner Dec 26 '11 at 7:23

Use two `#`'s.
``````\newcommand{\hideanslines}{%