首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >年表内联引文. CSL文件修改

年表内联引文. CSL文件修改
EN

Stack Overflow用户
提问于 2017-04-11 15:28:54
回答 2查看 1.2K关注 0票数 1

我知道内联引文组中引文的顺序是由.csl引文风格决定的。我想知道是否有人能够提供指导,如何编辑一个现有的风格,而不是顺序内联引文,以便它这样做。具体来说,我对修改自然风格 (指导方针)感兴趣,以便文本中被引用为"1-5“的组中的项目在参考书目中按时间顺序排序。

编辑:我需要这个不打破出版商的引文格式指南。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-11 16:26:36

我是CSL的开发人员之一,您不能用当前版本的CSL ( 1.0.1 )来指定这种行为。我想你有三种选择:

  1. 你可以自动在引文组中按时间顺序对引文中的引文进行排序,并将书目按引文顺序排列。然而,由于项目编号总是基于书目顺序,这可能导致" 4,3,5“等奇怪的引用(例如,如果您首先引用第3项,然后引用第3、4和5项,而第3项在第4项和第5项之间有一个发布日期)。
  2. 如果这是可以接受的,你可能会得到更好的结果,通过整理整个书目的时间。https://gist.github.com/rmzelle/bc869c900549226483123c11b0a90cb9/revisions#diff-505d66a4e3748adc6417742a07ce4f51展示了实现这一目标所需的自然风格的修改(按年份排序)。
  3. 你可能也可以用当前的风格实现这一点,只要你确保,每当你在一次引用中引用多个新项目时,你都要按时间顺序引用它们。
票数 2
EN

Stack Overflow用户

发布于 2017-04-11 23:47:47

我维护citeproc-js,它可能是使用最广泛的CSL处理器。尽管目前CSL规范或citeproc-js中都没有涉及到这种情况,但用例和触发行为的条件是明确的。考虑到如何处理它,我认为有两个层需要考虑:在CSL样式表中表示它的方式;以及在处理器内部实现的方式。

首先使用样式表,在未排序(或citation-number-sorted)书目中隐式地反映引用的排序顺序,这似乎很简单。这可以在不对CSL语言进行任何更改的情况下完成(除了可能指定行为)。这很诱人,但CSL书目中的排序顺序可能是明确的,因此会出现边缘情况,而且可能会让所有相关人员感到困惑。

在引擎盖下,在处理器内部,您将使用的是类似于first-reference-citation-number的排序键。1您将使用它作为参考书目中的引用排序的主键,将issued (或其他什么)作为辅助键。按照这个顺序排列的项目,一切都会就绪:citation-number将以通常的方式按升序分配给条目,所分配的编号将映射到文本引用项中,如果引用对issued (或其他什么)施加了一种排序,则数字折叠将如预期的那样工作。

为了清晰起见,您希望允许对(仍然假设的)first-reference-citation-number进行显式排序;这将需要对CSL规范进行(适度的)更改。

这是我在这个问题上的两点意见。@RinzeZelle和@adam.smith可能对此有进一步的思考。

1我们不能为此使用现有的first-reference-note-number,因为文本中的引文都有一个0的注释号。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43350258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档