我是 StackExchange 的新手!
我有這個文件:
\documentclass[a4paper,12pt,oneside,italian]{book}
\usepackage[utf8]{inputenc}
\usepackage{url}
\begin{document}
Questa è una citazione \cite{Citation}.
\bibliographystyle{plain}
\bibliography{biblio}
\end{document}
還有這個參考書目:
@misc{Citation,
author = "Daniele Vietri and Francesca Castelli",
title = "M-commerce in Italia",
howpublished = {\url{http://www.dblog.it/ecommerce/}},
year = {2012},
note = {[accesso: Marzo 2013]}
}
為什麼我會得到以下輸出?這讓我抓狂...
我想用逗號代替「and」。
為什麼標題中「Italia」的第一個字母變成小寫了?
答案1
您正在指定
\bibliographystyle{plain}
這又指定名稱清單應由以下可讀的程式碼格式化:
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{ " et~al." * }
{ " and " * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
在中間的某個地方,您會看到它根據清單中剩餘的名稱數量添加,
或and
或。et al
你可以修改它,儘管你不應該更改預設文件,或者更容易找到另一個可以完成你想要的操作的 bibtex 樣式。 (也許可以使用該makebst
包來製作一個)。您需要決定長度為 0、1、2、3 的清單以及對於某些 N 大於 N 的清單要執行的操作。
你a, b
不想要a and b
,但對於三個清單你想要什麼,正常的選擇是或a, b, and c
但a, b and c
也許你想要a, b, c
(如果你確實想要,你可以將and
上面的副本更改為,
我認為的。
答案2
我的回答是基於之前的問題和回答,並且它的核心使用了該biblatex
軟體包(它為經典的 LaTeX 和 bibTeX duo 提供了強大的替代品)。
\documentclass[a4paper,12pt,oneside,italian]{article}
\usepackage[utf8]{inputenc}
\usepackage{biblatex}
\usepackage{hyperref}
\addbibresource{biblio}
\renewcommand*{\finalnamedelim}{\addcomma\space}
\begin{document}
Questa è una citazione \cite{Citation}.
\printbibliography
\end{document}
額外的東西。與 和 軟體包一起,babel
您csquotes
應該獲得對義大利會議的良好支援。例如,如果您註釋我們重新定義命令的行\finalnamedelim
,您將得到義大利語“e”代替英語“and”。此外,該命令\printbibliography
會自動列印與語言相關的參考書目標題,在本例中為“Riferimenti bibliograci”,但您可以為其提供參數[heading={text}]
以選擇您需要的任何內容。
另外,我使用了hyperref
包而不是包url
,因為它創建了實際的超連結(我認為它會url
自動加載包)。
答案3
是否有充分的理由想要a, b
代替a and b
(這是標準)?
如果是這樣,你應該找到一種可以做到這一點的風格,或者像大衛·卡利斯所說的那樣自己製作一種風格,儘管應該有一個很好的理由這樣做(而不僅僅是“我只是喜歡那樣”)。 LaTeX 中的操作是有充分理由的,大多時候都遵循標準的規定。
對您的參賽作品的一些評論:
作者應寫為
Lastname, Names
,即:author = {Vietri, Daniele and Castelli, Francesca and Mozart, Wolfgang Amadeus}
根據樣式,它將以不同的方式管理標題(即所有字母大寫、單字的第一個字母等)。您應該以一致的方式編寫標題。如果你知道某個單字必須有一定的大寫(如 Italy、IEEE 等),你可以像這樣強制它:
title = {M-commerce in {I}talia},