![使用主超链接文本文件修改多个文档中的超链接](https://linux22.com/image/416567/%E4%BD%BF%E7%94%A8%E4%B8%BB%E8%B6%85%E9%93%BE%E6%8E%A5%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6%E4%BF%AE%E6%94%B9%E5%A4%9A%E4%B8%AA%E6%96%87%E6%A1%A3%E4%B8%AD%E7%9A%84%E8%B6%85%E9%93%BE%E6%8E%A5.png)
在将我的教学材料转移到网上时,我遇到了一些技术难题,希望得到任何意见或指点。
前提:每周我都会有一套教学笔记。学习者会浏览这些笔记,并按照笔记进行操作,然后我希望他们通过在线问卷提交自我评估。例如:
> \documentclass{article}
> \usepackage{hyperref}
> \begin{document}
>
> Week one contents here.
>
> Please fill out \href{http://www.QuestionnaireWeek01.com}{this questionnaire} to
> tell us what's the most interesting you learned in this module and
> what's the one muddiest point that you'd like clarified.
>
> \end{document}
挑战:对于每门课程,我都会有 14 份这样的笔记,以及 14 个不同的在线问卷链接。在每个周期开始时修改它们可能会很麻烦。我想知道是否有一种方法可以将所有更新的超链接保存在一个文件中,以便所有 14 份文档都引用这个中心文档。(有点像 \input,但只针对该超链接。)下面是一个类似于代码的示例,说明了我的意思:
% This contains all the hyperlinks, which I can easily update at the beginning of every cycle:
a = http://www.QuestionnaireWeek01.com
b = http://www.QuestionnaireWeek02.com
c = http://www.QuestionnaireWeek03.com
d = http://www.QuestionnaireWeek04.com
e = http://www.QuestionnaireWeek05.com, etc.
注释只会引用静态标签而不是链接:
> \documentclass{article}
> \usepackage{hyperref}
> \begin{document}
>
> Week one contents here.
>
> Please fill out \href{that ``a'' in the master link file above}{this questionnaire} to
> tell us what's the most interesting you learned in this module and
> what's the one muddiest point that you'd like clarified.
>
> \end{document}
... 就像一个宏变量。也许通过 \newcommand?我只是有点不知道如何连接这两个文档。
答案1
现在感觉有点傻,因为我的问题似乎已经包含了一个可能的答案。我想我可以把所有的超链接写在一个名为“listurl”的文档中:
% List of website
\newcommand{\urlgoogle}{https://www.google.com}
\newcommand{\urlreddit}{https://www.reddit.com}
然后将其输入到我所有每周笔记的序言中,例如:
\documentclass{article}
\usepackage{hyperref}
\input{listurl}
\begin{document}
Week one contents here.
See this \href{\urlgoogle}{Google} site.
See this \href{\urlreddit}{Reddit} site.
\end{document}
这应该可行吗?如果有更直接或更优雅的方法,请告诉我。