summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv')
-rw-r--r--Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv223
1 files changed, 188 insertions, 35 deletions
diff --git a/Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv b/Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv
index d64c2132cee..0f0c69fa70c 100644
--- a/Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv
+++ b/Master/texmf-dist/tex/context/base/publ-imp-cite.mkiv
@@ -11,64 +11,217 @@
%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:normal
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\v!inbetween
+ \currentbtxsecond
+ \fi
\stopsetups
-\startsetups btx:cite:year
- \btxcitevariant{year}
+\startsetups \s!btx:\s!cite:common:range
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\c!range
+ \currentbtxsecond
+ \fi
\stopsetups
-\startsetups btx:cite:short
- \btxcitevariant{short}
+\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:serial
- \btxcitevariant{serial}
+% \startsetups \s!btx:\s!cite:render:normal
+% \directsetup{\s!btx:\s!cite:concat}
+% \ifconditional\btxinteractive
+% \goto {
+% \directsetup{\s!btx:\s!cite:common:normal}
+% } [
+% \s!internal(\currentbtxinternal)
+% ]
+% \else
+% \directsetup{\s!btx:\s!cite:common:normal}
+% \fi
+% \stopsetups
+%
+% more efficient:
+
+\startsetups \s!btx:\s!cite:render:normal
+ \directsetup{\s!btx:\s!cite:concat}
+ \ifconditional\btxinteractive
+ \goto {
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\v!inbetween
+ \currentbtxsecond
+ \fi
+ } [
+ \s!internal(\currentbtxinternal)
+ ]
+ \else
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\v!inbetween
+ \currentbtxsecond
+ \fi
+ \fi
\stopsetups
-\startsetups btx:cite:key
- \currentbtxtag % \btxcitevariant{tag}
+% \startsetups \s!btx:\s!cite:render:range
+% \directsetup{\s!btx:\s!cite:concat}
+% \ifconditional\btxinteractive
+% \goto {
+% \directsetup{\s!btx:\s!cite:common:range}
+% } [
+% \s!internal(\currentbtxinternal)
+% ]
+% \else
+% \directsetup{\s!btx:\s!cite:common:range}
+% \fi
+% \stopsetups
+%
+% more efficient:
+
+\startsetups \s!btx:\s!cite:render:range
+ \directsetup{\s!btx:\s!cite:concat}
+ \ifconditional\btxinteractive
+ \goto {
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\c!range
+ \currentbtxsecond
+ \fi
+ } [
+ \s!internal(\currentbtxinternal)
+ ]
+ \else
+ \ifx\currentbtxsecond\empty
+ \currentbtxfirst
+ \else
+ \currentbtxfirst
+ \btxcitevariantparameter\c!range
+ \currentbtxsecond
+ \fi
+ \fi
\stopsetups
-\startsetups btx:cite:doi
- todo: \btxcitevariant{doi}
+\startsetups \s!btx:\s!cite:render:variant
+ \directsetup{\s!btx:\s!cite:concat}
+ \ifconditional\btxinteractive
+ \goto {
+ \directsetup{\s!btx:\s!cite:render:\currentbtxcitevariant}
+ } [
+ \s!internal(\currentbtxinternal)
+ ]
+ \else
+ \directsetup{\s!btx:\s!cite:render:\currentbtxcitevariant}
+ \fi
\stopsetups
-\startsetups btx:cite:url
- todo: \btxcitevariant{url}
+% author lists: can be less
+
+\startsetups \s!btx:\s!cite:common:author
+ \ifx\currentbtxcitevariant\v!normal
+ \currentbtxfirst
+ \else
+ \currentbtxciteauthor
+ \fi
\stopsetups
-\startsetups btx:cite:type
- \btxcitevariant{category}
+\startsetups \s!btx:\s!cite:render:author
+ \directsetup{\s!btx:\s!cite:common:author}
+\stopsetups
+\startsetups \s!btx:\s!cite:render:authoryear
+ \directsetup{\s!btx:\s!cite:common:author}
+\stopsetups
+\startsetups \s!btx:\s!cite:render:authoryears
+ \directsetup{\s!btx:\s!cite:common:author}
+\stopsetups
+\startsetups \s!btx:\s!cite:render:authornum
+ \directsetup{\s!btx:\s!cite:common:author}
\stopsetups
-\startsetups btx:cite:page
- \btxcitevariant{page}
+\startsetups \s!btx:\s!cite:author:num
+ \directsetup{\s!btx:\s!cite:render:range}
+\stopsetups
+\startsetups \s!btx:\s!cite:author:year
+ \directsetup{\s!btx:\s!cite:render:range}
+\stopsetups
+\startsetups \s!btx:\s!cite:author:years
+ \directsetup{\s!btx:\s!cite:render:range}
\stopsetups
-\startsetups btx:cite:none
- % dummy
+\startsetups \s!btx:\s!cite:author
+ \directsetup{\s!btx:\s!cite:render:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authoryear
+ \directsetup{\s!btx:\s!cite:render:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authoryears
+ \directsetup{\s!btx:\s!cite:render:variant}
+\stopsetups
+\startsetups \s!btx:\s!cite:authornum
+ \directsetup{\s!btx:\s!cite:render:variant}
\stopsetups
-\startsetups btx:cite:num
- \btxcitevariant{num}
+\startsetups \s!btx:\s!cite:year
+ \directsetup{\s!btx:\s!cite:render:range}
+\stopsetups
+\startsetups \s!btx:\s!cite:short
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:serial
+ \directsetup{\s!btx:\s!cite:render:range}
+\stopsetups
+\startsetups \s!btx:\s!cite:tag
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:key
+ \directsetup{\s!btx:\s!cite:render:normal}
\stopsetups
+\startsetups \s!btx:\s!cite:doi
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:url
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:category
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:type
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+\startsetups \s!btx:\s!cite:num
+ \directsetup{\s!btx:\s!cite:render:range}
+\stopsetups
+\startsetups \s!btx:\s!cite:page
+ \directsetup{\s!btx:\s!cite:render:normal}
+\stopsetups
+
+\protect