hushidong / biblatex-gb7714-2015

A biblatex implementation of the GB/T7714-2015 bibliography style || GB/T 7714-2015 参考文献著录和标注的biblatex样式包
742 stars 83 forks source link

关于 *leftparen/*rightparen 的疑问,以及增加 gbcitelabel 选项的建议 #166

Closed suxpert closed 1 year ago

suxpert commented 1 year ago

问题描述:国内某些高校在要求使用国标的大前提下,其格式要求以及模板中存在许多变体。 例如,清华大学的参考文献写作指南中,其文内引用均采用了全角括号。

根据 #69 中提供的示例,我分别尝试了不同的几种方式,遇到的问题如下:

  1. 改动 bibleftparen/bibrightparen 的效果是,citeyearcite 命令中的括号仍然为半角括号,但 textcite 中变成了全角,同时,backref 的括号变成了全角;
  2. 如果将 mkbibleftborder 这一对改成全角,倒是可以把 citeyearcite 中的括号改成全角,但只改动它们无法影响 textcite

看起来不同 cite 命令需要改动的括号不太一致,并且字面意义上也不太容易理解。

所以问题是,如果我希望只有正文中的 cite(各种 cite)中都应用全角括号,但不改变文献列表中的任何内容,正确的姿势应该是什么?

同时,注意到您提供的 style 中有 gbbiblabelbgcitelabel 选项可以选择某种预设,是否可以增加几种中文样式的预设呢?

谢谢解答!

hushidong commented 1 year ago

好的,这个中文括号的问题,并没有在authoryear样式中进行充分设计,只是是在其他样式中(比如提供的三个社科类样式里有所用到),所以这里面没有统一。

这两天空了,我再考虑一下,统一起来,然后再更新一波。

主要还是这方面的用的少,大家提的需求基本没有涉及这块。

我自己主要用顺序编码制的,最多用一下双语对照,所以新的需求只能靠大家慢慢提,然后慢慢改进积累。

hushidong commented 1 year ago

我更新了一下,作者年制样式的gbcitelabel增加了三个选项:

gbcitelabel=bracketqj,用于作者年制,标签由全角方括号包围,比如【作者, 2001】 gbcitelabel=parensqj,用于作者年制,标签由全角圆括号包围,比如(作者, 2001) gbcitelabel=quanjiao,用于作者年制,标签由全角圆括号包围且内部标点为全角标点,比如(作者,2001)

hushidong commented 1 year ago

使用gbcitelabel=quanjiao 效果为:

图片

使用gbcitelabel=parensqj 效果为: 图片

使用gbcitelabel=bracketqj 效果为: 图片

hushidong commented 1 year ago

@suxpert 我现在只更新了github,你可以下载gb7714-2015ay.bbx/cbx,文件测试一下,是否达到你的要求,或者你有什么更好的建议,都可以提出来,等这个问题,比较好的解决了,我在更新ctan。

suxpert commented 1 year ago

感谢大佬!!

hushidong commented 1 year ago

昨天的更新还不完善,可能会影响文献表,使得gbbiblabel选项失效,今天进一步做了完善,你可以再试试看。

suxpert commented 1 year ago

或许是我的 texlive 版本比较早?我看到了这个:

Package biblatex Warning: Macro 'textcite' already defined. (biblatex) Using \renewbibmacro.

Package biblatex Warning: Macro 'textcite:postnote' already defined. (biblatex) Using \renewbibmacro.

不过正文跟引用表现正常。