summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/bibtex/bst
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-09-06 22:29:57 +0000
committerKarl Berry <karl@freefriends.org>2010-09-06 22:29:57 +0000
commit240dbb5ee820f2e77e4106bf872f363540c413e2 (patch)
tree3921b3f18013915f30f418d31199a3770604a0db /Master/texmf-dist/bibtex/bst
parent6892558c73756d9f24023e6269e025fa6f3cf15d (diff)
biblatex 0.9d (4sep10)
git-svn-id: svn://tug.org/texlive/trunk@19592 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/bibtex/bst')
-rw-r--r--Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst98
1 files changed, 69 insertions, 29 deletions
diff --git a/Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst b/Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst
index 099f23c2e43..aa746eb01d3 100644
--- a/Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst
+++ b/Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst
@@ -1,4 +1,4 @@
-% $Id: biblatex.bst,v 0.9a 2010/03/19 19:52:15 lehman beta $
+% $Id: biblatex.bst,v 0.9d 2010/09/03 20:11:58 lehman beta $
% Copyright (c) 2006-2010 Philipp Lehman.
%
@@ -63,6 +63,7 @@ ENTRY {
editorctype
eid
eprint
+ eprintclass
eprinttype
eventdate
eventtitle
@@ -132,6 +133,9 @@ ENTRY {
volume
volumes
year
+ % aliases
+ archiveprefix
+ primaryclass
% custom fields
namea
nameb
@@ -157,10 +161,10 @@ ENTRY {
}
{ skipbib skiplos skiplab useauthor useeditor usetranslator useprefix singletitle uniquename }
{ entryoptions labelhash namehash fullhash dateyear dateendyear extrayear labelalpha extraalpha
- label.name label.uniq label.year sortkey.nosort sortkey.name sortkey.year
+ sortinit label.name label.uniq label.year sortkey.nosort sortkey.name sortkey.year
sortkey.title sortkey.alpha sort.year sort.alph warningmsg }
-INTEGERS { ctrl.debug ctrl.bibtex8 ctrl.maxline ctrl.sorting ctrl.sortlos
+INTEGERS { ctrl.debug ctrl.bibtex8 ctrl.maxline ctrl.sorting ctrl.cssort ctrl.sortlos
ctrl.maxnames ctrl.minnames ctrl.useauthor ctrl.useeditor ctrl.usetranslator
ctrl.useprefix ctrl.terseinits ctrl.labelalpha ctrl.singletitle
ctrl.uniquename ctrl.labelyear citecount
@@ -171,7 +175,7 @@ STRINGS { ctrl.alphaothers templist tempstrga tempstrgb resvstrga
last.name last.hash last.uniq last.year last.extra }
FUNCTION {initialize} {
- "$Revision: 0.9 $"
+ "$Revision: 0.9c $"
#12 entry.max$ substring$
#-3 entry.max$ substring$
"Biblatex version: " swap$ * top$
@@ -315,6 +319,8 @@ FUNCTION {normalize} {
{ pop$ "" }
{ purify$
ctrl.bibtex8
+ ctrl.cssort
+ and
'skip$
{ "l" change.case$ }
if$
@@ -925,7 +931,7 @@ FUNCTION {sortkey:main:date} {
{ "0" dateyear sortkey:main:date:year }
{ "0" sortyear sortkey:main:date:year }
if$
- #9999 swap$ - int.to.str$
+ str.to.int #9999 swap$ - int.to.str$
}
{ "" }
if$
@@ -940,7 +946,7 @@ FUNCTION {sortkey:main} {
ctrl.sorting #0 =
{ sortkey.nosort }
{ sortkey:init:main
- push:presort delimiter.1 *
+ ""
ctrl.sorting #10 <
{ sortkey empty$
{ ctrl.sorting sortkey:main:string }
@@ -968,6 +974,8 @@ FUNCTION {sortkey:main} {
}
if$
*
+ duplicate$ #1 text.prefix$ "u" change.case$ 'sortinit :=
+ push:presort delimiter.1 * swap$ *
}
if$
truncate
@@ -1217,18 +1225,31 @@ FUNCTION {output:write:list} {
"{%" * output:indent:field
#1 'tempctra :=
#1 'tempctrb :=
+ #0 'tempctrc :=
{ templist normalize tempctrb global.max$ substring$ num.names$ #0 > }
- { templist tempctrb #5 substring$
- duplicate$ " AND " =
- swap$ " and " =
- or
- { templist tempctra tempctrb tempctra - substring$
- wrap:braces "%" * output:indent:subfield
- tempctrb #5 + duplicate$
- 'tempctra :=
- 'tempctrb :=
- }
- { tempctrb #1 + 'tempctrb := }
+ { templist tempctrb #1 substring$ "{" =
+ { tempctrc #1 + 'tempctrc :=
+ tempctrb #1 + 'tempctrb := }
+ { templist tempctrb #1 substring$ "}" =
+ { tempctrc #1 - 'tempctrc :=
+ tempctrb #1 + 'tempctrb := }
+ { templist tempctrb #5 substring$
+ duplicate$ " AND " =
+ swap$ " and " =
+ or
+ tempctrc #1 <
+ and
+ { templist tempctra tempctrb tempctra - substring$
+ wrap:braces "%" * output:indent:subfield
+ tempctrb #5 + duplicate$
+ 'tempctra :=
+ 'tempctrb :=
+ }
+ { tempctrb #1 + 'tempctrb := }
+ if$
+ }
+ if$
+ }
if$
}
while$
@@ -1261,7 +1282,7 @@ FUNCTION {output:specials} {
{ "\keyw" keywords wrap:braces * output:indent:field }
if$
"entrysubtype" entrysubtype output:write:field
- "crossref" crossref output:write:field
+ "crossref" crossref output:write:string
"execute" execute output:write:field
"namehash" namehash output:write:string
"fullhash" fullhash output:write:string
@@ -1300,12 +1321,7 @@ FUNCTION {output:specials} {
}
'skip$
if$
- fullhash empty$
- { push:sorttitle normalize }
- { fullhash }
- if$
- #1 #1 substring$ "u" change.case$
- "sortinit" swap$ output:write:field
+ "sortinit" sortinit output:write:field
singletitle
{ "singletitle" #1 output:write:bool }
'skip$
@@ -1359,7 +1375,6 @@ FUNCTION {output:fields.1} {
"edition" edition output:write:field
"eid" eid output:write:field
"eprint" eprint output:write:verb
- "eprinttype" eprinttype output:write:field
"eventtitle" eventtitle output:write:field
"howpublished" howpublished output:write:field
"hyphenation" hyphenation output:write:field
@@ -1583,6 +1598,29 @@ FUNCTION {output:compat.2} {
output:write:multi
}
+FUNCTION {output:compat.3} {
+ "eprinttype" eprinttype
+ duplicate$ empty$
+ { pop$ archiveprefix }
+ { archiveprefix empty$
+ 'skip$
+ { "archiveprefix" "eprinttype" warning:duplicate }
+ if$
+ }
+ if$
+ output:write:field
+ "eprintclass" eprintclass
+ duplicate$ empty$
+ { pop$ primaryclass }
+ { primaryclass empty$
+ 'skip$
+ { "primaryclass" "eprintclass" warning:duplicate }
+ if$
+ }
+ if$
+ output:write:field
+}
+
FUNCTION {output:debug} {
"% sort.key$ = " sort.key$ * maxline write$ newline$
sort.year empty$
@@ -1609,12 +1647,13 @@ FUNCTION {output:entry} {
write$ newline$
output:names
output:lists
- output:compat.1
- output:compat.2
output:specials
output:fields.1
output:fields.2
output:fields.3
+ output:compat.1
+ output:compat.2
+ output:compat.3
output:dates.1
output:dates.2
output:user
@@ -1707,7 +1746,7 @@ FUNCTION {input:control:options} {
FUNCTION {input:control:version} {
input:control:parse
- "$Revision: 0.9 $"
+ "$Revision: 0.9c $"
#12 entry.max$ substring$
#-3 entry.max$ substring$
'tempstrga :=
@@ -1727,6 +1766,7 @@ FUNCTION {input:control} {
{ pop$ }
{ input:control:options 'ctrl.debug :=
input:control:options 'ctrl.bibtex8 :=
+ input:control:options 'ctrl.cssort :=
input:control:options 'ctrl.terseinits :=
input:control:options 'ctrl.useprefix :=
input:control:options 'ctrl.useauthor :=
@@ -2622,7 +2662,7 @@ SORT
FUNCTION {output:main:begin} {
"% $ biblatex auxiliary file $" write$ newline$
- "% $ biblatex version " "$Revision: 0.9 $"
+ "% $ biblatex version " "$Revision: 0.9c $"
#12 entry.max$ substring$ #-3 entry.max$ substring$ * " $" * write$ newline$
"% Do not modify the above lines!" write$ newline$
"%" write$ newline$