summaryrefslogtreecommitdiff
path: root/texinfo.tex
diff options
context:
space:
mode:
Diffstat (limited to 'texinfo.tex')
-rw-r--r--texinfo.tex18
1 files changed, 13 insertions, 5 deletions
diff --git a/texinfo.tex b/texinfo.tex
index 22d0ae0..8e2ce6e 100644
--- a/texinfo.tex
+++ b/texinfo.tex
@@ -868,7 +868,9 @@ where each line of input produces a line of output.}
% didn't need it. Make sure the catcode of space is correct to avoid
% losing inside @example, for instance.
%
-\def\set{\begingroup\catcode` =10 \parsearg\setxxx}
+\def\set{\begingroup\catcode` =10
+ \catcode`\-=12 \catcode`\_=12 % Allow - and _ in VAR.
+ \parsearg\setxxx}
\def\setxxx#1{\setyyy#1 \endsetyyy}
\def\setyyy#1 #2\endsetyyy{%
\def\temp{#2}%
@@ -889,10 +891,16 @@ where each line of input produces a line of output.}
% @value{foo} gets the text saved in variable foo.
%
-\def\value#1{\expandafter
- \ifx\csname SET#1\endcsname\relax
- {\{No value for ``#1''\}}
- \else \csname SET#1\endcsname \fi}
+\def\value{\begingroup
+ \catcode`\-=12 \catcode`\_=12 % Allow - and _ in VAR.
+ \parsearg\valuexxx}
+\def\valuexxx#1{%
+ \expandafter\ifx\csname SET#1\endcsname\relax
+ {\{No value for ``#1''\}}%
+ \else
+ \csname SET#1\endcsname
+ \fi
+\endgroup}
% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
% with @set.