a bib style to capitalize book titles but not paper titles [closed]

做~自己de王妃 提交于 2019-12-04 03:30:06

问题


I've heard that title capitalization in bibliography is the bibliography style's role (the bst file). Is there a bibliography style file that capitalizes book titles but not paper titles? For example, a paper title should be like

Hello world and hello kitty

a book title should be like

Hello World and Hello Kitty


bib style plain.bst doesn't seem to capitalize book titles. A minimal example:

minbib.tex

\documentclass{article}
\begin{document}

See \cite{book1}.

\bibliographystyle{plain}
\bibliography{min}
\end{document}

min.bib

@book{book1,
    AUTHOR = {Petersen, K.},
     TITLE = {Ergodic theory},
 PUBLISHER = {Cambridge University Press},
      YEAR = 1989,
}

The book title in the dvi output is "Ergodic theory", not "Ergodic Theory".


回答1:


I've checked this against the contents of the plain.bst file, rather thanrelying on dimly recalled assertions about what bibtex does, as per the post of mine I deleted... plain.bst treats titles in one of two ways, using the functions it defines, first, format.title, used, e.g., for @article, which lowercases, and then format.btitle, used for @book, which puts the title in emphasis without touching the capitalisation.

Rules for capitalising titles are complex, complex enough that one can't expect a .bst file to completely automate it. For example, Chicago Manual of Style says one should "Lowercase prepositions, regardless of length" with a list of examples. But prepositionhood is a semantic role, that is syntactically generative: CMoS gives as an example preposition "according to". And one of the exceptions is to capitalise when the preposition is stressed: e.g., in "Alice Through the Looking Glass", where stress isn't even semantic, but a pragmatic property of the word. So it's not the bst's role.

So the Right Thing is to put title strings in title case, protecting the capitalisation of proper names with {}s (e.g., From {B}rouwer to {H}ilbert). Do this with articles too, since some reflist styles, e.g., MLA, put article titles into title case, but most scientif styles lowercase them.

plain.bst gets one thing wrong: for @article, it does not consider colons, which are used to indicate subtitles. So protect the capital letter after colons.




回答2:


There is a tool to generate custom bib-styles, makebst.tex. When I run it as

latex /usr/share/texmf-texlive/tex/latex/custom-bib/makebst.tex 

it asks a lot of questions, and in particular, it allows to select capitalization of article titles:

CAPITALIZATION OF ARTICLE TITLE:
(*) Sentence style (capitalize first word and those in braces)
(t) Title style (just as in bib entry)
  Select:

\ans=t 
  You have selected: Title style

There is no such option for book titles though... But even in this case “Title” style means only “just as in bib entry”. So probably you need to capitalize titles manually.



来源:https://stackoverflow.com/questions/1897728/a-bib-style-to-capitalize-book-titles-but-not-paper-titles

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!