引用浮点数的快捷命令

引用浮点数的快捷命令

我总是在 latex 文档的序言中包含以下命令,以确保我在文本中始终引用浮点数。我想知道社区对此有什么看法,这是一个好主意还是坏主意,或者是否有一个包可以复制此功能?

\newcommand{\figref}[1]{Figure~\ref{fig:#1}}
\newcommand{\figsref}[2]{Figures~\ref{fig:#1}~and~\ref{fig:#2}}
\newcommand{\figtoref}[2]{Figures~\ref{fig:#1}~through~\ref{fig:#2}}

\newcommand{\tblref}[1]{Table~\ref{tbl:#1}}
\newcommand{\eref}[1]{Equation~\ref{eqn:#1}}
\newcommand{\esref}[2]{Equations~\ref{eqn:#1}~and~\ref{eqn:#2}}
\newcommand{\etoref}[2]{Equations~\ref{eqn:#1}~through~\ref{eqn:#2}}

\newcommand{\secref}[1]{Section~\ref{sec:#1}}
\newcommand{\charef}[1]{Chapter~\ref{cha:#1}}
\newcommand{\aref}[1]{Appendix~\ref{apndx:#1}}

此外,我的主管坚持要求所有拉丁语表达都用斜体表示,这样可以节省我的打字时间。

\newcommand{\etal}{\mbox{\emph{et al.\ }}}
\newcommand{\ie}{\mbox{\emph{i. e.\ }}}
\newcommand{\etals}{\mbox{\emph{et al.\ }'s }}

答案1

正如评论中提到的那样,cleveref软件包为您提供了额外的命令:

  • \cref{<key>}将扩展为figure~\ref{<key>}table~\ref{<key>}equation~\eqref{<key>}具体取决于您所指的内容。
  • \Cref{<key>}在句子开头大写。(如果您喜欢这种风格,有一个包选项可以将每个“图片”、“表格”等大写。\Cref仅在句子开头使用。)
  • \cref{eq2,eq1,eq3,eq5,thm2,def1}产生:eqs.~(1) to~(3) and~(5), theorem~5, and definition~1[摘自包装手册]
  • \crefrange{eq1}{eq5}给出eqs.~(1) to~(5)[摘自包装手册]
  • \cpageref如果您需要引用多个页面,它也会派上用场。
  • \namecref
  • 它与 配合得很好babel
  • 它确实适用于varioref(它会侵入的varioref命令,以便您可以像 等一样使用它\vref)和hyperref如果按订单装载
    1. varioref
    2. hyperref
    3. cleveref

关于你问题的第二部分,我建议“\emph 或 \textit“。

您也可以看看xspace

\documentclass{article}
\usepackage{xspace}
% Choose one of the two follwing:
  \newcommand{\latinphrase}[1]{\textit{#1}}  % always italic
% \newcommand{\latinphrase}[1]{\emph{#1}}    % italic in roman text, upshaped in italicized text
\newcommand{\etal}{\latinphrase{et~al.}\xspace}
\newcommand{\ie}{\latinphrase{i.e.}\xspace}
\newcommand{\etals}{\latinphrase{et~al.}'s\xspace}

\begin{document}\noindent
    \emph{This is \emph{very} important.} -- \emph{This is \textit{very} important}\\
    \emph{You better read Knuth's books, \ie ``The \TeX book''.}\\
    \emph{Read Knuth \emph{et amici.}} -- \emph{Read Knuth \latinphrase{et amici.}}
\end{document}

编译示例

相关内容