1 |
%% |
2 |
%% This is file `achemso.bst', |
3 |
%% generated with the docstrip utility. |
4 |
%% |
5 |
%% The original source files were: |
6 |
%% |
7 |
%% achemso.dtx (with options: `huvudkod') |
8 |
%% |
9 |
%% Copyright (c) 1995-98 by Mats Dahlgren <matsd@sssk.se>. |
10 |
%% All rights reserved. See the file `achemso.ins' for information |
11 |
%% on how you may (re-)distribute the `achemso' package files. |
12 |
%% You are not allowed to make any changes to this file without |
13 |
%% explicit permission from the author. |
14 |
%% |
15 |
ENTRY |
16 |
{ address |
17 |
author |
18 |
booktitle |
19 |
chapter |
20 |
edition |
21 |
editor |
22 |
howpublished |
23 |
institution |
24 |
journal |
25 |
key |
26 |
month |
27 |
note |
28 |
number |
29 |
organization |
30 |
pages |
31 |
publisher |
32 |
school |
33 |
series |
34 |
title |
35 |
type |
36 |
volume |
37 |
year |
38 |
annotate |
39 |
} |
40 |
{} |
41 |
{ label } |
42 |
|
43 |
INTEGERS { output.state before.all mid.sentence after.sentence after.block } |
44 |
|
45 |
FUNCTION {init.state.consts} |
46 |
{ #0 'before.all := |
47 |
#1 'mid.sentence := |
48 |
#2 'after.sentence := |
49 |
#3 'after.block := |
50 |
} |
51 |
|
52 |
STRINGS { s t } |
53 |
|
54 |
FUNCTION {output.nonnull} |
55 |
{ 's := |
56 |
output.state mid.sentence = |
57 |
{ " " * write$ } |
58 |
{ output.state after.block = |
59 |
{ ", " * write$ |
60 |
newline$ |
61 |
"\newblock " write$ |
62 |
} |
63 |
{ output.state before.all = |
64 |
'write$ |
65 |
{ add.period$ " " * write$ } |
66 |
if$ |
67 |
} |
68 |
if$ |
69 |
mid.sentence 'output.state := |
70 |
} |
71 |
if$ |
72 |
s |
73 |
} |
74 |
|
75 |
FUNCTION {output} |
76 |
{ duplicate$ empty$ |
77 |
'pop$ |
78 |
'output.nonnull |
79 |
if$ |
80 |
} |
81 |
|
82 |
FUNCTION {output.check} |
83 |
{ 't := |
84 |
duplicate$ empty$ |
85 |
{ pop$ "empty " t * " in " * cite$ * warning$ } |
86 |
'output.nonnull |
87 |
if$ |
88 |
} |
89 |
|
90 |
FUNCTION {output.bibitem} |
91 |
{ newline$ |
92 |
"\bibitem{" write$ |
93 |
cite$ write$ |
94 |
"}" write$ |
95 |
newline$ |
96 |
"" |
97 |
before.all 'output.state := |
98 |
} |
99 |
|
100 |
FUNCTION {fin.entry} |
101 |
{ add.period$ |
102 |
write$ |
103 |
newline$ |
104 |
} |
105 |
|
106 |
FUNCTION {new.block} |
107 |
{ output.state before.all = |
108 |
'skip$ |
109 |
{ after.block 'output.state := } |
110 |
if$ |
111 |
} |
112 |
|
113 |
FUNCTION {new.sentence} |
114 |
{ skip$ |
115 |
} |
116 |
|
117 |
FUNCTION {not} |
118 |
{ { #0 } |
119 |
{ #1 } |
120 |
if$ |
121 |
} |
122 |
|
123 |
FUNCTION {and} |
124 |
{ 'skip$ |
125 |
{ pop$ #0 } |
126 |
if$ |
127 |
} |
128 |
|
129 |
FUNCTION {or} |
130 |
{ { pop$ #1 } |
131 |
'skip$ |
132 |
if$ |
133 |
} |
134 |
|
135 |
FUNCTION {new.block.checka} |
136 |
{ empty$ |
137 |
'skip$ |
138 |
'new.block |
139 |
if$ |
140 |
} |
141 |
|
142 |
FUNCTION {new.block.checkb} |
143 |
{ empty$ |
144 |
swap$ empty$ |
145 |
and |
146 |
'skip$ |
147 |
'new.block |
148 |
if$ |
149 |
} |
150 |
|
151 |
FUNCTION {field.or.null} |
152 |
{ duplicate$ empty$ |
153 |
{ pop$ "" } |
154 |
'skip$ |
155 |
if$ |
156 |
} |
157 |
|
158 |
FUNCTION {emphasize} |
159 |
{ duplicate$ empty$ |
160 |
{ pop$ "" } |
161 |
{ "\textit{" swap$ * "}" * } |
162 |
if$ |
163 |
} |
164 |
|
165 |
FUNCTION {emphasizec} |
166 |
{ duplicate$ empty$ |
167 |
{ pop$ "" } |
168 |
{ "\textit{" swap$ * ",}" * } |
169 |
if$ |
170 |
} |
171 |
|
172 |
FUNCTION {emphasizesc} |
173 |
{ duplicate$ empty$ |
174 |
{ pop$ "" } |
175 |
{ "\textit{" swap$ * ";}" * } |
176 |
if$ |
177 |
} |
178 |
|
179 |
FUNCTION {slantc} |
180 |
{ duplicate$ empty$ |
181 |
{ pop$ "" } |
182 |
{ "\textsl{" swap$ * ",}" * } |
183 |
if$ |
184 |
} |
185 |
|
186 |
FUNCTION {emboldenc} |
187 |
{ duplicate$ empty$ |
188 |
{ pop$ "" } |
189 |
{ "\textbf{" swap$ * ",}" * } |
190 |
if$ |
191 |
} |
192 |
|
193 |
INTEGERS { nameptr namesleft numnames } |
194 |
|
195 |
INTEGERS { etal } |
196 |
|
197 |
FUNCTION {format.names} |
198 |
{ 's := |
199 |
#1 'nameptr := |
200 |
s num.names$ 'numnames := |
201 |
numnames #15 > |
202 |
s numnames "{ll}" format.name$ "others" = numnames #1 > and |
203 |
or 'etal := |
204 |
etal |
205 |
{ #1 #1 + 'namesleft := } |
206 |
{ numnames 'namesleft := } |
207 |
if$ |
208 |
{ namesleft #0 > } |
209 |
{ s nameptr "{vv~}{ll,}{~jj,}{~f.}" format.name$ 't := |
210 |
nameptr #1 > |
211 |
{ namesleft #1 > |
212 |
{ ";\ \ " * t * } |
213 |
{ nameptr #2 > |
214 |
{ "" * } |
215 |
'skip$ |
216 |
if$ |
217 |
t "others" = |
218 |
etal or |
219 |
{ " \textit{et al.}\ " * } |
220 |
{ ";\ \ " * t * } |
221 |
if$ |
222 |
} |
223 |
if$ |
224 |
} |
225 |
't |
226 |
if$ |
227 |
nameptr #1 + 'nameptr := |
228 |
namesleft #1 - 'namesleft := |
229 |
} |
230 |
while$ |
231 |
} |
232 |
|
233 |
FUNCTION {format.authors} |
234 |
{ author empty$ |
235 |
{ "" } |
236 |
{ author format.names } |
237 |
if$ |
238 |
} |
239 |
|
240 |
FUNCTION {format.editors} |
241 |
{ editor empty$ |
242 |
{ "" } |
243 |
{ editor format.names |
244 |
editor num.names$ #1 > |
245 |
{ ",\ \ Eds.; " * } |
246 |
{ ",\ \ Ed.; " * } |
247 |
if$ |
248 |
} |
249 |
if$ |
250 |
} |
251 |
|
252 |
FUNCTION {n.dashify} |
253 |
{ 't := |
254 |
"" |
255 |
{ t empty$ not } |
256 |
{ t #1 #1 substring$ "-" = |
257 |
{ t #1 #2 substring$ "--" = not |
258 |
{ "--" * |
259 |
t #2 global.max$ substring$ 't := |
260 |
} |
261 |
{ { t #1 #1 substring$ "-" = } |
262 |
{ "-" * |
263 |
t #2 global.max$ substring$ 't := |
264 |
} |
265 |
while$ |
266 |
} |
267 |
if$ |
268 |
} |
269 |
{ t #1 #1 substring$ * |
270 |
t #2 global.max$ substring$ 't := |
271 |
} |
272 |
if$ |
273 |
} |
274 |
while$ |
275 |
} |
276 |
|
277 |
FUNCTION {format.date} |
278 |
{ year empty$ |
279 |
{ "" } |
280 |
'year |
281 |
if$ |
282 |
} |
283 |
|
284 |
FUNCTION {tie.or.space.connect} |
285 |
{ duplicate$ text.length$ #3 < |
286 |
{ "~" } |
287 |
{ " " } |
288 |
if$ |
289 |
swap$ * * |
290 |
} |
291 |
|
292 |
FUNCTION {either.or.check} |
293 |
{ empty$ |
294 |
'pop$ |
295 |
{ "can't use both " swap$ * " fields in " * cite$ * warning$ } |
296 |
if$ |
297 |
} |
298 |
|
299 |
FUNCTION {format.bvolume} |
300 |
{ volume empty$ |
301 |
{ "" } |
302 |
{ "volume" volume tie.or.space.connect |
303 |
series empty$ |
304 |
'skip$ |
305 |
{ " of " * series emphasize * } |
306 |
if$ |
307 |
"volume and number" number either.or.check |
308 |
} |
309 |
if$ |
310 |
} |
311 |
|
312 |
FUNCTION {format.number.series} |
313 |
{ volume empty$ |
314 |
{ number empty$ |
315 |
{ series field.or.null } |
316 |
{ series empty$ |
317 |
{ "there's a number but no series in " cite$ * warning$ } |
318 |
{ series " " * number * "; " * } |
319 |
if$ |
320 |
} |
321 |
if$ |
322 |
} |
323 |
{ "" } |
324 |
if$ |
325 |
} |
326 |
|
327 |
FUNCTION {format.edition} |
328 |
{ edition empty$ |
329 |
{ "" } |
330 |
{ edition " ed.;" * } |
331 |
if$ |
332 |
} |
333 |
|
334 |
INTEGERS { multiresult } |
335 |
|
336 |
FUNCTION {multi.page.check} |
337 |
{ 't := |
338 |
#0 'multiresult := |
339 |
{ multiresult not |
340 |
t empty$ not |
341 |
and |
342 |
} |
343 |
{ t #1 #1 substring$ |
344 |
duplicate$ "-" = |
345 |
swap$ duplicate$ "," = |
346 |
swap$ "+" = |
347 |
or or |
348 |
{ #1 'multiresult := } |
349 |
{ t #2 global.max$ substring$ 't := } |
350 |
if$ |
351 |
} |
352 |
while$ |
353 |
multiresult |
354 |
} |
355 |
|
356 |
FUNCTION {format.pages} |
357 |
{ pages empty$ |
358 |
{ "" } |
359 |
{ pages multi.page.check |
360 |
{ "pages" pages n.dashify tie.or.space.connect } |
361 |
{ "page" pages tie.or.space.connect } |
362 |
if$ |
363 |
} |
364 |
if$ |
365 |
} |
366 |
|
367 |
FUNCTION {format.pages.a} |
368 |
{ pages empty$ |
369 |
{ "" } |
370 |
{ "page" pages tie.or.space.connect } |
371 |
if$ |
372 |
} |
373 |
|
374 |
FUNCTION {format.yr.vol.pages} |
375 |
{ year field.or.null emboldenc |
376 |
" " swap$ * * |
377 |
volume field.or.null slantc |
378 |
" " swap$ * * |
379 |
pages empty$ |
380 |
'skip$ |
381 |
{ duplicate$ empty$ |
382 |
{ pop$ format.pages.a } |
383 |
{ " " * pages * } |
384 |
if$ |
385 |
} |
386 |
if$ |
387 |
} |
388 |
|
389 |
FUNCTION {format.chapter.pages} |
390 |
{ chapter empty$ |
391 |
'format.pages |
392 |
{ type empty$ |
393 |
{ "Chapter" } |
394 |
{ type "l" change.case$ } |
395 |
if$ |
396 |
chapter tie.or.space.connect |
397 |
pages empty$ |
398 |
'skip$ |
399 |
{ ", " * format.pages * } |
400 |
if$ |
401 |
} |
402 |
if$ |
403 |
} |
404 |
|
405 |
FUNCTION {empty.misc.check} |
406 |
{ author empty$ title empty$ howpublished empty$ |
407 |
month empty$ year empty$ note empty$ |
408 |
and and and and and |
409 |
{ "all relevant fields are empty in " cite$ * warning$ } |
410 |
'skip$ |
411 |
if$ |
412 |
} |
413 |
|
414 |
FUNCTION {format.thesis} |
415 |
{ type empty$ |
416 |
{"Thesis,"} |
417 |
{type " thesis," * } |
418 |
if$ |
419 |
} |
420 |
|
421 |
FUNCTION {format.article.crossref} |
422 |
{ key empty$ |
423 |
{ journal empty$ |
424 |
{ "need key or journal for " cite$ * " to crossref " * crossref * |
425 |
warning$ |
426 |
"" |
427 |
} |
428 |
{ "In " journal * } |
429 |
if$ |
430 |
} |
431 |
{ "In " key * } |
432 |
if$ |
433 |
" \cite{" * crossref * "}" * |
434 |
} |
435 |
|
436 |
FUNCTION {format.crossref.editor} |
437 |
{ editor #1 "{vv~}{ll}" format.name$ |
438 |
editor num.names$ duplicate$ |
439 |
#2 > |
440 |
{ pop$ " et~al." * } |
441 |
{ #2 < |
442 |
'skip$ |
443 |
{ editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = |
444 |
{ " et~al." * } |
445 |
{ " and " * editor #2 "{vv~}{ll}" format.name$ * } |
446 |
if$ |
447 |
} |
448 |
if$ |
449 |
} |
450 |
if$ |
451 |
} |
452 |
|
453 |
FUNCTION {format.book.crossref} |
454 |
{ volume empty$ |
455 |
{ "empty volume in " cite$ * "'s crossref of " * crossref * warning$ |
456 |
"In " |
457 |
} |
458 |
{ "Volume" volume tie.or.space.connect |
459 |
" of " * |
460 |
} |
461 |
if$ |
462 |
editor empty$ |
463 |
editor field.or.null author field.or.null = |
464 |
or |
465 |
{ key empty$ |
466 |
{ series empty$ |
467 |
{ "need editor, key, or series for " cite$ * " to crossref " * |
468 |
crossref * warning$ |
469 |
"" * |
470 |
} |
471 |
{ "\textit{" * series * "}" * } |
472 |
if$ |
473 |
} |
474 |
{ key * } |
475 |
if$ |
476 |
} |
477 |
{ format.crossref.editor * } |
478 |
if$ |
479 |
" \cite{" * crossref * "}" * |
480 |
} |
481 |
|
482 |
FUNCTION {format.incoll.inproc.crossref} |
483 |
{ editor empty$ |
484 |
editor field.or.null author field.or.null = |
485 |
or |
486 |
{ key empty$ |
487 |
{ booktitle empty$ |
488 |
{ "need editor, key, or booktitle for " cite$ * " to crossref " * |
489 |
crossref * warning$ |
490 |
"" |
491 |
} |
492 |
{ "In \textit{" booktitle * ",}" * } |
493 |
if$ |
494 |
} |
495 |
{ "In " key * } |
496 |
if$ |
497 |
} |
498 |
{ "In " format.crossref.editor * } |
499 |
if$ |
500 |
" \cite{" * crossref * "}" * |
501 |
} |
502 |
|
503 |
FUNCTION {in.book} |
504 |
{ "In " output |
505 |
booktitle emphasize |
506 |
volume empty$ |
507 |
{skip$} |
508 |
{", Vol.~" * volume *} |
509 |
if$ |
510 |
edition empty$ |
511 |
{";" * output} |
512 |
{"," * output |
513 |
edition " ed.;\" * output} |
514 |
if$ |
515 |
editor missing$ |
516 |
{ skip$ } |
517 |
{ format.editors output } |
518 |
if$ |
519 |
format.number.series output |
520 |
new.sentence |
521 |
publisher ":" * "publisher" output.check |
522 |
address "," * "address" output.check |
523 |
} |
524 |
|
525 |
FUNCTION {book.vol.ed} |
526 |
{ "" volume empty$ |
527 |
{skip$} |
528 |
{" Vol.~" * volume *} |
529 |
if$ |
530 |
edition empty$ |
531 |
{";" * output} |
532 |
{"," * output |
533 |
edition " ed.;\" * output} |
534 |
if$ |
535 |
} |
536 |
|
537 |
FUNCTION {thesis.affilation} |
538 |
{ school "," * "school" output.check |
539 |
institution empty$ |
540 |
'skip$ |
541 |
{institution "," * output} |
542 |
if$ |
543 |
} |
544 |
|
545 |
FUNCTION {article} |
546 |
{ output.bibitem |
547 |
format.authors "author" output.check |
548 |
crossref missing$ |
549 |
{ journal field.or.null emphasize |
550 |
format.yr.vol.pages |
551 |
output |
552 |
} |
553 |
{ format.article.crossref output.nonnull |
554 |
format.pages output |
555 |
} |
556 |
if$ |
557 |
note output |
558 |
fin.entry |
559 |
} |
560 |
|
561 |
FUNCTION {submitted} |
562 |
{ output.bibitem |
563 |
format.authors "author" output.check |
564 |
new.block |
565 |
"submitted for publication in" output |
566 |
note empty$ |
567 |
{ journal emphasize "journal" output.check } |
568 |
{ journal emphasizec "journal" output.check |
569 |
note output } |
570 |
if$ |
571 |
fin.entry |
572 |
} |
573 |
|
574 |
FUNCTION {inpress} |
575 |
{ output.bibitem |
576 |
format.authors "author" output.check |
577 |
journal emphasizec "journal" output.check |
578 |
"in press" output |
579 |
note output |
580 |
fin.entry |
581 |
} |
582 |
|
583 |
FUNCTION {book} |
584 |
{ output.bibitem |
585 |
author empty$ |
586 |
{ format.editors "author and editor" output.check } |
587 |
{ format.authors output.nonnull |
588 |
crossref missing$ |
589 |
{ "author and editor" editor either.or.check } |
590 |
'skip$ |
591 |
if$ |
592 |
} |
593 |
if$ |
594 |
booktitle empty$ |
595 |
{ title emphasizesc output } |
596 |
{ booktitle emphasizesc output } |
597 |
if$ |
598 |
crossref missing$ |
599 |
{ format.bvolume output |
600 |
format.number.series output |
601 |
new.sentence |
602 |
publisher ":" * "publisher" output.check |
603 |
address "," * "address" output.check |
604 |
} |
605 |
{ format.book.crossref output.nonnull } |
606 |
if$ |
607 |
format.edition output |
608 |
format.date "year" output.check |
609 |
note output |
610 |
fin.entry |
611 |
} |
612 |
|
613 |
FUNCTION {booklet} |
614 |
{ output.bibitem |
615 |
format.authors "author" output.check |
616 |
" ``" title * "'', " * "title" output.check |
617 |
howpublished empty$ |
618 |
{ skip$ } |
619 |
{ howpublished "," * output} |
620 |
if$ |
621 |
address empty$ |
622 |
{ skip$ } |
623 |
{ address "," * output} |
624 |
if$ |
625 |
format.date "year" output.check |
626 |
note output |
627 |
fin.entry |
628 |
} |
629 |
|
630 |
FUNCTION {inbook} |
631 |
{ output.bibitem |
632 |
format.authors "author" output.check |
633 |
" " title * ". " * "title" output.check |
634 |
in.book |
635 |
chapter empty$ |
636 |
{format.date "year" output.check} |
637 |
{year empty$ |
638 |
{ "empty year field in " * cite$ * warning$ } |
639 |
{ year "; " * output |
640 |
format.chapter.pages output } |
641 |
if$ |
642 |
} |
643 |
if$ |
644 |
note output |
645 |
fin.entry |
646 |
} |
647 |
|
648 |
FUNCTION {incollection} |
649 |
{ output.bibitem |
650 |
format.authors "author" output.check |
651 |
" " title * ". " * "title" output.check |
652 |
in.book |
653 |
format.date "year" output.check |
654 |
note output |
655 |
fin.entry |
656 |
} |
657 |
|
658 |
FUNCTION {inproceedings} { inbook } |
659 |
|
660 |
FUNCTION {conference} { inbook } |
661 |
|
662 |
FUNCTION {manual} |
663 |
{ output.bibitem |
664 |
author empty$ |
665 |
{ organization empty$ |
666 |
'skip$ |
667 |
{ organization ", " * address * output |
668 |
} |
669 |
if$ |
670 |
} |
671 |
{ format.authors output.nonnull } |
672 |
if$ |
673 |
"``" title * "'', " * "title" output.check |
674 |
author empty$ |
675 |
{ organization empty$ |
676 |
{ address empty$ |
677 |
'skip$ |
678 |
{ address "," * output } |
679 |
if$ |
680 |
} |
681 |
'skip$ |
682 |
if$ |
683 |
} |
684 |
{ organization empty$ |
685 |
'skip$ |
686 |
{ organization "," * output |
687 |
address empty$ |
688 |
'skip$ |
689 |
{ address "," * output } |
690 |
if$ |
691 |
} |
692 |
if$ |
693 |
} |
694 |
if$ |
695 |
format.edition output |
696 |
format.date output |
697 |
note output |
698 |
fin.entry |
699 |
} |
700 |
|
701 |
FUNCTION {mastersthesis} |
702 |
{ output.bibitem |
703 |
format.authors "author" output.check |
704 |
"``" title * "'', " * "title" output.check |
705 |
"Master's thesis, " output |
706 |
thesis.affilation |
707 |
format.date "year" output.check |
708 |
note output |
709 |
fin.entry |
710 |
} |
711 |
|
712 |
FUNCTION {misc} |
713 |
{ output.bibitem |
714 |
format.authors output |
715 |
title empty$ |
716 |
'skip$ |
717 |
{ "``" title * "'', " * output } |
718 |
if$ |
719 |
howpublished empty$ |
720 |
'skip$ |
721 |
{howpublished "," * output } |
722 |
if$ |
723 |
format.date output |
724 |
note output |
725 |
fin.entry |
726 |
empty.misc.check |
727 |
} |
728 |
|
729 |
FUNCTION {phdthesis} |
730 |
{ output.bibitem |
731 |
format.authors "author" output.check |
732 |
title emphasizec "title" output.check |
733 |
format.thesis output.nonnull |
734 |
thesis.affilation |
735 |
format.date "year" output.check |
736 |
note output |
737 |
fin.entry |
738 |
} |
739 |
|
740 |
FUNCTION {proceedings} |
741 |
{ output.bibitem |
742 |
editor empty$ |
743 |
{ organization output } |
744 |
{ format.editors output.nonnull } |
745 |
if$ |
746 |
booktitle empty$ |
747 |
{ title emphasizec output } |
748 |
{ booktitle emphasizec output } |
749 |
if$ |
750 |
book.vol.ed |
751 |
format.number.series output |
752 |
publisher empty$ |
753 |
{ address empty$ |
754 |
{ format.date "year" output.check } |
755 |
{ address "," * output |
756 |
format.date "year" output.check } |
757 |
if$ |
758 |
} |
759 |
{ address empty$ |
760 |
{ publisher "," * output |
761 |
format.date "year" output.check } |
762 |
{ publisher ": " * address * "," * output |
763 |
format.date "year" output.check } |
764 |
if$ |
765 |
} |
766 |
if$ |
767 |
note output |
768 |
fin.entry |
769 |
} |
770 |
|
771 |
FUNCTION {techreport} |
772 |
{ output.bibitem |
773 |
format.authors "author" output.check |
774 |
"``" title * "'', " * "title" output.check |
775 |
type empty$ |
776 |
{ "Technical Report" } |
777 |
'type |
778 |
if$ |
779 |
number empty$ |
780 |
{ ", " * } |
781 |
{ " " * number * "," * } |
782 |
if$ |
783 |
output.nonnull |
784 |
institution "," * "institution" output.check |
785 |
address empty$ |
786 |
{ skip$ } |
787 |
{ address "," * output } |
788 |
if$ |
789 |
format.date "year" output.check |
790 |
note output |
791 |
fin.entry |
792 |
} |
793 |
|
794 |
FUNCTION {unpublished} |
795 |
{ output.bibitem |
796 |
format.authors "author" output.check |
797 |
note empty$ |
798 |
{ "Unpublished data" output } |
799 |
{ year empty$ |
800 |
{ note output } |
801 |
{ note ", " * year * output } |
802 |
if$ } |
803 |
if$ |
804 |
fin.entry |
805 |
} |
806 |
|
807 |
FUNCTION {remark} |
808 |
{ output.bibitem |
809 |
note "note" output.check |
810 |
fin.entry |
811 |
} |
812 |
|
813 |
FUNCTION {default.type} { misc } |
814 |
|
815 |
MACRO {jan} {"Jan."} |
816 |
MACRO {feb} {"Feb."} |
817 |
MACRO {mar} {"Mar."} |
818 |
MACRO {apr} {"Apr."} |
819 |
MACRO {may} {"May"} |
820 |
MACRO {jun} {"June"} |
821 |
MACRO {jul} {"July"} |
822 |
MACRO {aug} {"Aug."} |
823 |
MACRO {sep} {"Sept."} |
824 |
MACRO {oct} {"Oct."} |
825 |
MACRO {nov} {"Nov."} |
826 |
MACRO {dec} {"Dec."} |
827 |
|
828 |
MACRO {acchemr} {"Acc.\ Chem.\ Res."} |
829 |
MACRO {aacsa} {"Adv.\ {ACS} Abstr."} |
830 |
MACRO {anchem} {"Anal.\ Chem."} |
831 |
MACRO {bioch} {"Biochemistry"} |
832 |
MACRO {bicoc} {"Bioconj.\ Chem."} % *** |
833 |
MACRO {bitech} {"Biotechnol.\ Progr."} % *** |
834 |
MACRO {chemeng} {"Chem.\ Eng.\ News"} |
835 |
MACRO {chs} {"Chem.\ Health Safety"} % *** |
836 |
MACRO {crt} {"Chem.\ Res.\ Tox."} % *** |
837 |
MACRO {chemrev} {"Chem.\ Rev."} % *** |
838 |
MACRO {cmat} {"Chem.\ Mat."} % *** |
839 |
MACRO {chemtech} {"{CHEMTECH}"} % *** |
840 |
MACRO {enfu} {"Energy \&{} Fuels"} % *** |
841 |
MACRO {envst} {"Environ.\ Sci.\ Technol."} |
842 |
MACRO {iecf} {"Ind.\ Eng.\ Chem.\ Fundam."} |
843 |
MACRO {iecpdd} {"Ind.\ Eng.\ Chem.\ Proc.\ Des.\ Dev."} |
844 |
MACRO {iecprd} {"Ind.\ Eng.\ Chem.\ Prod.\ Res.\ Dev."} |
845 |
MACRO {iecr} {"Ind.\ Eng.\ Chem.\ Res."} % *** |
846 |
MACRO {inor} {"Inorg.\ Chem."} |
847 |
MACRO {jafc} {"J.~Agric.\ Food Chem."} |
848 |
MACRO {jacs} {"J.~Am.\ Chem.\ Soc."} |
849 |
MACRO {jced} {"J.~Chem.\ Eng.\ Data"} |
850 |
MACRO {jcics} {"J.~Chem.\ Inf.\ Comput.\ Sci."} |
851 |
MACRO {jmc} {"J.~Med.\ Chem."} |
852 |
MACRO {joc} {"J.~Org.\ Chem."} |
853 |
MACRO {jps} {"J.~Pharm.\ Sci."} |
854 |
MACRO {jpcrd} {"J.~Phys.\ Chem.\ Ref.\ Data"} % *** |
855 |
MACRO {jpc} {"J.~Phys.\ Chem."} |
856 |
MACRO {jpca} {"J.~Phys.\ Chem.~A"} |
857 |
MACRO {jpcb} {"J.~Phys.\ Chem.~B"} |
858 |
MACRO {lang} {"Langmuir"} |
859 |
MACRO {macro} {"Macromolecules"} |
860 |
MACRO {orgmet} {"Organometallics"} |
861 |
|
862 |
MACRO {jft} {"J.~Chem.\ Soc., Faraday Trans."} |
863 |
MACRO {jft1} {"J.~Chem.\ Soc., Faraday Trans. 1"} |
864 |
MACRO {jft2} {"J.~Chem.\ Soc., Faraday Trans. 2"} |
865 |
MACRO {tfs} {"Trans.\ Faraday Soc."} |
866 |
MACRO {jcis} {"J.~Colloid Interface Sci."} |
867 |
MACRO {acis} {"Adv.~Colloid Interface Sci."} |
868 |
MACRO {cs} {"Colloids Surf."} |
869 |
MACRO {csa} {"Colloids Surf.\ A:\ Physicochem.\ Eng.\ Apects"} |
870 |
MACRO {csb} {"Colloids Surf.\ B:\ Biointerfaces"} |
871 |
MACRO {pcps} {"Progr.\ Colloid Polym.\ Sci."} |
872 |
MACRO {jmr} {"J.~Magn.\ Reson."} |
873 |
MACRO {jmra} {"J.~Magn.\ Reson.\ A"} |
874 |
MACRO {jmrb} {"J.~Magn.\ Reson.\ B"} |
875 |
MACRO {sci} {"Science"} |
876 |
MACRO {nat} {"Nature (London)"} |
877 |
MACRO {jcch} {"J.~Comput.\ Chem."} |
878 |
MACRO {cca} {"Croat.\ Chem.\ Acta"} |
879 |
|
880 |
MACRO {poly} {"Polymer"} |
881 |
MACRO {ajp} {"Am.\ J.\ Phys."} |
882 |
MACRO {rsi} {"Rev.\ Sci.\ Instrum."} |
883 |
MACRO {jcp} {"J.~Chem.\ Phys."} |
884 |
MACRO {cpl} {"Chem.\ Phys.\ Lett."} |
885 |
MACRO {molph} {"Mol.\ Phys."} |
886 |
MACRO {pac} {"Pure Appl.\ Chem."} |
887 |
MACRO {jbc} {"J.~Biol.\ Chem."} |
888 |
MACRO {tl} {"Tetrahedron Lett.\"} |
889 |
MACRO {psisoe} {"Proc.\ SPIE-Int.\ Soc.\ Opt.\ Eng."} |
890 |
MACRO {prb} {"Phys.\ Rev.\ B:\ Condens.\ Matter"} |
891 |
MACRO {jap} {"J.~Appl.\ Phys."} |
892 |
MACRO {pnac} {"Proc.\ Natl.\ Acad.\ Sci.\ U.~S.~A. "} |
893 |
MACRO {bba} {"Biochim.\ Biophys.\ Acta"} |
894 |
MACRO {nar} {"Nucleic.\ Acid Res."} |
895 |
|
896 |
READ |
897 |
|
898 |
STRINGS { longest.label } |
899 |
|
900 |
INTEGERS { number.label longest.label.width } |
901 |
|
902 |
FUNCTION {initialize.longest.label} |
903 |
{ "" 'longest.label := |
904 |
#1 'number.label := |
905 |
#0 'longest.label.width := |
906 |
} |
907 |
|
908 |
FUNCTION {longest.label.pass} |
909 |
{ number.label int.to.str$ 'label := |
910 |
number.label #1 + 'number.label := |
911 |
label width$ longest.label.width > |
912 |
{ label 'longest.label := |
913 |
label width$ 'longest.label.width := |
914 |
} |
915 |
'skip$ |
916 |
if$ |
917 |
} |
918 |
|
919 |
EXECUTE {initialize.longest.label} |
920 |
|
921 |
ITERATE {longest.label.pass} |
922 |
|
923 |
FUNCTION {begin.bib} |
924 |
{ preamble$ empty$ |
925 |
'skip$ |
926 |
{ preamble$ write$ newline$ } |
927 |
if$ |
928 |
"\providecommand{\refin}[1]{\\ \textbf{Referenced in:} #1}" |
929 |
write$ newline$ |
930 |
"\begin{thebibliography}{" longest.label * "}" * write$ newline$ |
931 |
} |
932 |
|
933 |
EXECUTE {begin.bib} |
934 |
|
935 |
EXECUTE {init.state.consts} |
936 |
|
937 |
ITERATE {call.type$} |
938 |
|
939 |
FUNCTION {end.bib} |
940 |
{ newline$ |
941 |
"\end{thebibliography}" write$ newline$ |
942 |
} |
943 |
|
944 |
EXECUTE {end.bib} |
945 |
%% |
946 |
%% |
947 |
%% End of file `achemso.bst'. |