From 240dbb5ee820f2e77e4106bf872f363540c413e2 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 6 Sep 2010 22:29:57 +0000 Subject: biblatex 0.9d (4sep10) git-svn-id: svn://tug.org/texlive/trunk@19592 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/bibtex/bst/biblatex/biblatex.bst | 98 +++++++++++++++------- 1 file changed, 69 insertions(+), 29 deletions(-) (limited to 'Master/texmf-dist/bibtex/bst') 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$ -- cgit v1.2.3