summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/bibtex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-08-26 22:18:03 +0000
committerKarl Berry <karl@freefriends.org>2011-08-26 22:18:03 +0000
commit88a7c1cfb083c98a210bdf72c884745fea80386f (patch)
tree61dd2798d251f1a5a332e850425c6d1b2c9dbea5 /Master/texmf-dist/bibtex
parent80219992c1ed63efeca5390194411fcdcedb17bb (diff)
ascelike (24aug11)
git-svn-id: svn://tug.org/texlive/trunk@23704 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/bibtex')
-rw-r--r--Master/texmf-dist/bibtex/bst/ascelike/ascelike.bst273
1 files changed, 227 insertions, 46 deletions
diff --git a/Master/texmf-dist/bibtex/bst/ascelike/ascelike.bst b/Master/texmf-dist/bibtex/bst/ascelike/ascelike.bst
index 5b6e3708ff1..d8c3f87900e 100644
--- a/Master/texmf-dist/bibtex/bst/ascelike/ascelike.bst
+++ b/Master/texmf-dist/bibtex/bst/ascelike/ascelike.bst
@@ -1,5 +1,8 @@
%% File: ascelike.bst
%%
+%% August 20, 2011
+%%
+%%
%% An unofficial bibliography style-file for ASCE-like bibliographies.
%% Adapted from chicago.bst (24-jan-88 version) of Glenn Paulley
%% This bst style should be used with document class ascelike.cls
@@ -64,7 +67,7 @@ ENTRY
institution
journal
key
-% month not used in apalike
+ month
note
number
organization
@@ -74,6 +77,7 @@ ENTRY
series
title
type
+ url
volume
year
}
@@ -413,6 +417,14 @@ FUNCTION {format.bvolume}
if$
}
+FUNCTION {format.howpublished}
+{ howpublished empty$
+ { "" }
+ { "(" howpublished * ")" *
+ }
+ if$
+}
+
FUNCTION {format.number.series}
{ volume empty$
{ number empty$
@@ -502,7 +514,7 @@ FUNCTION {format.chapter.pages}
{ chapter empty$
'format.pages
{ type empty$
- { "chapter" }
+ { "Chapter" }
{ type "l" change.case$ }
if$
chapter tie.or.space.connect
@@ -671,6 +683,18 @@ FUNCTION {calc.label}
% The change here from newapa is to also include organization as a
% citation label if author or editor is missing.
%
+% Changed - MRK. With ASCE's author-year citation style, there is no
+% need for the first argument in the \citeauthoryear command. The first
+% argument in the chicago.bst style contains a full list of all
+% author last names. This argument is not used with ASCE's styel.
+% We replace this argument with a null argument "{}",
+% with the 2nd and 3rd arguments giving the citation author and the year.
+% This change is made so that two separate articles, say by Huang, Bird, and
+% Bell and by Haung, Bird, and Hendrich (both published in, say, 2009)
+% will be given the citations Jones et al. (2009a) and Jones et al. (2009b).
+% Without the change, both would be given the citations Jones et al. (2009).
+% Thanks to Alec Gosse.
+%
{ type$ "book" =
type$ "inbook" =
or
@@ -686,34 +710,38 @@ FUNCTION {calc.label}
}
if$
- author empty$ % generate the full label citation information.
- { editor empty$
- { organization empty$
- { type$ "manual" =
- { title empty$
- { "no author, editor, organization or title in "
- cite$ * warning$
- "??"
- }
- { title }
- if$
- }
- { "no author, editor, or organization in " cite$ * warning$
- "??" }
- if$
- }
- { organization }
- if$
- }
- { editor my.full.label }
- if$
- }
- { author my.full.label }
- if$
-
-% leave label on the stack, to be popped when required.
-
- "}{" * swap$ * "}{" *
+%------------- cut MRK -------------------
+% author empty$ % generate the full label citation information.
+% { editor empty$
+% { organization empty$
+% { type$ "manual" =
+% { title empty$
+% { "no author, editor, organization or title in "
+% cite$ * warning$
+% "??"
+% }
+% { title }
+% if$
+% }
+% { "no author, editor, or organization in " cite$ * warning$
+% "??" }
+% if$
+% }
+% { organization }
+% if$
+% }
+% { editor my.full.label }
+% if$
+% }
+% { author my.full.label }
+% if$
+%
+%% leave label on the stack, to be popped when required.
+%
+% "}{" * swap$ * "}{" *
+%------------- paste MRK ---------------
+ "}{" swap$ * "}{" *
+%------------- end MRK -----------------
% year field.or.null purify$ #-1 #4 substring$ *
%
% save the year for sort processing afterwards (adding a, b, c, etc.)
@@ -765,7 +793,12 @@ FUNCTION {article}
}
if$
new.block
- note output
+ note empty$
+ { }
+ { before.all 'output.state :=
+ "\ " note * output
+ }
+ if$
fin.entry
}
@@ -790,6 +823,7 @@ FUNCTION {book}
new.block
format.number.series output
new.sentence
+ format.howpublished output
publisher "publisher" output.check
address output
}
@@ -798,8 +832,27 @@ FUNCTION {book}
}
if$
format.edition output
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
- note output
+ note empty$
+ { }
+ { before.all 'output.state :=
+ "\ " note * output
+ }
+ if$
+% note output
fin.entry
}
@@ -836,12 +889,13 @@ FUNCTION {inbook}
format.btitle "title" output.check
crossref missing$
{ format.bvolume output
- format.chapter.pages "chapter and pages" output.check
new.block
format.number.series output
- new.sentence
+ format.howpublished output
publisher "publisher" output.check
address output
+ format.edition output
+ format.chapter.pages output
}
{ format.chapter.pages "chapter and pages" output.check
new.block
@@ -866,6 +920,7 @@ FUNCTION {incollection}
{ format.in.ed.booktitle "booktitle" output.check
format.bvolume output
format.number.series output
+ format.howpublished output
publisher "publisher" output.check
address output
format.edition output
@@ -892,9 +947,10 @@ FUNCTION {inproceedings}
{ format.in.ed.booktitle "booktitle" output.check
format.bvolume output
format.number.series output
+ format.howpublished output
organization output % for apalike
address output % there's no year
- new.sentence % here so things
+% new.sentence % here so things
publisher output % are simpler
format.pages output
}
@@ -902,6 +958,19 @@ FUNCTION {inproceedings}
format.pages output
}
if$
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry
@@ -966,6 +1035,19 @@ FUNCTION {manual}
% organization output
address output
format.edition output
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry
@@ -974,18 +1056,45 @@ FUNCTION {manual}
FUNCTION {mastersthesis}
{ output.bibitem
format.authors "author" output.check
- author format.key output % special for
- output.year.check % apalike
+ author format.key output % special for
+ output.year.check % apalike
new.block
format.title "title" output.check
- new.block
- "Master's thesis" format.thesis.type output.nonnull
+ after.quote 'output.state :=
+ "M.S. thesis" format.thesis.type output.nonnull
school "school" output.check
- address output
+ address output.nonnull
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry
}
+%{ output.bibitem
+% format.authors "author" output.check
+% author format.key output % special for
+% output.year.check % apalike
+% new.block
+% format.title "title" output.check
+% new.block
+% "Master's thesis" format.thesis.type output.nonnull
+% school "school" output.check
+% address output
+% new.block
+% note output
+% fin.entry
+%}
FUNCTION {misc}
{ output.bibitem
@@ -993,14 +1102,60 @@ FUNCTION {misc}
author format.key output % special for
output.year.check % apalike
new.block
- format.title output
- new.block
- howpublished output
+ format.title "title" output.check
+ after.quote 'output.state :=
+ journal emphasize "journal" output.check
+ organization output
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry
}
+FUNCTION {format.url}
+{ url empty$
+ { "" }
+ { "$<$" url * "$>$" *
+ }
+ if$
+}
+
+%{ output.bibitem
+% format.authors "author" output.check
+% author format.key output % special for
+% output.year.check % apalike
+% new.block
+% format.title "title" output.check
+% after.quote 'output.state :=
+% crossref missing$
+% { journal emphasize "journal" output.check
+% organization output
+% format.vol.num.pages output
+% }
+% { format.article.crossref output.nonnull
+% format.pages output
+% }
+% if$
+% new.block
+% note output
+% fin.entry
+%}
+
+
+
+
FUNCTION {phdthesis}
{ output.bibitem
format.authors "author" output.check
@@ -1008,10 +1163,23 @@ FUNCTION {phdthesis}
output.year.check % apalike
new.block
format.title "title" output.check
- after.quote.comma 'output.state :=
- "PhD thesis" format.thesis.type output.nonnull
+ after.quote 'output.state :=
+ "Ph.D. thesis" format.thesis.type output.nonnull
school "school" output.check
- address output.check
+ address output.nonnull
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry
@@ -1046,6 +1214,19 @@ FUNCTION {techreport}
format.tr.number output.nonnull
institution "institution" output.check
address output
+ url empty$
+ { }
+ { mid.sentence 'output.state :=
+ "$<$" url * "$>$" * output
+% format.url output
+ }
+ if$
+ month empty$
+ { }
+ { before.all 'output.state :=
+ "\ (" month * ")" * output
+ }
+ if$
new.block
note output
fin.entry