[texhax] Bugs in makebst?
Stefan Löffler
st.loeffler at gmail.com
Mon Jul 18 17:52:43 CEST 2011
Hi,
I'm trying to create a custom BibTeX style for minimal formatting of
references (e.g., for a presentation, or a poster, where space is of the
essence and usually only absolutely essential data is given). Take for
example the following file test.bst:
@ARTICLE{test11,
author = {Smith, John and Smith, Ben and Wang, Lee and Smith, Jane},
title = {About something},
journal = {Nat.},
year = {2006},
volume = {441},
pages = {486--488},
}
Ideally, I'd like that formated as "Smith, Smith, et al.: Nat 441 (2006)
486". So, I've been playing around with makebst (custom-bib package in
TeXLive).
I performed the following steps:
1) run `latex makebst` with an output filename of "test.bst" and all
other values as default (gives test.dbj)
2) run `latex test.dbj` (gives test.bst)
3) run LaTeX and BibTeX sufficiently often on the following test file:
\documentclass{article}
\begin{document}
\nocite{*}
\bibliographystyle{test}
\bibliography{test}
\end{document}
This indeed gives the expected result. So far, so good.
Now for the customizations.
If in test.dbj I change
%JOURNAL NAMES:
%: (def) Periods in journal names
% jxper,%: Dotless journal names
to
%JOURNAL NAMES:
% %: (def) Periods in journal names
jxper,%: Dotless journal names
and rerun the above from step 2), BibTeX spits out several errors of the
forms
z is an unknown function---line 156 of file test.bst
"Nat." is a string literal, not a function, for entry test11
You can't pop an empty literal stack for entry test11
Back to the start, changing in test.dbj instead
%NUMBER OF AUTHORS IN BIBLIOGRAPHY:
%: (def) All authors
% nmlm,%: Limited authors
to
%NUMBER OF AUTHORS IN BIBLIOGRAPHY:
% %: (def) All authors
nmlm,%: Limited authors
and rerunning the above from step 2), gives me many error of the forms
"smith john" is a string literal, not an integer, for entry test11
You can't pop an empty literal stack for entry test11
0 is an integer literal, "" is a string literal
And one more thing I've tried: Back to the original files, changing in
test.dbj the lines
%AUTHOR NAMES:
ed-au,%: Full, surname last
% nm-revf,%: Full, surname first
% nm-init,ed-au,%: Initials + surname
% nm-rev,%: Surname + initials
% nm-rv,%: Surname + dotless initials
% nm-rvvc,%: Surname + comma + spaceless initials
% nm-rvx,%: Surname + pure initials
% nm-rvcx,%: Surname + comma + pure initials
% nm-rvv,%: Surname + spaceless initials
% nm-rev1,%: Only first name reversed, initials
% nm-revv1,%: First name reversed, with full names
to activate either "Surname + dotless initials", "Surname + pure
initials", or "Surname + comma + pure initials" instead of "Full,
surname last" and rerunning the above from step 2) again gives me errors
of the forms
z is an unknown function---line 156 of file test.bst
"Smith J" is a string literal, not a function, for entry test11
You can't pop an empty literal stack for entry test11
FWIW, I use TeXLive'10 with latest updates on Ubuntu Linux.
Of course, I did some more extensive changes as well, but these were the
show-stopping errors I finally condensed everything down to.
Can someone tell me what's going wrong here? Maybe I've missed some
dependencies of the different values? Or I missed to include some packages?
Thanks in advance,
Stefan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/texhax/attachments/20110718/309f549f/attachment.html>
More information about the texhax
mailing list