Acro 包:处理所有格(撇号 s)

Acro 包:处理所有格(撇号 s)

当前的 v1.5 acro 包(http://bitbucket.org/cgnieder/acro/wiki/Home(与同样流行的缩写包不同)没有自动处理所有格的缩写调用,即当缩写的名词后面紧跟着撇号“s”时。一些网络搜索显示了一些可能适合处理这种情况的材料,例如,http://hstuart.dk/2007/08/03/programming-latex-—-writing-commands,但将其适配到 acro 包将需要比我目前拥有的更多的 tex 编程知识。我意识到这些知识是可以获得的,但不幸的是,我必须根据我的时间表做出选择。这意味着重新措辞一个原本结构有效的句子以避免使用撇号“s”。

对于某些人来说,适应 acro 包是否很简单?

此文章已发布至: http://latex-community.org/forum/viewtopic.php?f=15&t=24989 Acro 包:处理所有格(撇号 s)

答案1

更新答案

由于 v2.0acro有以下概念结局。它以这种方式处理复数形式并允许定义其他结尾。在acrov3 中,新的结尾声明如下:

\DeclareAcroEnding{possessive}{'s}{'s}

这定义了一个命令\acropossessive,可用于定义新acro命令。它还定义了许多首字母缩略词属性和选项,用于单独设置某些首字母缩略词的结尾或更改默认设置。

这是一个完整的示例,还展示了如何为acrov3.0 定义合适的命令:

\documentclass{article}
\usepackage{acro}

\DeclareAcroEnding{possessive}{'s}{'s}

\NewAcroCommand\acg{m}{\acropossessive\UseAcroTemplate{first}{#1}}
\NewAcroCommand\acsg{m}{\acropossessive\UseAcroTemplate{short}{#1}}
\NewAcroCommand\aclg{m}{\acropossessive\UseAcroTemplate{long}{#1}}

\DeclareAcronym{MP}{
  short            = MP ,
  long             = Member of Parliament ,
  long-plural-form = Members of Parliament ,
  long-possessive-form = Member's of Parliament
}

\DeclareAcronym{cd}{
  short = CD ,
  long  = compact disc
}

\begin{document}

first: \acg{cd}; \acg{MP}

short: \acsg{cd}; \acsg{MP}

long: \aclg{cd}; \aclg{MP}

\end{document}

在此处输入图片描述

原始答案:

由于 v2.0acro有以下概念结局。它以这种方式处理复数形式,并允许定义额外的结尾:

\ProvideAcroEnding{possessive}{'s}{'s}

这定义了一个较低级别的命令\acro_possessive:,可用于定义新acro命令,并定义了许多选项来为某些缩写词单独设置结尾。

这是一个完整的示例,还展示了如何定义合适的命令acro

\documentclass{article}
\usepackage{acro}

\ProvideAcroEnding {possessive} {'s} {'s}

\ExplSyntaxOn
\NewAcroCommand \acg
  {
    \acro_possessive:
    \acro_use:n {#1}
  }
\NewAcroCommand \acsg
  {
    \acro_possessive:
    \acro_short:n {#1}
  }
\NewAcroCommand \aclg
  {
    \acro_possessive:
    \acro_long:n {#1}
  }
\ExplSyntaxOff

\DeclareAcronym{MP}{
  short            = MP ,
  long             = Member of Parliament ,
  long-plural-form = Members of Parliament ,
  long-possessive-form = Member's of Parliament
}

\DeclareAcronym{cd}{
  short = CD ,
  long  = compact disc
}

\begin{document}

first: \acg{cd}; \acg{MP}

short: \acsg{cd}; \acsg{MP}

long: \aclg{cd}; \aclg{MP}

\end{document}

请注意,一个缩写词不能同时使用多个词尾。如果我们要定义

\NewAcroCommand \acpg
  {
    \acro_possessive:
    \acro_plural:
    \acro_use:n {#1}
  }

我们会得到CD

相关内容