When a function is called, I would like to remove any leading space. Then the function can control the spacing. If I don't remove spaces, it then makes a difference whether or not I have a space before the function is called.
I would like the output of the following two lines to be equal:
This is a \MyFunction[1] test.
This is a\MyFunction[1] test.
However, they are not because the first line has a space before the function call.
\def\MyFunction{\dosingleempty\doMyFunction}
\def\doMyFunction[#1]{%
\processaction[#1]%
[1=>\medspace dog ,%
2=>\medspace cat ,%
default=>\ldots]%
}
\starttext
Test1: This is a\MyFunction[1] test.
Test2: This is a \MyFunction[1] test.
Test3: This is a \MyFunction test.
Test4: This is a\MyFunction test.
\stoptext
Is there a way to do this and not cause any side effects?
Thanks,
Bart