\def \@hfThanksListInit
{
% 为了防止对外部环境的影响
% 我们把所有操作都放入到局部环境中
\ifx\@hfThanksListContent\undefined
{\ignorespaces
%没定义,需要进行初始化
\def\tmp{}\ignorespaces%先使用局部变量进行赋值
\global\let\@hfThanksListContent\tmp\ignorespaces%然后把局部变量的值提供给全局符号
}\ignorespaces
\fi
}
% 定义一个专门负责吃符号的命令
\def\@hfIgnoreOneToken#1{}
% 负责向列表追加条目
\newcommand\@hfThanksListAppend[1]
{\ignorespaces
{\ignorespaces
%1.先初始化
\@hfThanksListInit\ignorespaces
%有定义,添加新值
\xdef\oldValue{\@hfThanksListContent}\ignorespaces
\xdef\newLine{#1}\ignorespaces
\xdef\newValue{\oldValue\newLine}\ignorespaces
%先把原来的值保存起来
\global\xdef\@hfThanksListContent{\newValue}\ignorespaces
}\ignorespaces
}
\newcommand\@hfThanksList{
%1.先初始化
\@hfThanksListInit
%2.显示里面的值
\@hfThanksListContent
{
% 为了防止对外部环境的影响
% 我们把所有操作都放入到局部环境中
\ifx\@hfThanksListContent\undefined
{\ignorespaces
%没定义,需要进行初始化
\def\tmp{}\ignorespaces%先使用局部变量进行赋值
\global\let\@hfThanksListContent\tmp\ignorespaces%然后把局部变量的值提供给全局符号
}\ignorespaces
\fi
}
% 定义一个专门负责吃符号的命令
\def\@hfIgnoreOneToken#1{}
% 负责向列表追加条目
\newcommand\@hfThanksListAppend[1]
{\ignorespaces
{\ignorespaces
%1.先初始化
\@hfThanksListInit\ignorespaces
%有定义,添加新值
\xdef\oldValue{\@hfThanksListContent}\ignorespaces
\xdef\newLine{#1}\ignorespaces
\xdef\newValue{\oldValue\newLine}\ignorespaces
%先把原来的值保存起来
\global\xdef\@hfThanksListContent{\newValue}\ignorespaces
}\ignorespaces
}
\newcommand\@hfThanksList{
%1.先初始化
\@hfThanksListInit
%2.显示里面的值
\@hfThanksListContent
}
主要函数有两个:
hfThanksListAppend负责添加条目
hfThanksList负责显示列表的内容
列表的名字采用全局的符号xdef\@hfThanksListContent。
自己做其它的话,得修改一下名字。不然就冲突了。