我有一堆自动生成的LaTeX代码,它们的超目标形式为“functionname_2093840289fad1337”,即附加了哈希的函数名称。我想仅通过引用我知道是唯一的函数名称来引用文档其余部分中的那些函数。我想要一个类似这样的查找功能:
\hyperdyperlink{functionname}
发出
\hyperlink{functionname_2093840289fad1337}{functionname}
请注意,我无法计算哈希,但是我准备编写一个将每个函数名映射到functionname + hash的表。编写这种功能的最佳方法是什么?
最佳答案
这行得通吗?
\makeatletter
\newcommand\hashlink [2] {%
\@namedef {hashlink-#1} {#2}%
}
\newcommand\hyperdyperlink [1] {%
\超链接
{#1 _\@ nameuse {hashlink-#1}}
{#1}%
}
\hashlink {functionname} {2093840289fad1337}
\hyperdyperlink {functionname}
\makeatother
(未经测试。)
稍后:要根据是否定义了链接目标来分支代码,可以编写如下内容:
\newcommand\hyperdyperlink [1] {%
\@ifundefined {hashlink-#1} {%
[您想做什么]
} {%
\hyperlink {#1 _\@ nameuse {hashlink-#1}} {#1}%
}%
}
(更新: oops;第一次发布时,它已经很糟糕了,对不起。我希望现在已解决。)
关于latex - Latex中的查询表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/963997/