
我已經下載並使用了一個包愛思唯爾。為了引用參考文獻,我匯出了.bib
以以下格式從 Web of Science 匯出。我故意改變了“ab溶質」到“ABsolute" 來測試第二個大寫字母是否會被更正。我意識到,如果使用一對單花括號{}
或雙引號,""
則會進行更正,但如果使用雙花括號,{{}}
則不會。我不想由於可以輕鬆地從Web of Science 複製,因此在複製後更改格式.bib
有沒有辦法解決此問題?
情況1:
@article{ Label,
title = {ABsolute}
}
案例2:
@article{ Label,
title = "ABsolute"
}
案例3:
@article{ Label,
title = {{ABsolute}}
}
輸出:
情況1:絕對
情況2:絕對
案例3:絕對
編輯1:不幸的是,Web of Science 提供大寫的標題。
編輯2:需要澄清的是,我沒有其他方法來避免雙花括號。有沒有辦法仍然使用雙花括號,但使 Latex 像 1 和 2 的情況一樣取消大寫。
編輯3:同樣的問題已被解釋這裡。但據說可以避免雙花括號,這對我來說是不可能的。
編輯4:以下是 Web of Science 的某人寫給我的內容:
根據我們的軟體開發工程師的說法,我們需要將這些雙大括號保留在 BibTex 匯出語法中,以下提供了完整的解釋。
- 外部大括號只是引號。換句話說,在 BibTeX 中:
title = {臨陣退縮}
意思與此完全相同:
title =“臨陣退縮”
- 附加的內大括號可防止 BibTeX 調整其中字母的大小寫。它們在許多常見情況下使用,其中放置的選擇直接影響資料的輸出,如下例所示:
《撒哈拉以南非洲的愛滋病》
以下是 BibTeX 可能需要應用的一些大寫方案範例:
- 撒哈拉以南非洲的愛滋病(同上 - 只有簡短的介詞和其他一些小寫的特殊詞)
- 撒哈拉以南非洲地區的愛滋病(除專有名詞和首字母縮寫外的所有小寫字母,據說在歐洲很常見)
- 撒哈拉以南非洲地區的愛滋病(所有單字均大寫 - 可能默認涵蓋疑難病例)
- 撒哈拉以南非洲的愛滋病(所有字母大寫 - 一些著名期刊確實需要這樣做)
內部大括號用於標記大小寫重要的字母和單字,如下所示:
title = {{愛滋病}在亞哈拉{A}非洲}
如果我們簡單地省略內部大括號,則上面的樣式 2 和 3(其中一種或兩種據說在歐洲用法中非常常見)可能會被解釋為如下所示:
- 撒哈拉以南非洲的愛滋病
- 撒哈拉以南非洲的愛滋病
Web of Science 輸出無法根據我們使用的資料庫並以令每個人滿意的方式自動、一致且正確地放置內括號。因此,我們目前的實作迫使 BibTeX 呈現我們所知道的或多或少正確的唯一大寫形式,即資料庫中實際存在的資料的確切大寫形式。對於上面的例子,這意味著我們輸出這樣的資料(因此是雙括號的原因):
title = {{撒哈拉以南非洲的愛滋病}}
需要不同大小寫的研究人員也許可以檢查我們提供的大小寫,或者可能檢查它所指的項目,然後對他們認為內部大括號實際所屬的位置做出明智的判斷。在上面顯示的範例中,內部大括號可能被認為屬於以下位置:
title = {{愛滋病}在亞哈拉{A}非洲}
答案1
正如您自己指出的那樣,雙花括號可以防止大小寫更改功能更改換行的文字。這是有意的行為,並且實際上非常有用,因為BibTeX 在建立 .bbl 檔案時遺失大寫字母演示。這種行為是眾所周知的並且有記錄(參見例如設計 BibTeX 樣式:change.case$
第 14 頁5和BibTeX 提示與常見問題:Q5)
如果您的軟體匯出不應受大小寫保護的雙括號字段,那麼這應被視為低於標準的設計決策。
然而,自動進行所需的資本化保護是相當困難的。因此,希望不讓用戶參與其中的軟體通常要么選擇根本不保護任何內容(即僅使用單個大括號並希望大小寫更改演算法不會造成太大傷害),要么保護整個內容標題(帶有雙括號,因此使大小寫更改演算法無用;優點是標題始終按照軟體中給定的方式顯示,這可能會減少用戶的投訴)。
我認為對整個字段加雙括號從來都不是一個好主意,花括號應該只在某些單字周圍添加,而這些單字永遠不能失去大寫。這仍然最好手動完成。如果軟體在欄位中加入雙花括號DOI
(如您在你的評論中提及),因為biblatex
會認為內部一對大括號構成 DOI 的一部份。
Biber 有一種方法可以去除不必要的外部牙套
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=title,
match=\regexp{\A\{(.*)\}\Z},
replace=\regexp{$1}]
}
}
}