![為什麼 biblatex 套件的 uniquelist=false 選項只有在第一次插入時才起作用?](https://rvso.com/image/420752/%E7%82%BA%E4%BB%80%E9%BA%BC%20biblatex%20%E5%A5%97%E4%BB%B6%E7%9A%84%20uniquelist%3Dfalse%20%E9%81%B8%E9%A0%85%E5%8F%AA%E6%9C%89%E5%9C%A8%E7%AC%AC%E4%B8%80%E6%AC%A1%E6%8F%92%E5%85%A5%E6%99%82%E6%89%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%EF%BC%9F.png)
對於 biblatex 包,我使用了這些選項:\usepackage[style=authoryearcomp,maxbibnames=99,maxcitenames=2,isbn=false,backend=biber]{biblatex}
但後來我需要添加該uniquelist=false
選項。然而後者不起作用,乳膠忽略了它。我解決了這個問題,手動從工作資料夾中刪除 .bbl 檔案並使用所有 biblatex 選項重新編譯文件。這是正確的程序嗎?有其他方法可以實現這一目標嗎?
答案1
選項uniquelist=false,
無論您何時將其添加到文件中,但由於該選項會影響 Biber(後端)完成的計算,因此當您在新增該選項後僅執行 LaTeX 時,它可能不會立即顯示效果。當您變更影響 Biber 的選項時,您應該重新執行完整的 LaTeX、Biber、LaTeX、LaTeX 編譯週期,以確保使用新設定。
與其他一些情況不同,biblatex
它不會自動警告您必須重新執行 Biber 才能確保選項變更已生效。理論上,可以在biblatex
Biber 中對此進行檢查,但這並不是完全微不足道的,到目前為止還沒有人要求這樣做。如果您認為自動警告有用,您可以隨時在以下位置提出功能請求:https://github.com/plk/biblatex/issues。
從你的描述來看,好像你只是在添加選項後才運行 LaTeX。當您刪除該.bbl
檔案時,您(或您的編輯)必須重新執行 Biber,此時該選項終於生效。
我猜您正在使用編輯器或其他通常會自動運行 Biber 的工具。據推測,該工具無法偵測到 Biber 重新運行的必要性。這並不奇怪,因為biblatex
沒有警告您這一點。然而,一些工具具有極其先進的啟發式方法,已經可以檢測到這樣的情況並為您重新運行 Biber(精彩的latexmk
我想到了)。如果您沒有使用這樣的高級工具,目前您唯一能做的就是確保手動重新運行 LaTeX、Biber、LaTeX、LaTeX。 (您當然不必為此刪除.bbl
文件,您的編輯器應該為您提供手動執行此操作的選項,但如果這是獲得完整重新運行的最簡單方法,為什麼不呢?)