summaryrefslogtreecommitdiff
path: root/tex/context/base/publ-imp-cite.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/publ-imp-cite.mkiv')
-rw-r--r--tex/context/base/publ-imp-cite.mkiv136
1 files changed, 97 insertions, 39 deletions
diff --git a/tex/context/base/publ-imp-cite.mkiv b/tex/context/base/publ-imp-cite.mkiv
index d64c2132c..dcec866a3 100644
--- a/tex/context/base/publ-imp-cite.mkiv
+++ b/tex/context/base/publ-imp-cite.mkiv
@@ -11,64 +11,122 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\startsetups btx:cite:author
- \btxcitevariant{author}
-\stopsetups
+\unprotect
-\startsetups btx:cite:authoryear
- \btxcitevariant{authoryear}
-\stopsetups
+% The null case:
-\startsetups btx:cite:authoryears
- \btxcitevariant{authoryears}
+\startsetups \s!btx:\s!cite:none
+ % dummy
\stopsetups
-% \startsetups btx:cite:authornum
-% \btxcitevariant{author}
-% \btxcitevariantparameter\c!inbetween
-% \btxcitevariant{num}
-% \stopsetups
+% This saves keying:
-\startsetups btx:cite:authornum
- \btxcitevariant{authornum}
+\startsetups \s!btx:\s!cite:common:default
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\v!inbetween
+ \currentbtxsecond
+ \fi
\stopsetups
-\startsetups btx:cite:year
- \btxcitevariant{year}
+\startsetups \s!btx:\s!cite:concat
+ \ifcase\currentbtxconcat \or \or
+ \btxcitevariantparameter\c!pubsep
+ \or
+ \btxcitevariantparameter\c!finalpubsep
+ \or
+ \btxcitevariantparameter\c!lastpubsep
+ \fi
\stopsetups
-\startsetups btx:cite:short
- \btxcitevariant{short}
+\startsetups \s!btx:\s!cite:common
+ \directsetup{\s!btx:\s!cite:concat}
+ \ifconditional\btxinteractive
+ \goto {
+ \directsetup{\s!btx:\s!cite:common:default}
+ } [
+ internal(\currentbtxinternal)
+ ]
+ \else
+ \directsetup{\s!btx:\s!cite:common:default}
+ \fi
\stopsetups
-\startsetups btx:cite:serial
- \btxcitevariant{serial}
+\startsetups \s!btx:\s!cite:variant
+ \directsetup{\s!btx:\s!cite:concat}
+ \ifconditional\btxinteractive
+ \goto {
+ \directsetup{\s!btx:\s!cite:common:\currentbtxcitevariant}
+ } [
+ internal(\currentbtxinternal)
+ ]
+ \else
+ \directsetup{\s!btx:\s!cite:common:\currentbtxcitevariant}
+ \fi
\stopsetups
-\startsetups btx:cite:key
- \currentbtxtag % \btxcitevariant{tag}
-\stopsetups
+% author lists:
-\startsetups btx:cite:doi
- todo: \btxcitevariant{doi}
+\startsetups \s!btx:\s!cite:common:author
+ \currentbtxfirst
\stopsetups
-
-\startsetups btx:cite:url
- todo: \btxcitevariant{url}
+\startsetups \s!btx:\s!cite:common:authoryear
+ \currentbtxfirst,\space(\currentbtxsecond)
\stopsetups
-
-\startsetups btx:cite:type
- \btxcitevariant{category}
+\startsetups \s!btx:\s!cite:common:authoryears
+ \currentbtxfirst,\space\currentbtxsecond
\stopsetups
-
-\startsetups btx:cite:page
- \btxcitevariant{page}
+\startsetups \s!btx:\s!cite:common:authornum
+ \currentbtxfirst\space[\currentbtxsecond]
\stopsetups
-\startsetups btx:cite:none
- % dummy
+\startsetups \s!btx:\s!cite:author
+ \directsetup{\s!btx:\s!cite:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authoryear
+ \directsetup{\s!btx:\s!cite:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authoryears
+ \directsetup{\s!btx:\s!cite:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authornum
+ \directsetup{\s!btx:\s!cite:variant}
\stopsetups
-\startsetups btx:cite:num
- \btxcitevariant{num}
+\startsetups \s!btx:\s!cite:year
+ \directsetup{\s!btx:\s!cite:common}
\stopsetups
+\startsetups \s!btx:\s!cite:short
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:serial
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:tag
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:key
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:doi
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:url
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:category
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:type
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:num
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+\startsetups \s!btx:\s!cite:page
+ \directsetup{\s!btx:\s!cite:common}
+\stopsetups
+
+\protect