使用 linguex 删除引用周围的自动括号

使用 linguex 删除引用周围的自动括号

当我使用 \ref 命令时,交叉引用的数字周围会自动出现括号。我认为这是因为我使用 linguex 包作为示例。我不想让括号自动显示,这样我就可以手动在括号内添加子示例字母——例如 (5a)——当 a 从来不是可以标记的列表的一部分时。(具体来说,我需要这个来引用 OT 表中的候选者,这是我在表格中制作的,据我所知,它不适合列表环境。)

以下是 (我希望是) MWE:

\documentclass{article}

\usepackage{linguex}

\begin{document}

\ex. \label{test} Here's an example

I want to reference \ref{test} without getting parentheses around it automatically.

\end{document}

输出:

enter image description here

答案1

从 的第 4 版开始linguex,示例和引用中的数字周围的分隔符可以分别自定义:

\documentclass{article}

\usepackage{linguex}
\renewcommand{\theExLBr}{}
\renewcommand{\theExRBr}{}

\begin{document}

\ex. \label{test} Here's an example

I want to reference \ref{test} 

\end{document}

enter image description here

默认定义当然是

\newcommand{\theExLBr}{(}
\newcommand{\theExRBr}{)}

还有\ExLBr\ExRBr作为示例编号周围的分隔符。

答案2

通过更改所有标签的所有出现次数,重新定义\theExLbr\theExRbr可“全局”工作。如果您想\ref大多数时候使用括号,并且只需要一次性修复,您可以考虑编辑返回的字符串\ref。这需要xstringrefcount(后者也由导入hyperref)。

\documentclass{article}
\usepackage{refcount, xstring}

\usepackage{linguex}
\newcommand{\myref}[2][]{%
  \refused{#2}%
  \StrSubstitute{\getrefnumber{#2}}{)}{#1)}%
}

\begin{document}

\ex.\label{sent1}
\a. Sentence 1
\b. Sentence 2

Sentences \myref[a,b]{sent1} 

\end{document}

enter image description here

相关内容