![在 hyperref-pkg 中,是否有办法(有时)使用缩写;例如 tab. _vs_ table?](https://linux22.com/image/267500/%E5%9C%A8%20hyperref-pkg%20%E4%B8%AD%EF%BC%8C%E6%98%AF%E5%90%A6%E6%9C%89%E5%8A%9E%E6%B3%95%EF%BC%88%E6%9C%89%E6%97%B6%EF%BC%89%E4%BD%BF%E7%94%A8%E7%BC%A9%E5%86%99%EF%BC%9B%E4%BE%8B%E5%A6%82%20tab.%20_vs_%20table%EF%BC%9F.png)
“手动”,以下两种方法都可以解决问题(据我所知):
\ldots as presented in table~\ref{tab:birds_and_bees} \ldots
\ldots as presented in tab.~\ref{tab:birds_and_bees} \ldots
使用hyperref
-pkg 后,“仅”提供以下内容:
\ldots as presented in \autoref{tab:birds_and_bees} \ldots
生成长版本的“table”(不是缩写标签。)
我想有时使用是可以的\autoref{tab:birds_and_bees}
,tab.~\ref{tab:birds_and_bees}
其他时候使用(在同一个文档中!),但是有没有办法通过缩写来完成hyperref/autoref
呢?
PS:使用的一个缺点tab.~\ref{tab:birds_and_bees}
是“tab。”部分是不是链接化(在我的输出中不是“蓝色”)。在我看来,如果“tab.”也是蓝色的,它看起来就是测试版。
PPS:进行深入讨论(提供许多指针和值得思考的内容):交叉引用包:使用哪一个,哪些有冲突?
答案1
任意文本可以通过可选参数形式进行链接\hyperref
:
\hyperref[tab:birds_and_bees]{tab.~\ref*{tab:birds_and_bees}}
星号形式\ref*
生成没有链接的引用,以防止嵌套链接。
还\autoref
可以配置:
\renewcommand*{\tableautorefname}{tab.}
如果您正在使用包babel
,那么这取决于语言,例如:
\addto\extrasenglish{%
\renewcommand*{\tableautorefname}{tab.}%
}%
另请参阅的手册hyperref
。