[texhax] BibTeX middle initials disappearing; has this problem been solved?
Tom Schneider
toms at ncifcrf.gov
Sun May 16 04:20:17 CEST 2010
Mark:
> http://www.tug.org/TUGboat/Articles/tb19-2/tb59patash.pdf
>
> ever been resolved? That is, if my .bib file contains an author
> field such as
>
> author = "D.E. Knuth"
>
> and the .bst file that I use abbreviates first names to initials, is
> there any way to change that .bst file so that the "E." doesn't
> disappear from the final .bbl file (while first names are still
> abbreviated to initials)? Or is the only solution still to manually
> change the author fields in the .bib file to
>
> author = "D. E. Knuth"
>
> I ask this only because the article I linked to is from 1998.
Under Unix (Mac OS X Terminal or probably windows cygwin) you could
make a script and use sed to do the job:
----
strawberry 101% cat dotspace
#!/bin/tcsh -f
#(ie run the tshell on this but don't read the .cshrc or .tcshrc)
#echo version = 1.00 of dotspace 2010 May 15
# 2010 May 15, 1.00: origin
cat |\
sed 's/\./. /' |\
cat
strawberry 102% cat in
D.E. Knuth and D. E. Burble
strawberry 103% dotspace < in > out
strawberry 104% cat out
D. E. Knuth and D. E. Burble
----
(Many other languages could be used, but this almost certainly will
work on any flavor of Unix.)
Of course make sure that DOT is not in the 'in' file.
Finally, do a diff to make sure that all the changes are what you want:
diff in out
or
sdiff in out
Note that EVERY period will be changed to 'period space' ... which may
mess up other things. So you might want to do this in an editor (eg
vim) and search ('/\.' for vim) and insert the space after the period
('a [escape]') (then '.' to repeat previous command or 'n' to skip to
the next).
Tom
Thomas D. Schneider, Ph.D.
National Institutes of Health
schneidt at mail.nih.gov
toms at alum.mit.edu (permanent)
http://alum.mit.edu/www/toms (permanent)
More information about the texhax
mailing list