Tagged Questions
17
votes
2answers
230 views
Difficulty with macro expansion (updated)
I'm not getting the output I want from my LaTeX code, and I think the problem is that I'm not expanding things at the right times.
Code
\documentclass{article}
\usepackage{tikz}
...
14
votes
2answers
272 views
LaTeX3: How to get reliable control over the level of expansion?
Say you want to write LaTeX3 code that manages user data. Sometimes you want to process that data, but other times you just want to store it, move it around and return it unchanged (when developing a ...
6
votes
1answer
84 views
Package providing fully expandable conditionals
Is there a package providing a collection of fully expandable conditionals like this one:
\newcommand\myif@num[1]
{\ifnum#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
Background: ...
22
votes
3answers
520 views
How to know whether or not we need \expandafter?
The following is quoted from Peter Grill's answer on question LaTeX dynamic macro definition.
The \expandafter is requried as the \newcommand needs to be dealt
with after the \csname.
As a ...
7
votes
1answer
189 views
Why do some arguments in a macro need to be preceded by \noexpand?
I keep on studying the use of nested tikzpicture environments (sorry) and I discover the next problem. I'm not sure but it sounds like a problem with "fragile" commands. Perhaps, the problem is the ...
12
votes
1answer
305 views
Why is \input not expandable?
In latex.ltx I found \def\input{\@ifnextchar\bgroup\@iinput\@@input} where \@@inputis expandable. I would like to know if there is an expandable version of \input.
The problem comes from an example ...
14
votes
2answers
763 views
How to add a hook to a macro
LaTeX uses hooks extensively, one method employed is the command g@addto@macro. It is defined in source2e as:
\long\def\g@addto@macro#1#2{%
\begingroup
\toks@\expandafter{#1#2}%
...
16
votes
2answers
518 views
Stripping the pt from a dimension
LaTeX defines in ltfssbas.dtx a macro called \strip@pt (at line [246]) which strips the pt part from a dimension returned by \the\dimension. The definition is shown as a minimal working example below:
...
6
votes
6answers
382 views
Is it possible to define a command that can be used where literal <comma-separated-list> is normally required?
I suspect I'm asking for magic, but I'll go ahead anyway. Suppose I have a command
that accepts an arbitrary-sized list of comma-separated terms. One that we're
all familiar with is \usepackage ...

